使用vue3 + three.js 写一个汽车模型
时间: 2024-06-09 12:05:36 浏览: 153
好的,以下是一个简单的示例代码:
```vue
<template>
<div id="container"></div>
</template>
<script>
import * as THREE from 'three'
export default {
mounted() {
// 初始化场景、相机、渲染器
const scene = new THREE.Scene()
const camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 1000)
const renderer = new THREE.WebGLRenderer({ antialias: true })
renderer.setSize(window.innerWidth, window.innerHeight)
document.getElementById('container').appendChild(renderer.domElement)
// 加载汽车模型
const loader = new THREE.GLTFLoader()
loader.load('/path/to/car.glb', (gltf) => {
const car = gltf.scene
scene.add(car)
})
// 添加灯光
const ambientLight = new THREE.AmbientLight(0xffffff, 0.5)
scene.add(ambientLight)
const directionalLight = new THREE.DirectionalLight(0xffffff, 0.5)
directionalLight.position.set(0, 1, 0)
scene.add(directionalLight)
// 设置相机位置
camera.position.set(0, 0, 5)
// 渲染场景
const animate = function () {
requestAnimationFrame(animate)
renderer.render(scene, camera)
}
animate()
}
}
</script>
```
需要注意的是,这里使用了GLTFLoader来加载汽车模型,因此需要先将汽车模型转换为GLTF格式。可以使用Blender等软件进行转换。同时,还需要在Vue项目中安装three.js和GLTFLoader库:
```
npm install three gltf-loader
```
阅读全文