Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
* { margin: 0; padding: 0; }
JavaScript
window.addEventListener("DOMContentLoaded", () => { const w = window.innerWidth; const h = window.innerHeight; const dpr = window.devicePixelRatio; const fov = 60; const fovRad = (fov / 2) * (Math.PI / 180); const dist = h / 2 / Math.tan(fovRad); const clock = new THREE.Clock(); const particles = 1000; const pointSize = 2.5; const renderer = new THREE.WebGLRenderer(); renderer.setSize(w, h); renderer.setClearColor(new THREE.Color(0x000000), 1.0); renderer.setPixelRatio(dpr); const container = document.getElementById("canvas"); container.appendChild(renderer.domElement); const camera = new THREE.PerspectiveCamera(fov, w / h, 1, dist * 2); camera.position.x = 0; camera.position.y = 0; camera.position.z = 10; const scene = new THREE.Scene(); const geo = new THREE.BufferGeometry(); let positions = []; let x, y, z; const width = 400 * (w / h); const depth = 400; const distance = 5; for (let x = 0; x < width; x += distance) { for (let z = 0; z < depth; z += distance) { positions.push(-width / 2 + x, -30, -depth / 2 + z); } } let positionAttribute = new THREE.Float32BufferAttribute(positions, 3); geo.addAttribute("position", positionAttribute); const mat = new THREE.ShaderMaterial({ uniforms: { u_time: { value: 0.0 } }, vertexShader: ` #define M_PI 3.1415926535897932384626433832795 precision mediump float; uniform float u_time; void main() { vec3 p = position; p.y += ( cos(p.x / M_PI * 8.0 + u_time * 2.0) + sin(p.z / M_PI * 8.0 + u_time * 2.0) ); gl_PointSize = 1.5; gl_Position = projectionMatrix * modelViewMatrix * vec4(p, 1.0); } `, fragmentShader: ` precision mediump float; void main() { gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0); } ` }); const mesh = new THREE.Points(geo, mat); scene.add(mesh); render(); function render() { const time = clock.getElapsedTime(); mesh.material.uniforms.u_time.value = time; renderer.render(scene, camera); requestAnimationFrame(render); } });
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>three.js粒子海浪-jq22.com</title> <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号