Index: GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMap.hlsl
===================================================================
--- GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMap.hlsl	(revision 2217)
+++ GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMap.hlsl	(revision 2246)
@@ -4,4 +4,5 @@
 uniform sampler2D clusterWeightIndexSampler : register(s1);
 uniform sampler2D clusterWeightSampler : register(s2);
+uniform sampler2D colorSampler : register(s3);
 uniform float allClusterCount; 
 uniform float clusterCount;
@@ -50,5 +51,6 @@
 	}
 	
-	return float4(col * 300, 1);
+	float3 color = tex2D(colorSampler, input.tex).rgb;
+	return float4(col * color, 1);
 }
 
Index: GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PRMDemo.material
===================================================================
--- GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PRMDemo.material	(revision 2217)
+++ GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PRMDemo.material	(revision 2246)
@@ -22,25 +22,38 @@
 	IllumTechniques
 	{
-	   	RenderTechnique DepthShadowReciever
-	  	{
-	    	max_light_count 2
-			vertex_program_name GTP/Basic/LightCPos_VS
-			fragment_program_name GTP/Basic/SM/Dist_VSM_PS
-			set_light_view true
-			set_light_farplane true
-			light_viewproj_param_name LightViewProj
-			light_view_param_name LightView
-			light_farplane_param_name lightFarPlane
-			world_view_proj_param_name WorldViewProj
-			world_param_name World
-	  	}
-		RenderTechnique PathMap
-	 	{
+	 //  	RenderTechnique PathMap
+	 //	{
 	    
-	  	}
+	  //	}
+	//	RenderTechnique DepthShadowReciever
+	//  	{
+	//    	max_light_count 2
+	//		vertex_program_name GTP/Basic/LightCPos_VS
+	//		fragment_program_name GTP/Basic/SM/Dist_VSM_PS
+	//		set_light_view true
+	//		set_light_farplane true
+	//		light_viewproj_param_name LightViewProj
+	//		light_view_param_name LightView
+	//		light_farplane_param_name lightFarPlane
+	//		world_view_proj_param_name WorldViewProj
+	//		world_param_name World
+	 // 	}
+	}
+	vertex_program_ref GTP/Basic/ShadedTex_VS
+	{
+		param_named_auto WorldViewProj worldviewproj_matrix
+		param_named_auto World world_matrix
+		param_named_auto WorldInv inverse_world_matrix
+	}
+	fragment_program_ref GTP/Basic/Shaded/TexturedOneLight_PS
+	{
+		param_named_auto lightPos light_position 0
+		param_named_auto lightDir light_direction 0
+		param_named_auto lightColor light_diffuse_colour 0
+		param_named_auto lightPower light_power 0
 	}
    	texture_unit color
    	{
-     colour_op replace
+     	colour_op replace
     }    
    }   
Index: GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMapWeightCompute.hlsl
===================================================================
--- GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMapWeightCompute.hlsl	(revision 2217)
+++ GTP/trunk/App/Demos/Illum/Ogre/Media/PMDemo/PathMapWeightCompute.hlsl	(revision 2246)
@@ -6,4 +6,5 @@
 uniform float3 lightPos;
 uniform float3 lightDir;
+uniform float lightPower;
 uniform float clusterCount;
 uniform float4x4 lightViewProj;
@@ -44,4 +45,5 @@
 	float3 pos = tex2D(radionSampler, float2((werx + 0.25) * dataColumnWidth, (wery  + 0.5) / 4096.0) ).xyz;
 	float3 dir = tex2D(radionSampler, float2((werx + 0.75) * dataColumnWidth, (wery  + 0.5) / 4096.0) ).xyz;
+	dir = normalize(dir);
 	
 	float3 diff = lightPos - pos;
@@ -66,5 +68,5 @@
 	//visibility = visibility * 0.00001 + 1.0;
 	
-	float4 ret = visibility * pow(cosa, 9) * cosb / dist2;
+	float4 ret = visibility * pow(cosa, 9) * cosb / dist2 * lightPower;
 	return ret;
 }
Index: GTP/trunk/App/Demos/Illum/Ogre/Media/materials/GTPBasic/GTPBasic.program
===================================================================
--- GTP/trunk/App/Demos/Illum/Ogre/Media/materials/GTPBasic/GTPBasic.program	(revision 2188)
+++ GTP/trunk/App/Demos/Illum/Ogre/Media/materials/GTPBasic/GTPBasic.program	(revision 2246)
@@ -188,3 +188,10 @@
    target ps_3_0
 }
+
+fragment_program GTP/Basic/Shaded/TexturedOneLight_PS hlsl
+{
+   source GTPBasicShading.hlsl
+   entry_point TexturedShadedOneLight_PS
+   target ps_2_0
+}
    
