随着Stage3D技术的推广,为了进一步提升TWaver 3D产品的性能和渲染效果,TWaver提供了全新3.0版本,支持Stage3D,并且保持绝大部分接口不变化。对于3.0之前版本的用户,可以与相关的TWaver技术支持人员联系获得更新接口介绍。新用户则可以直接享受Stage3D带来的流畅和新增效果了。
今天先让我们来简单介绍一下这个产品的功能点。后面为了打字方便,我们简称TWaver 3D for Flex为产品。
第一点,3D渲染组件。产品中提供了一个名为Network3D的组件,它继承自UIComponent,完成3D场景的渲染。跟场景交互的接口全部定义在了这个组件上,例如施加镜头,鼠标控制等。
第二点,3D原型对象。产品中提供了Cube,Sphere, Cone, Plane, Line, Billboard, External Model, LinearExtrusion, BoxScene, LatheExtrusion这几种原型对象,用户搭建的3D场景就可以借助上面这几个原型对象搭建起来了。
在这里我们着重提到一点是External Model,它代表着可以导入3D设计工具(例如3D Max,SketchUp)制作的模型文件,产品目前支持3ds,obj,md2, dae四种文件格式。用户在定制复杂场景模型的时候,不妨可以通过设计人员制作的此类模型文件,达到仿真的目的。
高仿真的时候,多数用于设备详情展现,如果是其他行业的话,那就是产品的3D呈现。下面截图中,清晰的构建了每个网口中的铜芯,大家可以参考
网口细节截图
第三点,3D对象的控制
产品中对于3D对象都是通过Style设置来控制其3D特性的,例如对象的大小,位置,缩放比例,朝向角度,材质类型,贴图来源等等。
1 var node:Node = new Node();2 node.setStyle(Style3D.THREED_SHAPE_TYPE,Consts3D.THREED_SHAPE_TYPE_PLANE);3 node.setStyle(Style3D.PROPERTY_SPACE_LOCATION,pos);4 node.setStyle(Style3D.PROPERTY_SIZE,size);5 node.setStyle(Style3D.MAPPINGTYPE,Consts3D.MAPPINGTYPE_COMMON);6 node.setStyle(Style3D.MAPPING_COMMON_PATH,source);
在实际应用系统中,开发人员还可以动态的修改这些3D风格,实现动态交互,例如更改location,自动移动3D对象。
第四点,镜头的使用。
产品中通过镜头对象实现场景的实时渲染,在开发的时候,如果没有给3D场景添加镜头对象,用户的界面上是不会渲染出3D场景的。产品中提供了两种镜头,分别是环绕镜头(hover/orbit camera)和普通镜头(common camera)。使用前者的时候,用户可以借助鼠标实现实现环绕场景旋转的效果;使用后者,用户则可以实现第一人称视角的效果,能够在场景中漫步行走。
对于这些镜头的使用开发者需要使用下面的两个接口
1 network.applyHoverCamera(panAngle,tiltAngle,distance);2 //or3 network.applyCommonCamera(cameraPosition,panAngle,tiltAngle);
对于环绕镜头来说,它会以场景的中心点为球心,形成一个按照disatance指定的球形轨迹,用户可以用鼠标拖拽场景,镜头会自动在这轨迹上按照鼠标走向移动,形成环绕效果。 对于普通镜头来说,用户需要指定镜头的位置以及镜头的平转角度和俯仰角度,模拟人眼效果。
第五点,借助GPU计算景深与渲染。当用户设备上配备有独立显卡的时候,Stage3D会使用GPU进行渲染计算。产品借助Stage3D增强了3D对象上平面的计算,纠正了以往对象坏面的问题。另外产品还增加了灯光效果,用户可以非常便捷的实现阴影需求。
使用GPU后,显示效率还得到提升,一般情况下,2000个简单模型对象是可以顺畅的实时渲染的。
第六点,丰富的演示Demo。随产品包带出了8个典型的应用demo。这里集合了目前6成以上的用户普通应用需求,涉及到了场景搭建,交互设置,查看设备方式展示,以及导入模型文件。
更多地产品功能和技术支持可以与tw-service@servasoft.com获得联系,另外商务需求的话可以直接联系销售人员
1 Larry Su 苏先生2 Phone: 86-21-64398788 ext. 8193 Fax: 86-21-643953744 Cel: 86 13916103809 或186213038095 larry@servasoft.com