Вселенная Away3d — Эпизод 2: В начале было....#000000

Lumber room
Освоение Away3d мы продолжим создав первый проект с трехмерным пространством и объектом внутри.

Откроем Flex Builder, в котором уже должна быть открыта библиотека Away3dFP10, и создадим новый ActionScript Project away3d_prj01_world.


Настроим проект под компиляцию для 10-го флеш плеера, как это было описано в предыдущей статье (в следующих статьях я уже не буду возвращаться к настройке проектов) и уберем галочку с Generate HTML wraper file (запуск в плеере быстрее чем в браузере).
Теперь еще добавим библиотеку Away3dFP10 в Library path:

Немного подправим код, добавив метадату для компиляции swf, установив размеры 600 на 400, фреймрейт 31, и цвет бекграунда черный, основной класс будет теперь выглядеть вот так:
package {
 import flash.display.Sprite;
 
 [SWF (width="600",height="400",frameRate="31",backgroundColor="0x000000")]
 public class away3d_prj01_world extends Sprite
 {
  public function away3d_prj01_world()
  {
  }
 }
}


После всех приготовлений можем наконец запустить, и если все было правильно, увидеть черное окно в открывшемся флеш плеере.
Улучшим ситуацию добавив сферу. Любое построение трехмерного мира в Away3d начинается с создания объекта View3D и добавления (addChild) в Display list — это по-сути окно через которое вы смотрите, в построенный вами мир. Выставляем view в середину экрана. Далее создается объект Scene3D и определяется как свойство объекта класса View3D — это и есть на самом деле фундамент трехмерного мира Away3d. И наконец создается объект Sphere и добавляется (addChild) в объект класса Scene3D. Потом коммандуем чтобы view визуализировала (отрендерила) мир. В результате мы увдим сферу в середине окна со случайно заданным цветом.

Финальный код:
package {
 import away3d.containers.Scene3D;
 import away3d.containers.View3D;
 import away3d.primitives.Sphere;
 
 import flash.display.Sprite;
 
 [SWF (width="600",height="400",frameRate="31",backgroundColor="0x000000")]
 public class away3d_prj01_world extends Sprite
 {
  private var view:View3D;
  private var sphere:Sphere;
  
  public function away3d_prj01_world()
  {
   view=new View3D;
   addChild(view);
   
   // set view postion
   view.x=300;
   view.y=200;
   
   var scene:Scene3D=new Scene3D;
   view.scene=scene;
   
   sphere=new Sphere;
   scene.addChild(sphere);
   
   // lets visualyze
   view.render();
  }
 }
}

Работающий пример
Исходники
Tags:as3away3dflashстатьятуториалурок
Hubs: Lumber room
+5
745 6
Leave a comment

Popular right now

Android developer
to 180,000 ₽Improve DigitalНовосибирск
Дизайнер коммуникаций
from 120,000 to 150,000 ₽SkyengRemote job
Android Developer
from 50,000 to 100,000 ₽НетологияRemote job
Android разработчик
to 200,000 ₽Kick EcosystemRemote job
Senior Android разработчик
from 130,000 ₽LiteBoxRemote job