游戏中经常会出现一些大型的户外场景,例如一个小镇、一座古城等。通常这种场景中包含了较多的建筑、道路、桥梁等等元素,其3D模型比较大且复杂。在使用TWaver加载时,可使用一些技巧,让加载速度更快、显示更流畅。
TWaver 3D支持导入json或obj等格式的3D场景。如果是obj格式,可将obj文件、mtl文件、所有贴图文件,以字符串参数形式传给TWaver进行加载。当然这些文件也都可以是网络上的URL字符串。
1
2
|
var loader = new mono.OBJMTLLoader();
loader.load(obj, mtl, images); |
TWaver支持在加载过程中对每一个物体进行进一步处理。例如材质贴图、特性等。我们通过下面的代码,可以将每一个加载的物体强制用白模显示:
1
2
3
4
5
6
|
var loader = new mono.OBJMTLLoader();
loader.load(obj, mtl, images, function (object) {
box.addByDescendant(object);
box.forEach( function (element){
element.setStyle( 'm.texture.image' , null );
});
|
或者直接使用wireframe的方式忽略物体表面,直接显示物体的线条形状:
1
2
3
4
5
6
|
var loader = new mono.OBJMTLLoader();
loader.load(obj, mtl, images, function (object) {
box.addByDescendant(object);
box.forEach( function (element){
element.setStyle( 'm.wireframe' , true );
});
|
这个obj文件超过16兆,TWaver解析的过程不超过5秒。但是实际应用中,资源文件可能存在网络上,网络传输则需要一定的时间。可以将obj文件或json文件进行打包压缩,加快传输效率。对于材质也可以适当降低精度,在显示出场景后再逐渐加载或按需加载高精度的贴图,进行动态的更换。
相关推荐
twaver示例可直接放到jetty下运行,含twaver.js alarm.html资源。
TWaver是基于WebGL3D一个框架,可以使用其框架进行web3d的开发,这里贴上官方的一个小案例,可以参照使用。
最新的TWaver可视化学习开发包,用TWaver做出更炫更美的界面。
TWaver-flex的库TWaver.swc
TWaver的图形组件库中提供了拓扑组件、地图组件、设备图组件,以及表格、树图、属性表、图表等丰富的通用图形界面组件,为电信运营支撑系统(OSS)的开发提供“一站式”的组件产品和解决方案,是快速设计、开发和...
twaver for flex 开发手册
twaver-java-3.7 文档
自己整理的关于Twaver组件在Flex中的使用,不对的地方忘多提意见
Twaver学习案例的例子
twaver web结合extjs源码学习资料
Twaver java开发帮助文档,英文版的。
有下的可以弄弄 电信行业基本都用 TWAVER.SWC
twaver jar在TWaver传统的2D应用中,近一年非常突出地出现了一种需求,那就是希望能够在同一个页面内显示多种层次的网络结构
twaver-flex-3.6.5 官方demo
TWaver-java的库TWaver.jar
是twaver学习的最佳资料,大家快来下巴
很好的twaver教程。包含demo,各种图形,极好的电信客户端
TWAVER FLEX 使用手册 用户画拓扑图
Twaver java在不同节点和连接情况下的性能测试代码和测试报告