html导入.obj,如何用Babylon.js导入一个.obj模型
满意答案
展开全部
var scene = null;
var camera = null;
var renderer = null;
var mesh = null;
var id = null;
function init() {
renderer = new THREE.WebGLRenderer({//渲染器
canvas: document.getElementById('mainCanvas')//画布
});
renderer.setClearColor(0x000000);//画布颜色
scene = new THREE.Scene();//创建场景
camera = new THREE.OrthographicCamera(-5, 5, 3.75, -3.75, 0.1, 100);//正交投影照相机
camera.position.set(15, 25, 25);//相机位置
camera.lookAt(new THREE.Vector3(0, 2, 0));//lookAt()设置相机所看的位置
scene.add(camera);//把相机添加到场景中
var loader = new THREE.OBJLoader();//在init函数中,创建loader变量,用于导入模型
loader.load('libs/port.obj', function(obj) {//第一个表示模型路径,第二个表示完成导入后的回调函数,一般我们需要在这个回调函数中将导入的模型添加到场景中
obj.traverse(function(child) {
if (child instanceof THREE.Mesh) {
child.material.side = THREE.DoubleSide;
}
});
mesh = obj;//储存到全局变量中
scene.add(obj);//将导入的模型添加到场景中
});
var light = new THREE.DirectionalLight(0xffffff);//光源颜色
light.position.set(20, 10, 5);//光源位置
scene.add(light);//光源添加到场景中
id = setInterval(draw, 20);//每隔20s重绘一次
}
function draw() {//们在重绘函数中让茶壶旋转:
renderer.render(scene, camera);//调用WebGLRenderer的render函数刷新场景
mesh.rotation.y += 0.01;//添加动画
if (mesh.rotation.y > Math.PI * 2) {
mesh.rotation.y -= Math.PI * 2;
}
}
01分享举报
html导入.obj,如何用Babylon.js导入一个.obj模型相关推荐
- 如何用 Node.js 实现一个简单的 Websocket 服务?
最近正在研究 Websocket 相关的知识,想着如何能自己实现 Websocket 协议.到网上搜罗了一番资料后用 Node.js 实现该协议,倒也没有想象中那么复杂,除去注释语句和 console ...
- php 写一个大富翁游戏,抽奖系列:如何用纯js做一个大富翁游戏
话不多说,先上效果图: 功能点: 礼品的位置 小怪兽位置的变化(走路.转身和回退) 小怪兽的跳跃弧度 确定好功能点,接下来就是逐个击破: 1.渲染奖品 获取奖品数据后,建一个数组存放奖品的位置,通过遍 ...
- 使用js制作一个3d模型
在学习js和jq时制作的一个小功能,可实现一个3d模型 可以点击开始旋转 切换背景颜色等 需要引入: <script src="JS/three.js-master/three.js- ...
- 前端每日实战:164# 视频演示如何用原生 JS 创作一个数独训练小游戏(内含 4 个视频)...
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/mQYobz 可交互视频 此视频是可 ...
- 前端每日实战:163# 视频演示如何用原生 JS 创作一个多选一场景的交互游戏(内含 3 个视频)...
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/LXMzRX 可交互视频 此视频是可 ...
- 干货!如何用Node.js实现一个精巧的P2P网络
加密货币都是去中心化的应用,去中心化的基础就是P2P网络,其作用和地位不言而喻,无可替代.当然,对于一个不开源的所谓私链(私有区块链),是否必要,尚无定论. 事实上,P2P网络不是什么新技术.但是,使 ...
- 如何用纯js做一个大富翁游戏
下面这张是效果图: 先立个flag,一个星期内把这个坑填了 今天7月1号,建党节,在这个伟大的节日,我来填坑了. 这个游戏有以下几个难点: 1.礼品的位置 2.小怪兽位置的变化(走路.转身和回退) 3 ...
- babylon.js入门日记系列
一直就有一个给宝宝写游戏的念头.百度一番.选了这个babylon.js(巴比伦).先说好,游戏开发方面我是啥也不会, 要是把你带沟里去了,你也别介意.好了,说干就干,开始......... babyl ...
- babylonjs 分部加载模型_使用 Babylon.js 在 HTML 页面加载 3D 对象
五一 Windwos Blogs 推了一篇博客, Babylon.js v3.2 发布了.因为一直有想要在自己博客上加载 3D 对象的冲动,这两天正好看到了,就动手研究研究.本人之前也并没有接触过 W ...
- Babylon.js 3.3发布:更强大的粒子系统和WebVR支持
Babylon.js 3.3版本利用微软混合现实工具包(MRTK)的功能来改进WebVR开发,并改进了其粒子系统控件. MRTK提供了一系列脚本和组件来加速混合现实应用程序的开发.为了简化GUI VR ...
最新文章
- 如何解决Win10不能新建项目的问题?
- 技术正文 history命令添加时间---测试磁盘写入速度
- Angular4 组件通讯方法大全
- linux电视改安卓,mstar安卓智能电视方案源代码常用修改
- 如何修改Fiori Launchpad里Tile count 调用的时间间隔
- lambda表达式方法泛型_模板方法模式–使用Lambda表达式,默认方法
- 文件断点续传原理与实现
- html 使用百度搜索,百度搜索uzer,进入主页
- Linux开发_GDB_dump_Core调试
- 网站集成paypal快捷支付
- javascript classList add报错
- 《高性能Linux服务器构建实战:系统安全、故障排查、自动化运维与集群架构》——3.3 DRBD的管理与维护...
- 【转】android题目
- 最近新发现的歌谱排版软件Lilypond
- MATLAB中神经网络工具箱的使用
- C300 之SFU设备配置指导
- Nginx系列教程(07) - Location正则表达式
- 《雷神的微软平台安全宝典》简介
- 培训机构出来的程序员进不了大厂?
- win7安装node版本最高只支持13.14.0