1. package
  2. {
  3. import away3d.containers.ObjectContainer3D;
  4. import away3d.core.math.Number3D;
  5. import away3d.extrusions.TextExtrude;
  6. import away3d.materials.WireColorMaterial;
  7. import away3d.primitives.TextField3D;
  8.  
  9. import wumedia.vector.VectorText;
  10.  
  11. public class ApplicationManager extends BaseObject
  12. {
  13.  
  14. protected var mesh:MeshObject = null;
  15.  
  16. public function ApplicationManager()
  17. {
  18. super();
  19. }
  20.  
  21. public function startupApplicationManager(engineManager:EngineManager):ApplicationManager
  22. {
  23. super.startupBaseObject(engineManager);
  24.  
  25. VectorText.extractFont(new ResourceManager.Fonts(), null, false);
  26.  
  27. var textfield1:TextField3D = new TextField3D("Impact");
  28. textfield1.material = new WireColorMaterial(0x4488FF, {wirecolor: 0xFFFFFF});
  29. textfield1.text = "Away3D";
  30. textfield1.size = 30;
  31. textfield1.textWidth = 300;
  32.  
  33. var extrusion:TextExtrude = new TextExtrude(
  34. textfield1, {
  35. subdivisionsXY:1,
  36. subdivisionsZ:1,
  37. bothsides:true,
  38. depth:10}
  39. );
  40.  
  41. var container:ObjectContainer3D = new ObjectContainer3D(textfield1, extrusion);
  42. container.y += textfield1.objectHeight;
  43. container.pivotPoint = new Number3D(textfield1.objectWidth/2, textfield1.objectHeight/2, 0);
  44.  
  45. mesh = new MeshObject().startupObject3DMeshObject(this.engineManager, container);
  46.  
  47. return this;
  48. }
  49.  
  50. public override function shutdown():void
  51. {
  52. super.shutdown();
  53. }
  54.  
  55. public override function enterFrame(dt:Number):void
  56. {
  57. mesh.model.rotationY += 10 * dt;
  58. }
  59.  
  60. }
  61. }