模型格式
首先我们需要了解模型文件的常用格式,Three.js 引擎支持的格式非常的多,我们最为常见的格式有 .obj + .mtl ,但使用这种模型格式存在一个问题,.obj 是静态模型,不支持动画数据存储,无法使用模型的动画,官方建议使用 glTF 这种模型格式 , 但是glTF目前应用比较少,有条件的朋友可以使用Blender导出glTF2文件,这次我们先了解如何使用相对常用的.obj + .mtl的形式
代码如下
<template>
<div>
<div id="container"></div>
</div>
</template>
<script>
import * as Three from 'three' //导入three.js
import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader.js' //导入OBJLoader 读取obj模型
import { MTLLoader } from 'three/examples/jsm/loaders/MTLLoader.js' //导入MTLLoader 读取mtl材质
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js' //使用OrbitControls控制模型的旋转,放大,缩小
export default {
name: 'Demo',
data () {
return {
camera: null,
scene: null,
renderer: null,
light: null,
controls: null
}