今天,小妖先给大家献上又一个“利器”。在之前的每一个 Demo 中,我们都不厌其烦地创建场景、创建相机、创建光源。。。经过几次的实践,大家现在应该也对这个流程十分熟悉了。现在,我们想摆脱这些烦杂的设置,更专注于每一篇的新知识点。于是,小妖封装了这些基本的方法,简化了初始化的流程。源码见本篇 Demo : http://xngeer.frostbelt.cn/itemthreedemo/5.mgr.2.html 中引入的 ThreeMgr.js,依赖于 jQuery
这个 ThreeMgr.js,提供了哪些方法呢?我们先对比一下 5.mgr.1.html 和 5.mgr.2.html 两个 Demo 页的代码:
1. 初始化
查看 ThreeMgr 源码,我们自己有一套默认设置 defaultConfig,init 时只需要设置部分值覆盖默认值即可。省略了烦杂的初始化过程,代码更简洁易记。
2. 光源
从上面也可以看到,ThreeMgr 有一个 addLight 方法,支持创建 4 种常用的光源
3. dat.GUI
小妖也封装了上一篇讲到的 dat.GUI,见 链接。
从这里看代码量并没有减少,但是不是逻辑清晰一些,可读性强一些?
4. Stats
每次都要复制过来的帧率。。简化为一行代码
5. 动画
ThreeMgr.render(Boolean is_loop, Function animate); is_loop 定义是否每帧重绘,animate 定义重绘前对场景中各元素如何修改。
嗯。。确实没什么技术含量,只是对一些常用方法的简单封装,世界是由懒人创造的嘛。除了上述方法,ThreeMgr 还封装了其它一些常用方法,感兴趣的同学可以去查看下源码,以后有用到时小妖也还会单独说明。
本文暂时没有评论,来添加一个吧(●'◡'●)