Threejs渲染obj+mtl模型源码,3D工厂模型

简介: Threejs渲染obj+mtl模型源码,3D工厂模型

1,介绍


Threejs实现引入工厂模型,加载obj+mtl模型源码下载,可用于学习研究,二次开发


2,部分代码


// 创建一个场景,它将包含我们所有的元素,如物体,相机和灯光。
var scene = new THREE.Scene();
var cubeLoader = new THREE.CubeTextureLoader();
// 创建一个摄像机,它定义了我们正在看的地方
camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 1000);
// 将摄像机对准场景的中心
camera.position.x = 10;
camera.position.y = 50;
camera.position.z = 90;
camera.lookAt(scene.position);
var orbit = new THREE.OrbitControls(camera);
// 创建一个渲染器并设置大小,WebGLRenderer将会使用电脑显卡来渲染场景
renderer = new THREE.WebGLRenderer({
  antialias: true,
  logarithmicDepthBuffer: true,
});
renderer.setClearColor(new THREE.Color("#0e0934"));
renderer.setSize(window.innerWidth, window.innerHeight);
// 基础光源,并应用到场景
scene.add(new THREE.AmbientLight("#ffffff", 1.5));
initModel();
// 将呈现器的输出添加到HTML元素
document.getElementById("dom").appendChild(renderer.domElement);
// 启动动画
renderScene();
// 添加模型
function initModel() {
  var mtlLoader = new THREE.MTLLoader();
  mtlLoader.setPath("assets/models/factory_new/")
  mtlLoader.load('factory.mtl', function(materials) {
    materials.preload();
    var objLoader = new THREE.OBJLoader();
    objLoader.setMaterials(materials);
    objLoader.load('assets/models/factory_new/factory.obj', function(object) {
      mesh = object;
      mesh.scale.set(0.0003, 0.0003, 0.0003);
      mesh.position.set(-200, 0.5, -200);
      scene.add(mesh);
    }, function(xhr) {
      let num = Math.floor(xhr.loaded / xhr.total * 100) / 100;
      NProgress.set(num)
      console.log('加载完成的百分比'+(xhr.loaded/xhr.total*100)+'%');
    });
  });
}


3,下载


使用threejs渲染工厂模型源码,立即下载

模型源文件.max格式,obj+mtl格式,立即下载

目录
相关文章
|
4月前
|
数据可视化 前端开发 JavaScript
vue3+threejs可视化项目——引入threejs加载钢铁侠模型(第二步)
vue3+threejs可视化项目——引入threejs加载钢铁侠模型(第二步)
413 3
Cesium系列:加载单个模型
Cesium如何加载单个三维模型数据
460 0
|
1月前
|
Web App开发 应用服务中间件 定位技术
three.js:三维模型加载量测试
three.js:三维模型加载量测试
|
1月前
|
JavaScript 前端开发 数据格式
Cesium案例解析(四)——3DModels模型加载
Cesium案例解析(四)——3DModels模型加载
40 0
|
4月前
|
存储
THREEJS实战6_加载fbx模型
THREEJS实战6_加载fbx模型
642 1
|
4月前
|
C# 图形学
【Unity 3D】游戏对象、添加删除获取组件、预制体Prefabs简介
【Unity 3D】游戏对象、添加删除获取组件、预制体Prefabs简介
172 0
|
存储
threejs实战_加载fbx模型
threejs实战_加载fbx模型
431 0
threejs实战_加载fbx模型
|
图形学
【unity细节】unity物体Model和prefab的区别
【unity细节】unity物体Model和prefab的区别
178 0
Threejs工厂模型3Dmax模型obj+mtl格式,源文件下载
Threejs工厂模型3Dmax模型obj+mtl格式,源文件下载
768 0
Threejs工厂模型3Dmax模型obj+mtl格式,源文件下载