// input vertex
struct
VertIn
{
float4
pos
:
POSITION
;
float4
color
:
COLOR0
;
};
// output vertex
struct
VertOut
{
float4
pos
:
POSITION
;
float4
color
:
COLOR0
;
};
// vertex shader main entry
VertOut
main
(
VertIn
IN
,
uniform
float4x4
modelViewProj
)
{
VertOut
OUT
;
OUT
.
pos
=
mul
(
modelViewProj
,
IN
.
pos
);
// calculate output coords
OUT
.
color
=
IN
.
color
;
// copy input color to output
OUT
.
color
.
z
=
1.0f
;
// blue component of color = 1.0f
return
OUT
;
}