写一个简单的3D烟花代码
时间: 2023-09-23 14:07:01 浏览: 71
以下是一个简单的3D烟花代码,使用Three.js库实现:
```javascript
// 创建场景
var scene = new THREE.Scene();
// 创建相机
var camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
camera.position.z = 5;
// 创建渲染器
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
// 创建烟花粒子
var particleCount = 1000;
var particles = new THREE.Geometry();
for (var i = 0; i < particleCount; i++) {
var x = Math.random() * 10 - 5;
var y = Math.random() * 10 - 5;
var z = Math.random() * 10 - 5;
var particle = new THREE.Vector3(x, y, z);
particles.vertices.push(particle);
}
var particleMaterial = new THREE.PointsMaterial({
color: 0xffffff,
size: 0.2
});
var particleSystem = new THREE.Points(particles, particleMaterial);
scene.add(particleSystem);
// 创建动画循环
function animate() {
requestAnimationFrame(animate);
particleSystem.rotation.x += 0.01;
particleSystem.rotation.y += 0.01;
renderer.render(scene, camera);
}
animate();
```
在该代码中,我们创建了一个场景、相机、渲染器和烟花粒子。使用`THREE.Geometry`创建了1000个随机位置的3D烟花粒子,并使用`THREE.Points`将其添加到场景中。在动画循环中,我们对烟花粒子进行了旋转操作,以产生动态效果。