summaryrefslogtreecommitdiffstats
path: root/tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx
diff options
context:
space:
mode:
Diffstat (limited to 'tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx')
-rw-r--r--tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx191
1 files changed, 0 insertions, 191 deletions
diff --git a/tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx b/tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx
deleted file mode 100644
index a6f09ecc7..000000000
--- a/tests/hlsl/dxsdk/Direct3D11TutorialsFX11/Tutorial13/Tutorial13.fx
+++ /dev/null
@@ -1,191 +0,0 @@
-//TEST_IGNORE_FILE:
-//--------------------------------------------------------------------------------------
-// File: Tutorial13.fx
-//
-// Copyright (c) Microsoft Corporation. All rights reserved.
-//--------------------------------------------------------------------------------------
-
-
-//--------------------------------------------------------------------------------------
-// Constant Buffer Variables
-//--------------------------------------------------------------------------------------
-Texture2D g_txDiffuse;
-SamplerState samLinear
-{
- Filter = MIN_MAG_MIP_LINEAR;
- AddressU = Wrap;
- AddressV = Wrap;
-};
-
-TextureCube g_txEnvMap;
-SamplerState samLinearClamp
-{
- Filter = MIN_MAG_MIP_LINEAR;
- AddressU = Clamp;
- AddressV = Clamp;
-};
-
-cbuffer cbConstant
-{
- float3 vLightDir = float3(-0.577,0.577,-0.577);
-};
-
-cbuffer cbChangesEveryFrame
-{
- matrix World;
- matrix View;
- matrix Projection;
- float Time;
-};
-
-cbuffer cbUserChanges
-{
- float Explode;
-};
-
-struct VS_INPUT
-{
- float3 Pos : POSITION;
- float3 Norm : NORMAL;
- float2 Tex : TEXCOORD0;
-};
-
-struct GSPS_INPUT
-{
- float4 Pos : SV_POSITION;
- float3 Norm : TEXCOORD0;
- float2 Tex : TEXCOORD1;
-};
-
-//--------------------------------------------------------------------------------------
-// DepthStates
-//--------------------------------------------------------------------------------------
-DepthStencilState EnableDepth
-{
- DepthEnable = TRUE;
- DepthWriteMask = ALL;
- DepthFunc = LESS_EQUAL;
-};
-
-BlendState NoBlending
-{
- AlphaToCoverageEnable = FALSE;
- BlendEnable[0] = FALSE;
-};
-
-
-//--------------------------------------------------------------------------------------
-// Vertex Shader
-//--------------------------------------------------------------------------------------
-GSPS_INPUT VS( VS_INPUT input )
-{
- GSPS_INPUT output = (GSPS_INPUT)0;
-
- output.Pos = mul( float4(input.Pos,1), World );
- output.Norm = mul( input.Norm, (float3x3)World );
- output.Tex = input.Tex;
-
- return output;
-}
-
-
-//--------------------------------------------------------------------------------------
-// Geometry Shader
-//--------------------------------------------------------------------------------------
-[maxvertexcount(12)]
-void GS( triangle GSPS_INPUT input[3], inout TriangleStream<GSPS_INPUT> TriStream )
-{
- GSPS_INPUT output;
-
- //
- // Calculate the face normal
- //
- float3 faceEdgeA = input[1].Pos - input[0].Pos;
- float3 faceEdgeB = input[2].Pos - input[0].Pos;
- float3 faceNormal = normalize( cross(faceEdgeA, faceEdgeB) );
- float3 ExplodeAmt = faceNormal*Explode;
-
- //
- // Calculate the face center
- //
- float3 centerPos = (input[0].Pos.xyz + input[1].Pos.xyz + input[2].Pos.xyz)/3.0;
- float2 centerTex = (input[0].Tex + input[1].Tex + input[2].Tex)/3.0;
- centerPos += faceNormal*Explode;
-
- //
- // Output the pyramid
- //
- for( int i=0; i<3; i++ )
- {
- output.Pos = input[i].Pos + float4(ExplodeAmt,0);
- output.Pos = mul( output.Pos, View );
- output.Pos = mul( output.Pos, Projection );
- output.Norm = input[i].Norm;
- output.Tex = input[i].Tex;
- TriStream.Append( output );
-
- int iNext = (i+1)%3;
- output.Pos = input[iNext].Pos + float4(ExplodeAmt,0);
- output.Pos = mul( output.Pos, View );
- output.Pos = mul( output.Pos, Projection );
- output.Norm = input[iNext].Norm;
- output.Tex = input[iNext].Tex;
- TriStream.Append( output );
-
- output.Pos = float4(centerPos,1) + float4(ExplodeAmt,0);
- output.Pos = mul( output.Pos, View );
- output.Pos = mul( output.Pos, Projection );
- output.Norm = faceNormal;
- output.Tex = centerTex;
- TriStream.Append( output );
-
- TriStream.RestartStrip();
- }
-
- for( int i=2; i>=0; i-- )
- {
- output.Pos = input[i].Pos + float4(ExplodeAmt,0);
- output.Pos = mul( output.Pos, View );
- output.Pos = mul( output.Pos, Projection );
- output.Norm = -input[i].Norm;
- output.Tex = input[i].Tex;
- TriStream.Append( output );
- }
- TriStream.RestartStrip();
-}
-
-
-//--------------------------------------------------------------------------------------
-// Pixel Shader
-//--------------------------------------------------------------------------------------
-float4 PS( GSPS_INPUT input) : SV_Target
-{
- // Calculate lighting assuming light color is <1,1,1,1>
- float fLighting = saturate( dot( input.Norm, vLightDir ) );
-
- // Load the diffuse texture and multiply by the lighting amount
- float4 cDiffuse = g_txDiffuse.Sample( samLinear, input.Tex ) * fLighting;
- cDiffuse.a = 1;
-
- // return diffuse
- return cDiffuse;
-}
-
-
-//--------------------------------------------------------------------------------------
-// Technique
-//--------------------------------------------------------------------------------------
-technique11 Render
-{
- pass P0
- {
- SetVertexShader( CompileShader( vs_4_0, VS() ) );
- SetGeometryShader( CompileShader( gs_4_0, GS() ) );
- SetPixelShader( CompileShader( ps_4_0, PS() ) );
-
- SetBlendState( NoBlending, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF );
- SetDepthStencilState( EnableDepth, 0 );
- }
-}
-
-