VUE2——three.js模型渲染
warning:
这篇文章距离上次修改已过190天,其中的内容可能已经有所变动。
<template>
<div id="container"></div>
</template>
<script>
import * as THREE from 'three';
export default {
name: 'ThreeModelRenderer',
mounted() {
const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
const renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.getElementById('container').appendChild(renderer.domElement);
const geometry = new THREE.BoxGeometry();
const material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });
const cube = new THREE.Mesh(geometry, material);
scene.add(cube);
camera.position.z = 5;
const animate = function () {
requestAnimationFrame(animate);
cube.rotation.x += 0.01;
cube.rotation.y += 0.01;
renderer.render(scene, camera);
};
animate();
}
}
</script>
<style>
#container {
height: 100vh;
}
</style>
这段代码在Vue组件的mounted
生命周期钩子中初始化了一个Three.js场景,包括一个立方体模型。然后,它设置了相机、渲染器,并将渲染器的DOM元素插入到页面中。最后,它通过循环调用requestAnimationFrame
来使立方体旋转,从而实现了模型的渲染和动画展示。
评论已关闭