Adobe
产品
Acrobat
创意套装
Digital Marketing Suite
Digital Publishing Suite
Elements
Photoshop
Touch Apps
更多产品
解决方案
数字营销
数字媒体
教育
金融服务业
政府部门
网页体验管理
更多解决方案
学习帮助下载公司
商店
在线商店
批量许可
查找经销商
搜索
 
信息 登录
欢迎,我的支持
我的帐户
注销
为何登录?登录后可以管理您的帐户,访问试用版下载、产品扩展和社区区域等。
Adobe
产品 分类   搜索  
解决方案 公司
帮助 学习
登录 欢迎, 我的货物 我的支持
Qty:
Subtotal
Checkout
Adobe 开发者中心 / Flash 开发人员中心 /

使用Flare3D在FB中搭建第一个Molehill项目

作者 James Li

James Li
  • Blog

创建日期

28 February 2011

页面工具

在 Facebook 上共享
在 Twitter 上共享
在 LinkedIn 上共享
书签
打印

Tags

要求

用户级别

中级

本文介绍如何使用第三方开发框架Flare 3D 2.0在Flash Builder中创建一个基于Molehill 3D的项目

需要做的准备如下:

  1. Flex SDK Hero
  2. Flash Player 11,0,0,58 Incubator
  3. playerglobal.swc
  4. Flare 3D 2.0

按照下面的几步创建项目:

安装Flex SDK Hero

  • 请到这里下载Hero build 19786

配置Flex SDK

  • 将下载后的Hero(版本19786)拷贝到Flash Builder的安装目录中并命名:

    [Flash Builder安装目录]/sdks/4.5_incubator

  • 到这里下载用来开发Incubator项目的playerglobal.swc,然后按照这个地址把playerglobal.swc放进去:

    [Flash Builder安装目录]/sdks/4.5_incubator/frameworks/libs/player/11.0/playerglobal.swc

安装Incubator

  • 请到这里了解Incubator的相关信息并下载安装,它是Flash Player 11的一个预览版,安装方法等同于历次Flash Player的更新。

新建项目

打开Flash Builder,新建一个ActionScript项目。

右键点击项目名称后进入Properties面板,在左边的列表中选择ActionScript Compiler。然后在右上角点击"Configure Flex SDKs"。

点击Add增加一个Flex SDK,填入刚才新建的SDK路径后确定。

同样是在ActionScript Compiler,在上面的Flex SDK Version中选择刚刚添加的SDK,然后在下面的Additional compiler arguments里填入一项新的参数:-swf-version=13。

下载安装Flare 3D开发框架

  • 请到这里注册申请,便可以免费获得Flare 3D 2.0的开发框架。

将bin文件夹里所有内容拷到刚才新建的项目中的bin-debug文件夹,这里包括范例所使用的贴图和3D模型文件,将examples文件夹里所有内容(一堆AS文件和两个包)拷到项目的default package下:

测试范例

OK,现在我们就可以打开Flare 3D下载包中自带的范例了,在src/default package中Test01-Test14每一个都是一个小例子,包括了如何导入DAE和UV贴图建模,如何创建动画、粒子以及如何增加鼠标控制和碰撞检测等等。一定要试试啊,由于启用了硬件加速,体验非常的流畅。

从代码上看也非常的简单,这里我举一个导入模型和贴图的代码,竟然只有短短的几行:

//指定贴图的路径 ColladaLoader.texturesFolder = "textures"; //导入模型 scene = new Viewer3D( this, "car.dae" ); scene.camera.setPosition( 0, 0, -150 );

导入DAE和贴图后的效果图:

对于碰撞检测的情况也不复杂:

private function completeEvent(e:Event):void { // 定义一个碰撞检测集 collisions = new SphereCollision( player, 15, new Vector3D( 0, 15, 0 ) ); //设定碰撞级别 collisions.addCollisionWith( level ); //添加刷新事件侦听 scene.addEventListener( Scene3D.UPDATE_EVENT, updateEvent ); } private function updateEvent(e:Event):void { //键盘控制小人移动 if ( Input3D.keyDown( Input3D.RIGHT ) ) { player.rotateY( 5 ); player.frameSpeed = 1; } if ( Input3D.keyDown( Input3D.LEFT ) ) { player.rotateY( -5 ); player.frameSpeed = 1; } if ( Input3D.keyDown( Input3D.UP ) ) { player.translateZ( 4 ); player.frameSpeed = 1; } if ( Input3D.keyDown( Input3D.DOWN ) ) { player.translateZ( -4 ); player.frameSpeed = -1; } //键盘按下后,小人儿播放走路的动画 if ( Input3D.keyDown( Input3D.UP ) || Input3D.keyDown( Input3D.DOWN ) || Input3D.keyDown( Input3D.LEFT ) || Input3D.keyDown( Input3D.RIGHT ) ) player.play(); else player.stop(); //添加重力加速度 player.y -= 3 //碰撞检测 collisions.slider(); /****控制摄像头跟踪 ****/ //设置摄像头位置尾随小人儿. Pivot3DUtils.setPositionWithReference( scene.camera, 0, 600, -600, player, 0.1 ); //设置摄像头镜头对准小人儿. Pivot3DUtils.lookAtWithReference( scene.camera, 0, 0, 0, player ); }

碰撞检测范例贴图

下载的Flare 3D包中还包括一套API开发文档,虽然全英文且不够详细,但应该可以满足第一步的需要,相信随着框架的不断完善,这些开发文档以及社区中的热心群众们会给我们提供更为详尽的资料。

最后,有一点特别重要,请在发布之前修改一个值,打开html-template/index.template.html, 在调用params.allowfullscreen = "true"的下一行添加一行代码 params.wmode="direct";
如果你不设置这个,那么硬件加速的功能就不会开启,如果你使用的是Flash Develop或者Flash Pro来测试Incubator,也一定不要忘记这一项。

Flash User Forum

More
02/21/2012 sound activated movie
02/21/2012 How do I disable a button once it's pressed?
02/21/2012 Ipad only publish
02/21/2012 Problems with symbols in CS5.5 when using CS5 doc

Flash Cookbooks

More
02/13/2012 Randomize an array
02/11/2012 How to create a Facebook fan page with Flash
02/08/2012 Digital Clock
01/18/2012 Recording webcam video & audio in a flv file on local drive

产品

  • Adobe Touch Apps
  • Acrobat
  • Creative Suite
  • Digital Marketing Suite
  • Digital Publishing Suite
  • Elements
  • 移动应用程序
  • Photoshop

解决方案

  • 数字营销
  • 数字媒体
  • 网页体验管理

行业

  • 教育
  • 金融服务业
  • 政府部门

帮助

  • 产品帮助中心
  • 订货和退货
  • 下载和安装
  • 我的 Adobe

学习

  • Adobe 开发人员连接
  • Adobe TV
  • 培训和认证
  • 论坛
  • 设计中心

购买方式

  • 在线商店
  • 批量许可
  • 查找经销商

下载

  • Adobe Reader
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player

公司

  • 新闻编辑室
  • 合作伙伴计划
  • 公司社会责任
  • 工作机会
  • 投资者关系
  • 事件
  • 法律
  • 联系 Adobe
选择您的地区 中国(更改)
选择您的地区 关闭

North America

Europe, Middle East and Africa

Asia Pacific

  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States

South America

  • Brasil
  • Africa - English
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Česká republika
  • Danmark
  • Eastern Europe - English
  • Eesti
  • España
  • France
  • Deutschland
  • Hrvatska
  • Ireland
  • Israel - English
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • Magyarország
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Österreich - Deutsch
  • Polska
  • Portugal
  • România
  • Россия
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Slovenija
  • Slovensko
  • Srbija
  • Suomi
  • Sverige
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • 台灣

Southeast Asia

  • Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam - English

Copyright © 2012 Adobe Systems Incorporated。保留所有权利。

使用本网站表明您同意使用条款和在线隐私政策。

京 ICP 备 10217899 号 京公网安备 110105010404