javascript - Canvas 小径叶子......小径

标签 javascript animation canvas fade trail

在 Canvas 中制作动画时制作轨迹的常用方法是使用半透明颜色或渐变覆盖整个上下文。像这样:

context.fillStyle = 'rgba(255, 255, 255, .05)';
context.fillRect(0, 0, canvas.width, canvas.height);

// ...draw your next frame

许多关于如何创建跟踪的示例都使用这种方法(我没有编写任何这些示例):
  • http://codepen.io/gbnikolov/pen/VLLgRW
  • http://www.html5gamedevs.com/topic/13621-best-way-to-create-fading-trails/
  • http://www.growingwiththeweb.com/2012/10/creating-trail-effect-with-canvas.html

  • 然而,所有这些似乎都留下了slightly faded out trail of the "trail" ,这样轨迹就不会真正消失。我知道 there's alternative ways to create trails ,但我的主要问题是:

    为什么轨迹没有完全消失?为什么添加额外的多层褪色颜色会完全构成该颜色?

    谢谢你帮我解开迷茫的大脑。

    最佳答案

    您可以尝试在每帧创建轨迹的任何部分后面填充一个矩形,只需将颜色设置为 Canvas 的背景颜色即可。这应该在达到一定长度后覆盖小径。

    关于javascript - Canvas 小径叶子......小径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43010417/

    相关文章:

    swift - 如何在后台继续动画和uitimer

    html - 如何使用 Polymer 的霓虹元素过渡页面滚动

    html - 为什么指定目标位置时 Canvas 的 putImageData 不起作用?

    javascript - 如何使用 MySQL 和 PHP 创建通配符搜索功能

    ios - 自定义 Segue 动画不工作

    javascript - 从输入循环数组并获取所有匹配项

    javascript - Web Worker/Canvas 内存泄漏

    javascript - 用 canvas/JS 高亮图像区域

    javascript - Javascript 中的表单验证

    Javascript 变量未在另一个 javascript 中呈现