webgl+canvas实现全屏彩色线条屏保动画效果代码
代码语言:html
所属分类:动画
代码描述:webgl+canvas实现全屏彩色线条屏保动画效果代码
代码标签: webgl canvas 全屏 彩色 线条 屏保 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> html, body { padding: 0; margin: 0; overflow: hidden; height: 100dvh; width: 100dvw; background: #1D1E22; } body { display: flex; justify-content: center; align-items: center; color: #7C808F; } canvas { height: 100dvh; width: 100dvw; } #gui-node { position: absolute; top: 0; right: 0; } </style> <script> window.console = window.console || function(t) {}; </script> </head> <body translate="no"> <!-- O o o---o o / \ | / | o---oo-o -o- -O- o o O-o | || | / | | | | o oo o o---o o--o o-o --> <!-- Canvas version https://codepen.io/artzub/pen/emmwYPW --> <canvas id="webgl"></canvas> <div id="#gui-node"></div> <script id="vxShader" type="x-shader/x-vertex"> attribute vec2 aPosition; void main() { gl_Position = vec4(aPosition, 0.0, 1.0); } </script> <script id="fragShader" type="x-shader/x-fragment"> #ifdef GL_ES precision mediump float; #endif #define PI 3.14159265359 #define PI2 2. * PI // HSL to RGB // take from https://github.com/Experience-Monks/glsl-hsl2rgb/blob/master/index.glsl float hue2rgb(float f1, float f2, float hue) { if (hue < 0.0) hue += 1.0; else if (hue > 1.0) hue -= 1.0; float res; if ((6.0 * hue) < 1.0) res = f1 + (f2 - f1) * 6.0 * hue; else if ((2.0 * hue) < 1.0) res = f2; else if ((3..........完整代码请登录后点击上方下载按钮下载查看
网友评论0