|
|
hlsl着色语言有vertex shader和pixel shader两种,他们都有各自的输入参数,如:
VS_OUTPUT main(float4 pos : POSITION,
float4 normal : NORMAL,
float2 tex : TEXCOORD0,
uniform float4x4 worldViewProjMatrix,
uniform float scroll,
uniform float noise
)
uniform这种参数是在代码中指定的,uniform上面哪些是顶点数据结构中包含的。通过Ogre生成的一些简单模体如createPlane之类的,没有看到过设置顶点数据结构的地方,顶点数据结构中到底包含pos,normal,tex等哪些数据我怎模才能知道,不然的话我不知道shader的输入参数到底包含哪些?
还有就是关于pixel shader,ogre材质脚本给pixel shader传入材质信息好像是通过:
texture_unit
{
texture waves2.dds
filtering linear linear none
}
如果我在pixel shader中需要传入多种材质,如:
VS_OUTPUT main(uniform sampler2D noiseMap : register(s0),uniform sampler2D xxMap : register(s1))
我怎么才能把他们相互对应上,难道只是通过ogre材质脚本中材质的顺序和输入参数的顺序进行对应?
哪位路过的大侠帮帮忙?如果这些地方牵扯其他的内容比较多的话,可以推荐我在那里找一些相关的资料,先谢过了!
|
|