看了上面的效果,还不错吧!flash的魅力.试着按上下键,看看效果.
因需要在flash lite上运行,而lite兼容as2,所以采用sandy 1.2库。
具体实现:
1.初始化World3D
//3d引擎world3d
var world:World3D = World3D.getInstance();
2.然后加入摄像头,及平面,还有事件
world.setCamera( cam );//加入摄像头
createScene(g);//加入平面
world.addEventListener(World3d.onRenderEvent, this, camMove);//加入事件
3.平面旋转
ts = new MovieSkin("image_usb", false,true);//影片材质
plane_usb = new Plane3D(ht,wh,10,'quad'); //初始化平面
plane_usb.setSkin(ts);
plane_usb.setTransparency(transp); //透明度
plane_usb.enableBackFaceCulling(false);//背面背景
plane_usb.setBackSkin(ts);
tsfor = new Transform3D();
tsfor.rot(90,180,0);//自身旋转
plane_usb.setTransform(tsfor);
var tsu = new Transform3D();
var tgu = new TransformGroup();
tsu.translate(0,0,300);//向z平移
tgu.setTransform(tsu);
tgu.addChild(plane_usb);
var tsual = new Transform3D();
var tgual= new TransformGroup();
tsual.rot(0,angle,0);//绕世界y轴旋转angle角度
tgual.setTransform(tsual);
tgual.addChild(tgu);
上面代码,要注意变换方向。
源码