认识 Canvas
我们的引擎使用 HTML canvas 元素实时渲染效果,类似于浏览器渲染您访问的网站的方式。
自定义效果必须存储在计算机上的特定文件夹中,以便我们找到它们。无论您选择哪种 IDE,每个效果都是一个单独的 HTML 文件,在开发期间应放置在 C:\Users\<username>\AppData\Local\VortxEngine\app-<version>\Signal-x64\Effects\Dynamic\ 中,这些文件显示在”已安装”菜单下,每次在该文件夹中放入新文件后,SignalRGB 都需要重启。
<canvas> 必须在 <body> 元素中创建,然后在 <script> 中正确获取(在本例中由 var ctx 表示)。附加到 ctx 的方法(如 fillStyle、fillRect 等)随后可用于创建所需的动画。下面是一个简单的色相循环示例。
<head> <title>Hue Cycle</title> <meta description="Stock hue cycle."/> <meta publisher="WhirlwindFX" /> <meta property="speed" label="Cycle Speed" type="number" min="1" max="10" default="2"></head><body style="margin: 0; padding: 0;"> <canvas id="exCanvas" width="320" height="200"></canvas></body><script> // Get the canvas element from the DOM var c = document.getElementById("exCanvas"); var ctx = c.getContext("2d"); var width = 320; var height = 200; var hue = 0;
function update() { ctx.fillStyle = 'hsl('+ hue + ', 100%, 50%)'; ctx.fillRect(0, 0, width , height); hue+=(speed / 4); if (hue > 360) { hue = hue % 360; } window.requestAnimationFrame(update); }
window.requestAnimationFrame(update);</script><head> <title>Hue Cycle</title> <meta description="Stock hue cycle."/> <meta publisher="WhirlwindFX" /> <meta property="speed" label="Cycle Speed" type="number" min="1" max="10" default="2"></head>
<body style="margin: 0; padding: 0;"> <canvas id="exCanvas" width="320" height="200"></canvas></body>
<script> // Get the canvas element from the DOM var c = document.getElementById("exCanvas"); var ctx = c.getContext("2d"); var width = 320; var height = 200; var hue = 0;
function update() { ctx.fillStyle = 'hsl('+ hue + ', 100%, 50%)'; ctx.fillRect(0, 0, width , height); hue+=(speed / 4); if (hue > 360) { hue = hue % 360; } window.requestAnimationFrame(update); }
window.requestAnimationFrame(update);</script>就这样,一个非常令人印象深刻的色相循环。它可能很基础,但这个小模板包含了您开始编码所需的一切!更多细节请查阅效果即网页。