ActionScript 3.0 学习(十六) away3D学习1

            下面几期会发布away3d相关的一些基本内容,away3d的类库是开源的可以在网上下载。本节介绍基本的用away3d绘制一个小球,代码如下:  
package
{
	import flash.display.Sprite;
	import flash.display.MovieClip;
	import away3d.containers.View3D;
	import away3d.containers.Scene3D;
	import away3d.cameras.Camera3D;
	import flash.events.Event;
	import away3d.materials.ColorMaterial;
	import away3d.primitives.SphereGeometry;
	import away3d.entities.Mesh;
	import away3d.lights.DirectionalLight;
	import away3d.materials.lightpickers.StaticLightPicker; 
	
	/**
	 * 创建away3d的3D世界 首先我们得了解away3d的几个基本类 也是每次我们做的时候必须初始化的  View3D ,Scene3D ,Camera3D。这三个类我做下简单的解释 
     1   View3D 我们可以理解为一个窗子。就像我们站在屋外可以通过窗子看到屋内的家具。同理 如果同时有多扇窗子,我们就可以看到多个屋内环境。在AWAY3D里面 我也可以通过创建多个View3D来看到这个3D世界。
     2 Scene3D  我还是拿屋子做比较。Scene3D就类似这个屋内这个空间。因为这个空间的存在。我们才能向里面放置家具。
     3 Camera3D 这个就类似我们的眼睛。因为它我们才看到这个世界。我们改变Camera3D 的坐标 遍可以从不同角度来观看这个3D世界
	 * */
	public class Away3DLearn extends  Sprite {
		
		private var _view:View3D;
		
		private var _scene:Scene3D;
		
		private var _camera:Camera3D;
		
		private var _material:ColorMaterial;
		
		private var _sphere:SphereGeometry;
		
		private var _sphereMesh:Mesh;
		
		private var _dl:DirectionalLight;
		private var _dl2:DirectionalLight;
		
		private var _light:StaticLightPicker;
		
		public function Away3DLearn() 
		{
			_view=new View3D();
			addChild(_view);
			
			_scene=new Scene3D();
			_view.scene=_scene;   
			_camera=new Camera3D();
			_view.camera=_camera;
			_material=new ColorMaterial(0xffffff);
			_sphere=new SphereGeometry(100,32,32);
			_sphereMesh=new Mesh(_sphere,_material);
			_view.scene.addChild(_sphereMesh);
			
			_dl=new DirectionalLight();
			_dl2=new DirectionalLight(-1,-1,1);
			_dl2.ambient=.1
			_light=new StaticLightPicker([_dl2]);
			
			_sphereMesh.material.lightPicker=_light;
			
			_view.scene.addChild(_dl);
			this.addEventListener(Event.ENTER_FRAME,enterFrameFunction)
		}
		
		private function enterFrameFunction(evt:Event):void
		{
			_view.render();
		}
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值