本次对应第一节教程的文字版解释
视频加载失败
float4x4 WVP : WORLDVIEWPROJECTION;
此代码表示命名WVP为世界视察投影变换矩阵,不清楚什么是变换矩阵可以查看:
文章加载失败
struct VS_OUTPUT {
float4 Pos : POSITION;
};
此代码表示VertexShader将带有齐次坐标的位置输出,不清楚什么是齐次坐标的还可以戳下上面的文章来了解。
VS_OUTPUT Basic_VS(float4 Pos : POSITION)
此代码表示从原来的VertexShader的Output中获得位置信息
{
VS_OUTPUT Out;
Out.Pos = mul(Pos,WVP);
将位置信息和世界视察投影变换矩阵进行变换,变成屏幕看到的效果,不清楚变换方式的,可以看:
文章加载失败
return Out;
输出变换后的顶点信息
}
float4 Basic_PS(VS_OUTPUT IN) : COLOR0
从VertexShader中拿到顶点信息,并且由之后的PixelShader过程上色
{
return float(1,1,1,1);
将顶点上色,颜色以RGB(0-1的浮点)和透明通道代表,此处是纯白色。不了解RGB的可以看:
文章加载失败
}
technique MainTec < string MMDPass = "object";> {
pass DrawObject {
VertexShader = compile vs_2_0 Basic_VS();
PixelShader = compile ps_2_0 Basic_PS();
}
}
technique MainTec_ss < string MMDPass = "object_ss";> {
pass DrawObject {
VertexShader = compile vs_2_0 Basic_VS();
PixelShader = compile ps_2_0 Basic_PS();
}
}
将之前写的代码进行编译,编译版本都是2.0