Changeset 538

Show
Ignore:
Timestamp:
05/15/08 14:32:57 (8 months ago)
Author:
LeoD
Message:

fixed minimap so that it works even if shadowmapping is enabled

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/run/data/models/house/model.mtl

    r535 r538  
    88Ks 0.100000 0.100000 0.100000 
    99d 0.996078 
    10 map_Kd model.png 
     10map_Kd model2.png 
    1111# End 
  • trunk/run/data/shaders/model-pixel.glsl

    r537 r538  
    1919    gl_FragColor = vec4(tex.rgb * tex.a + color * (1 - tex.a), 1.0) * (light * 2); 
    2020     
    21 #ifdef SHADOWMAPPING 
     21/*#ifdef SHADOWMAPPING 
    2222    gl_FragColor *= shadowMap(shadow, lightSpacePos); 
    2323#else 
    2424    gl_FragColor *= gl_Color; 
    25 #endif 
     25#endif*/ 
    2626} 
  • trunk/run/data/shaders/shadowmap.glsl

    r537 r538  
    2020 
    2121#if SHADOWMAPPING_SAMPLES > 0 
    22     val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o1+0.0001,-o1), lightDistance); 
     22    val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o1 + 0.0001, -o1), lightDistance); 
    2323#endif 
    2424 
    2525#if SHADOWMAPPING_SAMPLES > 1 
    26     val += shadowMapSingle(sampler, shadowMapCoord + vec2( o1,-o1+0.0001), lightDistance); 
     26    val += shadowMapSingle(sampler, shadowMapCoord + vec2(o1, -o1 + 0.0001), lightDistance); 
    2727#endif 
    2828     
    2929#if SHADOWMAPPING_SAMPLES > 2 
    30     val += shadowMapSingle(sampler, shadowMapCoord + vec2( o1-0.0001, o1), lightDistance); 
     30    val += shadowMapSingle(sampler, shadowMapCoord + vec2(o1 - 0.0001, o1), lightDistance); 
    3131#endif 
    3232 
    3333#if SHADOWMAPPING_SAMPLES > 3  
    34     val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o1, o1-0.0001), lightDistance); 
     34    val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o1, o1 - 0.0001), lightDistance); 
    3535#endif 
    3636 
    3737#if SHADOWMAPPING_SAMPLES > 4 
    38     val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o2,-o2+0.0001), lightDistance); 
     38    val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o2, -o2 + 0.0001), lightDistance); 
    3939#endif 
    4040 
    4141#if SHADOWMAPPING_SAMPLES > 5     
    42     val += shadowMapSingle(sampler, shadowMapCoord + vec2( o2+0.0001,-o2), lightDistance); 
     42    val += shadowMapSingle(sampler, shadowMapCoord + vec2(o2 + 0.0001, -o2), lightDistance); 
    4343#endif 
    4444     
    4545#if SHADOWMAPPING_SAMPLES > 6 
    46     val += shadowMapSingle(sampler, shadowMapCoord + vec2( o2, o2-0.0001), lightDistance); 
     46    val += shadowMapSingle(sampler, shadowMapCoord + vec2(o2, o2 - 0.0001), lightDistance); 
    4747#endif 
    4848 
    4949#if SHADOWMAPPING_SAMPLES > 7 
    50     val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o2-0.0001, o2), lightDistance); 
     50    val += shadowMapSingle(sampler, shadowMapCoord + vec2(-o2 - 0.0001, o2), lightDistance); 
    5151#endif 
    5252     
  • trunk/src/defend/objects/SceneNode.d

    r537 r538  
    111111         
    112112        if(!sceneGraph.cameraData.shadowMap) 
    113         {           
     113        { 
    114114            renderer.setShader(shader); 
    115115            shader.setUniform("color", parent.color); 
  • trunk/src/defend/terrain/Terrain.d

    r537 r538  
    1919import gen.scene.CullNode; 
    2020import gen.util.Log; 
     21import gen.util.Config; 
    2122import gen.util.Memory; 
    2223import gen.util.Profiler; 
     
    439440    void renderOrthogonal() // for mini map 
    440441    { 
    441         renderer.setShader(shader); 
    442          
     442        // need to disable shadowmapping here.. this is kind of a hack :P 
     443        auto define = cast(bool)("SHADOWMAPPING" in Shader.defines); 
     444        if(define) Shader.defines.remove("SHADOWMAPPING"); 
     445         
     446        scope(exit) 
     447            if(define) Shader.defines["SHADOWMAPPING"] = "1"; 
     448         
     449        auto localShader = renderer.createShader(new Config("data/shaders/terrain.cfg")); 
     450        scope(exit) delete localShader; 
     451     
     452        renderer.setShader(localShader); 
     453 
    443454        renderer.setTexture(0, alphaMap); 
    444455        renderer.setTexture(1, diffuseMaps[0]); 
     
    447458        renderer.setTexture(4, lightmapTexture); 
    448459         
    449         shader.setUniform("alpha", 0); 
    450         shader.setUniform("texture1", 1); 
    451         shader.setUniform("texture2", 2); 
    452         shader.setUniform("texture3", 3); 
    453         shader.setUniform("lightmap", 4); 
    454          
     460        localShader.setUniform("alpha", 0); 
     461        localShader.setUniform("texture1", 1); 
     462        localShader.setUniform("texture2", 2); 
     463        localShader.setUniform("texture3", 3); 
     464        localShader.setUniform("lightmap", 4); 
     465 
    455466        foreach(patch; patches) 
    456467            patch.render(); 
    457          
     468 
    458469        renderer.setShader(null); 
    459470