canvas+webgl实现文字水波纹鼠标交互波动动画效果代码
代码语言:html
所属分类:动画
代码描述:canvas+webgl实现文字水波纹鼠标交互波动动画效果代码
代码标签: canvas webgl 文字 水波纹 鼠标 交互 波动 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> html,body { height: 100%; margin: 0; background: #000; display: flex; align-items: center; justify-content: center; font-family: Arial,sans-serif } canvas{ max-width: 100%; height: auto; display: block; cursor: pointer; transition: transform 0.3s ease } canvas:hover { transform:scale(1.05); } </style> </head> <body translate="no"> <div class="container"> <canvas id="glcanvas" width="1000" height="400"></canvas> </div> <script > const canvas = document.getElementById('glcanvas'); const gl = canvas.getContext('webgl'); if (!gl) {alert('WebGL no soportado');} let mouseX = 0; let mouseY = 0; let isHovering = false; // Variables para el efecto hover canvas.addEventListener('mousemove', e => { const rect = canvas.getBoundingClientRect(); mouseX = (e.clientX - rect.left) / rect.width; mouseY = 1.0 - (e.clientY - rect.top) / rect.height; // Invertir Y isHovering = true; }); canvas.addEventListener('mouseleave', () => { isHovering = false; }); function compileShader(src, type) { const s = gl.createShader(type); gl.shaderSource(s.........完整代码请登录后点击上方下载按钮下载查看
网友评论0