之前学习away3d essential的时候做了些笔记,有一哥们不知道away3d 4.0如果画sphere,这里画一个吧。
首先away3d4.0和之前的版本不一样,away3d 4.0的显示物件分为两个部分,一个是材质Texture,另一个是Gemometry也就是几何定义,两者可以合成一个Mesh(个人理解,如有误导,实在抱歉)。
代码如下:
package samples { import away3d.entities.Mesh; import away3d.materials.TextureMaterial; import away3d.primitives.SphereGeometry; import away3d.utils.Cast; import template.AwayTemplate; public class SphereTest extends AwayTemplate { [Embed(source="assets/earth.jpg")] private var earth:Class; private var sphere:Mesh; public function SphereTest() { super(); } override protected function initView():void { super.initView(); initSphere(); } private function initSphere():void { //建立球体的几何对象 var geo:SphereGeometry = new SphereGeometry(400); //建立球体的材质数据 var texture:TextureMaterial = new TextureMaterial(Cast.bitmapTexture(earth)); sphere = new Mesh(geo,texture); //将物体添加到场景里面显示 _view.scene.addChild(sphere); } } }
运行结果如下:
如果你运行时出现错误说找不到图片的话,你自己应该知道是什么原因。
添加以下代码会有惊喜:
override protected function render():void { sphere.yaw(1); }