1vertex_program Ogre/Island/FullScreenQuadVS hlsl 2{ 3 source Island.hlsl 4 entry_point FullScreenQuadVS 5 target vs_4_0 6 7 default_params 8 { 9 10 } 11} 12 13fragment_program Ogre/Island/RefractionDepthManualResolvePS1 hlsl 14{ 15 source Island.hlsl 16 entry_point RefractionDepthManualResolvePS1 17 target ps_4_0 18 19 default_params 20 { 21 22 } 23} 24 25fragment_program Ogre/Island/RefractionDepthManualResolvePS2 hlsl 26{ 27 source Island.hlsl 28 entry_point RefractionDepthManualResolvePS2 29 target ps_4_0 30 31 default_params 32 { 33 34 } 35} 36 37fragment_program Ogre/Island/RefractionDepthManualResolvePS4 hlsl 38{ 39 source Island.hlsl 40 entry_point RefractionDepthManualResolvePS2 41 target ps_4_0 42 43 default_params 44 { 45 46 } 47} 48 49material Ogre/Island/RefractionDepthManualResolve 50{ 51 technique RefractionDepthManualResolve 52 { 53 pass MS1 54 { 55 vertex_program_ref Ogre/Island/FullScreenQuadVS 56 { 57 58 } 59 fragment_program_ref Ogre/Island/RefractionDepthManualResolvePS1 60 { 61 62 } 63 64 cull_hardware none 65 cull_software none 66 depth_check off 67 depth_write off 68 } 69 pass MS2 70 { 71 vertex_program_ref Ogre/Island/FullScreenQuadVS 72 { 73 74 } 75 fragment_program_ref Ogre/Island/RefractionDepthManualResolvePS2 76 { 77 78 } 79 80 cull_hardware none 81 cull_software none 82 depth_check off 83 depth_write off 84 } 85 pass MS4 86 { 87 vertex_program_ref Ogre/Island/FullScreenQuadVS 88 { 89 90 } 91 fragment_program_ref Ogre/Island/RefractionDepthManualResolvePS4 92 { 93 94 } 95 96 cull_hardware none 97 cull_software none 98 depth_check off 99 depth_write off 100 } 101 } 102 103} 104 105fragment_program Ogre/Island/MainToBackBufferPS hlsl 106{ 107 source Island.hlsl 108 entry_point MainToBackBufferPS 109 target ps_4_0 110 111 default_params 112 { 113 param_named g_MainBufferSizeMultiplier float2 0.0 0.0 114 } 115} 116 117material Ogre/Island/MainToBackBuffer 118{ 119 technique MainToBackBuffer 120 { 121 pass Solid 122 { 123 vertex_program_ref Ogre/Island/FullScreenQuadVS 124 { 125 126 } 127 fragment_program_ref Ogre/Island/MainToBackBufferPS 128 { 129 130 } 131 132 cull_hardware none 133 cull_software none 134 depth_check off 135 depth_write off 136 } 137 } 138} 139 140vertex_program Ogre/Island/WaterNormalmapCombineVS hlsl 141{ 142 source Island.hlsl 143 entry_point WaterNormalmapCombineVS 144 target vs_4_0 145 146 default_params 147 { 148 149 } 150} 151 152fragment_program Ogre/Island/WaterNormalmapCombinePS hlsl 153{ 154 source Island.hlsl 155 entry_point WaterNormalmapCombinePS 156 target ps_4_0 157 158 default_params 159 { 160 param_named_auto g_CameraPosition camera_position 161 param_named g_WaterBumpTexcoordShift float2 0.0 0.0 162 } 163} 164 165material Ogre/Island/WaterNormalmapCombine 166{ 167 technique WaterNormalmapCombine 168 { 169 pass Solid 170 { 171 vertex_program_ref Ogre/Island/WaterNormalmapCombineVS 172 { 173 174 } 175 fragment_program_ref Ogre/Island/WaterNormalmapCombinePS 176 { 177 178 } 179 180 cull_hardware none 181 cull_software none 182 depth_check off 183 depth_write off 184 } 185 } 186} 187 188vertex_program Ogre/Island/PassThroughVS hlsl 189{ 190 source Island.hlsl 191 entry_point PassThroughVS 192 target vs_5_0 193 194 default_params 195 { 196 197 } 198} 199 200tessellation_hull_program Ogre/Island/PatchHS hlsl 201{ 202 source Island.hlsl 203 entry_point PatchHS 204 target hs_5_0 205 206 default_params 207 { 208 param_named g_FrustumCullInHS float 0.0 209 param_named g_TerrainBeingRendered float 0.0 210 param_named_auto g_ModelViewProjectionMatrix worldviewproj_matrix 211 param_named_auto g_CameraPosition camera_position 212 param_named_auto g_CameraDirection view_direction 213 } 214} 215 216tessellation_domain_program Ogre/Island/HeightFieldPatchDS hlsl 217{ 218 source Island.hlsl 219 entry_point HeightFieldPatchDS 220 target ds_5_0 221 222 default_params 223 { 224 param_named g_RenderCaustics float 0.0 225 param_named g_UseDynamicLOD float 0.0 226 param_named g_DynamicTessFactor float 0.0 227 param_named g_StaticTessFactor float 0.0 228 param_named g_SkipCausticsCalculation float 0.0 229 param_named_auto g_ModelViewProjectionMatrix worldviewproj_matrix 230 param_named_auto g_CameraPosition camera_position 231 } 232} 233 234fragment_program Ogre/Island/HeightFieldPatchPS hlsl 235{ 236 source Island.hlsl 237 entry_point HeightFieldPatchPS 238 target ps_5_0 239 240 default_params 241 { 242 param_named g_HalfSpaceCullSign float 0.0 243 param_named g_HalfSpaceCullPosition float 0.0 244 param_named_auto g_LightModelViewProjectionMatrix worldviewproj_matrix 245 param_named_auto g_CameraPosition camera_position 246 param_named_auto g_LightPosition light_position 247 } 248} 249 250fragment_program Ogre/Island/ColorPS hlsl 251{ 252 source IslandCommon.hlsl 253 entry_point ColorPS 254 target ps_5_0 255 256 default_params 257 { 258 259 } 260} 261 262material Ogre/Island/RenderHeightfield 263{ 264 technique RenderHeightfield 265 { 266 pass Solid 267 { 268 vertex_program_ref Ogre/Island/PassThroughVS 269 { 270 271 } 272 tessellation_hull_program_ref Ogre/Island/PatchHS 273 { 274 275 } 276 tessellation_domain_program_ref Ogre/Island/HeightFieldPatchDS 277 { 278 279 } 280 fragment_program_ref Ogre/Island/HeightFieldPatchPS 281 { 282 283 } 284 285 cull_software back 286 depth_check on 287 depth_write on 288 } 289 290 pass DepthOnly 291 { 292 vertex_program_ref Ogre/Island/PassThroughVS 293 { 294 295 } 296 tessellation_hull_program_ref Ogre/Island/PatchHS 297 { 298 299 } 300 tessellation_domain_program_ref Ogre/Island/HeightFieldPatchDS 301 { 302 303 } 304 fragment_program_ref Ogre/Island/ColorPS 305 { 306 307 } 308 309 cull_software back 310 depth_check on 311 depth_write on 312 } 313 } 314} 315 316tessellation_domain_program Ogre/Island/WaterPatchDS hlsl 317{ 318 source Island.hlsl 319 entry_point WaterPatchDS 320 target ds_5_0 321 322 default_params 323 { 324 param_named g_UseDynamicLOD float 0.0 325 param_named g_DynamicTessFactor float 0.0 326 param_named g_StaticTessFactor float 0.0 327 param_named_auto g_ModelViewProjectionMatrix worldviewproj_matrix 328 param_named_auto g_CameraPosition camera_position 329 param_named_auto g_LightPosition light_position 330 param_named g_WaterBumpTexcoordShift float2 0.0 0.0 331 } 332} 333 334fragment_program Ogre/Island/WaterPatchPS hlsl 335{ 336 source IslandCommon.hlsl 337 entry_point WaterPatchPS 338 target ps_5_0 339 340 default_params 341 { 342 param_named_auto g_ModelViewMatrix worldview_matrix 343 param_named_auto g_ModelViewProjectionMatrix worldviewproj_matrix 344 param_named_auto g_LightModelViewProjectionMatrix worldviewproj_matrix 345 param_named_auto g_CameraPosition camera_position 346 param_named_auto g_LightPosition light_position 347 param_named g_WaterBumpTexcoordShift float2 0.0 0.0 348 param_named g_ScreenSizeInv float2 0.0 0.0 349 param_named g_ZNear float 0.0 350 param_named g_ZFar float 0.0 351 param_named g_something float 10.0 352 } 353} 354 355material Ogre/Island/RenderWater 356{ 357 technique RenderWater 358 { 359 pass Solid 360 { 361 vertex_program_ref Ogre/Island/PassThroughVS 362 { 363 364 } 365 tessellation_hull_program_ref Ogre/Island/PatchHS 366 { 367 368 } 369 tessellation_domain_program_ref Ogre/Island/WaterPatchDS 370 { 371 372 } 373 fragment_program_ref Ogre/Island/WaterPatchPS 374 { 375 376 } 377 378 cull_software back 379 depth_check on 380 depth_write on 381 } 382 383 } 384} 385