1. package
  2. {
  3. import away3d.core.utils.Cast;
  4. import away3d.materials.BitmapMaterial;
  5.  
  6. import flash.display.BitmapData;
  7. import flash.utils.ByteArray;
  8.  
  9. public class ResourceManager
  10. {
  11. protected var engineManager:EngineManager = null;
  12.  
  13. [Embed (source="../media/heightmap.jpg")]
  14. public static const Heightmap:Class;
  15.  
  16. [Embed (source="../media/terrain.jpg")]
  17. public static const Terrain:Class;
  18.  
  19. public var TerrainTex:BitmapMaterial = null;
  20. public var HeightmapTex:BitmapData = null;
  21.  
  22. public function ResourceManager(engineManager:EngineManager)
  23. {
  24. this.engineManager = engineManager;
  25. }
  26.  
  27. public function startupResourceManager():void
  28. {
  29. TerrainTex = new BitmapMaterial(Cast.bitmap(Terrain));
  30. HeightmapTex = Cast.bitmap(Heightmap);
  31. }
  32.  
  33. public function shutdown():void
  34. {
  35. TerrainTex = null;
  36. HeightmapTex = null;
  37. }
  38.  
  39. protected function ConvertToXML(data:Class):XML
  40. {
  41. var byteArray:ByteArray = new data() as ByteArray;
  42. return new XML(byteArray.readUTFBytes(byteArray.length))
  43. }
  44. }
  45. }