Graphics Reference
In-Depth Information
//
Constants
cbuffer Transforms
{
matrix
WorldMatrix;
matrix
WorldViewMatrix;
matrix
WorldViewProjMatrix;
};
cbuffer MatProperties
{
float3
SpecularAlbedo;
float
SpecularPower;
};
// Textures/Samplens,
Texture2D
Diffus^Map
:
register(
t0 );
SamplerState
AnisoSampler
:
register(
s0 );
// Input/Output structures
struct VSInput
{
float4 Position
:
POSITION;
float2
TexCoord
:
TEXCOORDS0;
float3
Normal
:
NORMAL;
};
struct VSOutput
{
float4 PositionCS
:
SV_Position;
float2
TexCoord
:
TEXCOORD;
float3
NormalWS
:
NORMALWS;
float3
PositionWS
:
POSITIONWS;
};
struct PSInput
{
float4
PositionSS
:
SV_Position;
float2
TexCoord
:
TEXCOORD;
float3
NormalWS
:
NORMALWS;
float3
PositionWS
:
POSITIONWS;
};
struct PSOutput
{
float4
Normal
:
SV_Target0;
float4
DiffuseAlbedo
:
SV_Targetl;
float4
SpecularAlbedo
:
SV_Target2;
float4
Position
:
SV_Target3;
};
//
6-Buffer
vertex
shader
VSOutput
VSMain(
in VSInput
input
)
{
VSOutput
output;
Search WWH ::
Custom Search