核心代码

复杂的3D模型一般都是用第三方建模工具生成,然后加载到three中

three官方推荐使用gltf格式的文件,代表编辑器是blender

本文生成了自定义生成了一个blender模型,并且应用了动画效果,核心代码如下

var mixers = [];
var clock = new THREE.Clock();
(function(){
var loader = new THREE.GLTFLoader();
loader.load( './static/models/2.gltf', function( gltf ) {
console.log(gltf); var axesHelper = new THREE.AxesHelper( 5 );
scene.add( axesHelper ); scene.add( gltf.scene ); // 将模型引入three // 调用动画
var mixer = new THREE.AnimationMixer( gltf.scene.children[2] );
mixer.clipAction( gltf.animations[ 0 ] ).setDuration( 1 ).play();
mixers.push( mixer );
})
})(); var time;
var animate = function () {
requestAnimationFrame(animate); var delta = clock.getDelta();
for ( var i = 0; i < mixers.length; i ++ ) { // 重复播放动画
mixers[ i ].update( delta );
} stats.begin();
renderer.render( scene, camera );
stats.end();
};
animate();

最新文章

  1. js基础知识梳理(最简版)
  2. Java学习笔记12
  3. Oracle表空间,用户,用户授权
  4. 03 Hibernate错题分析
  5. 问题解决——OpenGL超级宝典 关于gltDrawTorus的错误解决
  6. linux下常用的命令
  7. JavaScript push()和splice()方法
  8. 【同行说技术】Python程序员小白变大神必读资料汇总( 三)
  9. Repeat Header / Keep Header Visible in Tables in RS 2008
  10. Solr4.7从文件创建索引
  11. bresenham算法的FPGA的实现2
  12. 团队作业4----第一次项目冲刺(Alpha版本)4.28
  13. 使用VLC创建组播流
  14. 指针超强汇总(谨记优先级:() &gt; [] &gt; *)
  15. 利用Redis keyspace notification(键空间通知)实现过期提醒
  16. Python内置函数(42)——memoryview
  17. Git操作手册(开发人员)
  18. 关于python的感想和turtle作图
  19. Django View 进阶
  20. tft屏图像文字一起显示

热门文章

  1. 安装Charles报错
  2. mysql测试工具
  3. Lucene快速入门
  4. NHibernate的几种查询方式
  5. 更改Linux栈空间大小
  6. hdu-5117 Fluorescent(状压dp)
  7. 正则化项L1和L2的区别
  8. 设计模式之访问者(visitor)模式
  9. 《Troubleshooting SQL Server》读书笔记-内存管理
  10. gitlab Failed to register this runner. Perhaps you are having network problems runner 注册失败问题解决