首页 > 其他 > 详细

away3D案例1

时间:2017-12-16 20:56:28      阅读:164      评论:0      收藏:0      [点我收藏+]
package
{
 import away3d.containers.*;
 import away3d.entities.*;
 import away3d.materials.*;
 import away3d.primitives.*;
 import away3d.utils.*;
 
 import flash.display.*;
 import flash.events.*;
 import flash.geom.Vector3D;

 [SWF(backgroundColor="#000000", frameRate="60", quality="LOW")]
 
 public class Basic_View extends Sprite
 {
  //一个平面材质
  [Embed(source="/../embeds/floor_diffuse.jpg")]
  public static var FloorDiffuse:Class;
  
  //创建三维视图
  private var _view:View3D;
  
  //创建一个平板
  private var _plane:Mesh;
  
  /**
   * 构造函数
   */
  public function Basic_View()
  {
   stage.scaleMode = StageScaleMode.NO_SCALE;
   stage.align = StageAlign.TOP_LEFT;
   
   //创建三维视图
   _view = new View3D();
   addChild(_view);
   
   //设定当前的相机信息
   _view.camera.z = -600;
   _view.camera.y = 500;
   _view.camera.lookAt(new Vector3D());
   
   //设置平面,并且给定材质
   _plane = new Mesh(new PlaneGeometry(700, 700), new TextureMaterial(Cast.bitmapTexture(FloorDiffuse)));
   _view.scene.addChild(_plane);
   
   //添加zhen动画
   addEventListener(Event.ENTER_FRAME, _onEnterFrame);
   stage.addEventListener(Event.RESIZE, onResize);
   onResize();
  }
  
  /**
   * 循环渲染
   */
  private function _onEnterFrame(e:Event):void
  {
   _plane.rotationY += 1;
   
   _view.render();
  }
  
  /**
   * 当前的尺寸改变事件
   */
  private function onResize(event:Event = null):void
  {
   _view.width = stage.stageWidth;
   _view.height = stage.stageHeight;
  }
 }
}

技术分享图片

 

away3D案例1

原文:http://www.cnblogs.com/minhost/p/8047517.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!