Changeset 579
- Timestamp:
- 05/25/08 14:46:03 (8 months ago)
- Files:
-
- trunk/src/defend/Main.d (modified) (3 diffs)
- trunk/src/defend/game/Game.d (modified) (2 diffs)
- trunk/src/defend/sim/SceneNode.d (modified) (5 diffs)
- trunk/src/defend/sim/obj/Citizen.d (modified) (1 diff)
- trunk/src/defend/sim/obj/House.d (modified) (2 diffs)
- trunk/src/defend/sim/obj/Sheep.d (modified) (1 diff)
- trunk/src/defend/terrain/FogOfWar.d (modified) (1 diff)
- trunk/src/defend/terrain/Terrain.d (modified) (2 diffs)
- trunk/src/gen/util/Resource.d (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/defend/Main.d
r572 r579 12 12 13 13 import gen.core.TaskManager : TaskManager, taskManager; 14 import gen.math.Vector : vec2i, vec3; 15 import gen.model.Model : Model; 14 16 import gen.input.Input : InputChannel; 15 17 import gen.input.SDL : SDLInputWriter; 16 import gen.math.Vector : vec2i, vec3;17 18 import gen.rend.Renderer : RendererConfig, Shader, Renderer, renderer; 18 19 import gen.rend.opengl.Renderer : OGLRenderer; … … 25 26 import gen.util.Config : Config; 26 27 import gen.util.GameState : gameState; 28 import gen.util.Resource : Resource; 27 29 28 30 import defend.Config : defendConfig, RuntimeException, DEFEND_NAME, DEFEND_VERSION; … … 52 54 // Spam :P 53 55 Log.defaultLevel = LogLevel.Spam; 56 57 // Set resource search paths 58 Resource.searchPath = "data"; 59 Shader.searchPath = "shaders"; 60 Model.searchPath = "models"; 54 61 55 62 // Load the config trunk/src/defend/game/Game.d
r578 r579 274 274 275 275 // Fog of war 276 fogOfWar = new FogOfWar(gameObjects, terrain.lightmapTexture, vec2i.from(terrain.dimension), false);276 fogOfWar = new FogOfWar(gameObjects, terrain.lightmapTexture, vec2i.from(terrain.dimension), true); 277 277 278 278 // Create the HUD … … 291 291 keyboard.keyDownHandlers[KeyType.G] = &toggleSceneGraphDebug; 292 292 keyboard.keyDownHandlers[KeyType.Escape] = &inputExit; 293 293 294 294 //dumpGCStats(); 295 295 trunk/src/defend/sim/SceneNode.d
r576 r579 101 101 renderer.setRenderState(RenderState.BackfaceCulling, true); 102 102 103 auto shader = Shader.acquire(isNeutral ? " data/shaders/model-neutral.cfg" : "data/shaders/model.cfg");103 auto shader = Shader.acquire(isNeutral ? "model-neutral.cfg" : "model.cfg"); 104 104 renderer.setShader(shader); 105 105 … … 128 128 renderer.setRenderState(RenderState.BackfaceCulling, false); 129 129 130 Shader.release(Shader.get(isNeutral ? " data/shaders/model-neutral.cfg" : "data/shaders/model.cfg"));130 Shader.release(Shader.get(isNeutral ? "model-neutral.cfg" : "model.cfg")); 131 131 132 132 renderer.setTexture(1, null); … … 217 217 this.mesh = mesh; 218 218 219 shader = Shader.acquire(parent.isNeutral ? " data/shaders/model-neutral.cfg" : "data/shaders/model.cfg");219 shader = Shader.acquire(parent.isNeutral ? "model-neutral.cfg" : "model.cfg"); 220 220 221 221 version(GlowTest) 222 222 { 223 223 if(defendConfig.graphics.objects_glow) 224 glowShader = Shader.acquire(" data/shaders/modelGlow.cfg");224 glowShader = Shader.acquire("modelGlow.cfg"); 225 225 } 226 226 … … 240 240 function(NodeHolder[] nodes, Camera camera) 241 241 { 242 auto shader = Shader.acquire(" data/shaders/modelGlow.cfg");242 auto shader = Shader.acquire("modelGlow.cfg"); 243 243 renderer.setShader(shader); 244 244 }, … … 246 246 function 247 247 { 248 Shader.release(Shader.get(" data/shaders/modelGlow.cfg"));248 Shader.release(Shader.get("modelGlow.cfg")); 249 249 renderer.setShader(null); 250 250 trunk/src/defend/sim/obj/Citizen.d
r575 r579 26 26 { 27 27 // TODO: change citizen model and mini pic 28 model = " data/models/sheep/low.obj";29 miniPic = " data/minipics/sheep.png";28 model = "sheep/low.obj"; 29 miniPic = "minipics/sheep.png"; 30 30 parentType = "unit"; 31 31 posOffset = vec3(0, 1, 0); trunk/src/defend/sim/obj/House.d
r570 r579 17 17 with(ti) 18 18 { 19 model = "data/models/house/model.obj"; 19 model = "house/model.obj"; 20 miniPic = "minipics/house.png"; 20 21 parentType = "building"; 21 22 dimension = vec2i(5, 6); … … 25 26 canBuild = [ "sheep", "citizen" ]; 26 27 canDevelop = [ "sheep on drugs" ]; 27 miniPic = "data/minipics/house.png";28 28 properties[GameObject.Property.MaxLife] = objProp(2000); 29 29 properties[GameObject.Property.Sight] = objProp(70); trunk/src/defend/sim/obj/Sheep.d
r570 r579 24 24 with(ti) 25 25 { 26 model = " data/models/sheep/low.obj";27 miniPic = " data/minipics/sheep.png";26 model = "sheep/low.obj"; 27 miniPic = "minipics/sheep.png"; 28 28 parentType = "unit"; 29 29 posOffset = vec3(0, 1, 0); trunk/src/defend/terrain/FogOfWar.d
r576 r579 251 251 circleTexture = generateCircle(); 252 252 sprite = new Sprite(lightmap.dimension, true); 253 copyShader = Shader.acquire(" data/shaders/copyVisibleFog.cfg");254 combineShader = Shader.acquire(" data/shaders/combineLightmaps.cfg");253 copyShader = Shader.acquire("copyVisibleFog.cfg"); 254 combineShader = Shader.acquire("combineLightmaps.cfg"); 255 255 256 256 visibleTiles.create(dimension.tuple); trunk/src/defend/terrain/Terrain.d
r578 r579 239 239 void loadDiffuseMaps() 240 240 { 241 diffuseMaps[0] = Texture.acquire(" data/textures/grass.png");242 diffuseMaps[1] = Texture.acquire(" data/textures/mountain.png");243 diffuseMaps[2] = Texture.acquire(" data/textures/snow.png");241 diffuseMaps[0] = Texture.acquire("textures/grass.png"); 242 diffuseMaps[1] = Texture.acquire("textures/mountain.png"); 243 diffuseMaps[2] = Texture.acquire("textures/snow.png"); 244 244 } 245 245 … … 340 340 patchCount = 8; 341 341 342 shader = Shader.acquire(" data/shaders/terrain.cfg");342 shader = Shader.acquire("terrain.cfg"); 343 343 344 344 logger.info("loading diffuse maps"); trunk/src/gen/util/Resource.d
r574 r579 7 7 8 8 public: 9 static char[] searchPath; 10 9 11 static void addType(T)() 10 12 { … … 22 24 { 23 25 private: 24 import tango.io.FilePath; 26 import Path = tango.io.Path; 27 import tango.text.Util : locatePrior; 25 28 import tango.text.Ascii : toLower; 26 29 … … 35 38 uint refCount; 36 39 37 public: 40 public: 41 static char[] searchPath; 42 38 43 char[] file; 39 44 … … 54 59 { 55 60 T instance; 61 62 void tryLoad(lazy char[] file_) 63 { 64 if(instance) 65 return; 66 67 auto file = file_; 68 auto ext = file[locatePrior(file, '.') .. $]; 69 70 static if(is(typeof(T.loadResource(new Config(file))))) 71 { 72 if(ext == ".cfg" && Path.exists(file)) 73 { 74 instance = T.loadResource(new Config(file)); 75 return; 76 } 77 } 56 78 57 static if(is(typeof(T.loadResource(new Config(file))))) 58 { 59 if(FilePath(file).ext == "cfg") 60 instance = T.loadResource(new Config(file)); 79 if(Path.exists(file) || ext == "") 80 instance = T.loadResource(file); 61 81 } 62 82 83 tryLoad(Resource.searchPath ~ '/' ~ searchPath ~ '/' ~ file); 84 tryLoad(Resource.searchPath ~ '/' ~ file); 85 tryLoad(searchPath ~ '/' ~ file); 86 tryLoad(file); 87 63 88 if(!instance) 64 { 65 instance = T.loadResource(file); 66 } 89 throw new Exception("resource not found: " ~ file); 67 90 68 91 instances[file] = instance;
