`
qdujunjie
  • 浏览: 110911 次
  • 性别: Icon_minigender_1
  • 来自: Mars
社区版块
存档分类
最新评论

Flex与Away3D实例入门

阅读更多

因为看到一篇好文章,Getting Started with Adobe  Flex and Away3D,按照他的步骤,做出一个away3D的例子。下面介绍一下。

 

要谈到Flex上的3D开发,away3d是个不错的选择,可以看一下下面的这个例子:

 

 

 

好的,如何能实现这个例子呢?

 

一开始,我们需要得到一个最新的Away3D的版本,我们可以到http://www.away3d.com/download 上去下载她,在FlexBuilder3环境中,新建一个 Flex Project ,起一个名字,例如:Away3D,然后我们点击Finish。

然后,我们将下载之后的zip文件解压缩,里面会有一个叫做away3d的文件和一个nochump这两个文件,我们把上面提到的那两个文件拷贝到这个Away3D的src目录底下。

 

然后,我们要将我们的mxml代码修改为如下的形式:

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" 
   width="500" height="400" >
  <mx:Panel width="100%" height="100%" title="Our 3D Canvas"
     backgroundColor="#D1F0FF">
  </mx:Panel>
</mx:Application>

 

 

 

然后我们需要新建一个flex类,他叫做FlexView3D,代码如下所示:

 

package
{
  import mx.core.UIComponent;

  public class FlexView3D extends UIComponent
  {
    public function FlexView3D()
    {
      super();
    }
  }
}

 

然后我们需要修改我们的mxml为:

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:local="*"
   layout="absolute" width="500" height="400">
  <mx:Panel width="100%" height="100%" title="Flex 3D View"
     backgroundColor="#D1F0FF">
    <local:FlexView3D width="100%" height="100%" />
  </mx:Panel>
</mx:Application>

 

然后我们将我们将之前的那个FlexView3D 类修改为:

 

package
{
  import away3d.core.material.BitmapFileMaterial;
  import away3d.core.math.Number3D;
  import away3d.core.scene.View3D;
  import away3d.objects.Cube;
  
  import flash.events.Event;
  
  import mx.core.UIComponent;

  public class FlexView3D extends UIComponent
  {
    private var view:View3D;
    
    private var sotcCube:Cube;
    
    public function FlexView3D()
    {
      super();
      this.addEventListener(Event.ENTER_FRAME, onFrameEnter);
    }
    
    override protected function createChildren():void
    {
      super.createChildren();
      
      if(!this.view)
      {
        this.view = new View3D();
        
        this.view.camera.moveTo(new Number3D(0, 0, -1500));
        this.view.camera.lookAt(new Number3D(0, 0, 0));
      }
      this.addChild(this.view);
      
      if(!this.sotcCube)
      {
        this.sotcCube = new Cube({name: "cube", size: 250});
        this.sotcCube.material = new BitmapFileMaterial("sotc.jpg");
      }
      this.view.scene.addChild(this.sotcCube);
    }
    
    override protected function updateDisplayList(
      unscaledWidth:Number, unscaledHeight:Number):void
    {
      super.updateDisplayList(unscaledWidth, unscaledHeight);
      
      if(this.width / 2 != this.view.x)
        this.view.x = this.width / 2;
      if(this.height / 2 != this.view.y)
        this.view.y = this.height / 2;
    }
    
    private function onFrameEnter(event:Event):void
    {
      if(this.view && this.view.stage)
      {
        this.sotcCube.rotationX += .7;
        this.sotcCube.rotationY += .5;
        this.sotcCube.rotationZ += .4;
        
        this.view.render();
      }
    } 
  }
}

 

然后我们运行一下,看看是否出现了一个3D的旋转的立方体?(代码中的图片可以放上自己找的图片然后rename it)。

分享到:
评论
2 楼 lanjingyu 2009-09-10  
look at this website

http://www.altynai.org/sites/default/files/flash/Test3d.swf
1 楼 lanjingyu 2009-09-10  
你翻译的时候自己不跑一跑

build path需要设置

还要在建立一个项目然后add project Away3D这个lib proj

...

相关推荐

    flex中使用away3d引擎播放的帧动画示例

    这个示例着重于将Away3D与Flex结合,创建出具有交互性的3D场景,并在其中播放帧动画。 首先,了解Flex和Away3D的基础是至关重要的。Flex是一种基于MXML和ActionScript 3.0的开发框架,用于构建富互联网应用程序...

    3D中国象棋-flex-away3d实现

    《3D中国象棋:Flex与Away3D的深度整合》 在当今的数字时代,游戏开发技术日新月异,3D技术的应用已经深入人心,不仅在大型游戏领域,小型休闲游戏中也得到了广泛运用。本项目“3D中国象棋”就是这样一个例子,它...

    FLEX AWAY3D DEMO

    通过Flex3d这个子目录,我们可以推测DEMO中可能包含了一系列与Flex相关的源代码文件,如MXML和AS3文件。Flex是基于ActionScript的开发框架,用于构建RIA,它提供了丰富的UI组件和事件处理机制,使得开发者可以更加...

    FLEX AWAY3D 世界地图素材

    总的来说,FLEX AWAY3D 世界地图素材是开发3D地理应用的重要资源,它结合了先进的3D技术与丰富的地理信息,为创造沉浸式用户体验提供了可能性。通过熟练掌握FLEX AWAY3D框架和相关素材的使用,开发者可以构建出令人...

    在Flex项目中引用Away3D(版本3.6)AS项目

    在Flex项目中引用Away3D(版本3.6)AS项目是一个高级的3D图形编程实践,这涉及到将流行的ActionScript 3(AS3)框架Away3D与Adobe Flex结合使用,以创建丰富的3D用户体验。Away3D是一个强大的开源库,它允许开发人员...

    flex3d实例

    Flex 3D,全称Adobe Flex 3D,是...综上所述,"flex3d实例"涉及的不仅是3D图形编程,还包括了软件架构、性能调优、用户交互等多个方面的知识。通过深入学习和实践这些实例,开发者能够掌握创建高质量3D RIA的技能。

    TWaver 3D Flex 3D 实例 例子

    标题中的“TWaver 3D Flex 3D 实例 例子”表明这是一份关于TWaver 3D技术在Flex 3D环境下的应用实例。TWaver是一款强大的数据可视化工具,它提供了丰富的图表类型和交互功能,而Flex 3D是Adobe Flex框架的一个扩展,...

    Away3D_4.1+Flex4.7学习笔记+案例

    《Away3D_4.1+Flex4.7学习笔记与案例解析》 Away3D是一个强大的开源3D引擎,专为Adobe Flash平台设计,它允许开发者创建丰富的、交互式的三维应用程序。本学习笔记结合Flex4.7框架,将深入探讨如何在Flash平台上...

    away3d4.0 新手入门系列教程

    讲解目录 chatper 1.3D WORLD chatper 2.light(灯光) chatper 3.位图贴图 chatper 4.创建天地 chatper 5.摄像头和全景制作 ...详细内容请参考教程文件,这里我就不详细说明!

    Away3D 一款能够应用于Flash或Flex平台中的强大的实时三维引擎

    Away3D 是一款强大的实时三维引擎,专为Flash或Flex平台设计。它的主要目标是提供一个高效的3D渲染环境,让开发者能够创建出互动性强、视觉效果丰富的3D应用程序。Away3D 支持ActionScript 3.0,这意味着它可以无缝...

    flex 指南 Flex入门 Flex实例 flex图表 flex与java flex中文帮助 flex培训

    Adobe+Flex编码指南.pdf chart.rar--java+flex图表 ...Flex入门培训资料及PPT.rar flex中文帮助.pdf InfoQ Flex与JSON及XML的互操作.mht 结合java做的flex图表例子 - 点点滴滴 - JavaEye技术网站.mht

    Away3D汽车展示

    《Away3D汽车展示:深度解析与应用》 在当今的数字媒体领域,3D图形技术的应用日益广泛,尤其在汽车展示中,它能够提供逼真的视觉体验,增强用户对产品的感知。 Away3D作为一款强大的Flash平台上的开源3D引擎,为...

    away3d 4.1.0 swc

    在标题提到的"away3d 4.1.0 swc"中,SWC文件是一种库包格式,常用于Flex和ActionScript项目,它包含编译后的类和其他资源,使得开发者能够轻松集成Away3D框架到他们的Flash应用中。 在Away3d 4.1.0版本中,该库带来...

    away3d 全景 基于球面

    将Away3D与Flex结合,开发者可以在Flex环境中方便地创建和管理3D全景项目,利用Flex的强大UI组件和事件处理机制,提供用户友好的交互体验。 在“基于球面”的全景实现中,图像通常被分割成多个部分,每个部分对应...

    away3d开发引擎包

    使用Flex,开发者可以使用MXML和ActionScript来构建用户界面,并与Away3D结合实现3D功能。 2. **3D图形渲染** - Away3D引擎提供了全面的3D图形渲染支持,包括光照、纹理、材质、几何形状、相机控制等。它允许开发者...

    flex布局教程的实例

    这种布局要求容器内的项目平均分配可用空间,这与骰子面的布局类似,但是需要开启项目的自动缩放功能,通常是使用`flex`属性(`flex-grow`、`flex-shrink`和`flex-basis`的简写)。在这个例子中,可以通过设置容器的...

    java flex入门实例

    通过这个入门实例,开发者能够学习到如何将Java后端与Flex前端结合,创建交互性强、用户体验良好的Web应用。同时,掌握BlazeDS的使用对于理解前后端通信机制和提升开发效率至关重要。在实际开发中,还可以根据需求...

    flex away3D 2.3开发包下载 开发演示

    flex away3D最新版本2.3开发包下载以及开发演示

    Flash+Flex+Air移动开发入门经典 pdf

    《flash+flex+air移动开发入门经典——适用于android、ios和blackberry》 第1章 flash、flex和air简介 1 1.1 adobe flash 1 1.2 actionscript 3.0 2 1.2.1 ecmascript 2 1.2.2 关键概念 3 1.3 flex框架 11 ...

    完全基于FLEX的WEB3D引擎例子源码及教程.rar

    《深入理解基于FLEX的WEB3D引擎:实例解析与教程》 在现代网页开发中,Web3D技术已经成为一种趋势,它为用户提供沉浸式的三维交互体验,极大地丰富了网页内容的表现形式。本资料包“完全基于FLEX的WEB3D引擎例子...

Global site tag (gtag.js) - Google Analytics