Sign in to follow this  
monkeyboi

What Does This Mean "$modelViewProj"

Recommended Posts

monkeyboi    188
Basically I am trying to compile cg shader file with DX. A char* pointer is used to store the name of a variable in cg. But, here is the question, I don't know why I have to type "$modelViewProj" instead of "modelViewProj". Otherwise the function constanttable->SetValue() will not success. In the cg file that variable's name is just modelViewProj as

void vertextransform(float4 position : POSITION,
float3 Normal : NORMAL,
float2 texCoord : TEXCOORD0,
out float4 oPosition : POSITION,
out float2 otexCoord : TEXCOORD0,
uniform float4x4 modelViewProj)
{
// Transform position from object space to clip space
oPosition = mul(modelViewProj, position);
Normal= float3(0,0,-1);
otexCoord = texCoord;
}

Thanks in advance

Jerry

Share this post


Link to post
Share on other sites
frob    44908
So the question is: Why do I need to use the dollar sign?

There is already a global input named modelViewProj.

The people who wrote the system decided that when the same name comes from both sources, the function parameter would be prepended with $ to avoid duplicate names.


So:
modelViewProj is the global input
$modelViewProj is the parameter.

Share this post


Link to post
Share on other sites
monkeyboi    188
[quote name='frob' timestamp='1354643275' post='5007143']
So:
modelViewProj is the global input
[/quote]

But I did not write any input named modelViewProj, or it is just default input written by program?[quote name='frob' timestamp='1354643275' post='5007143']
The people who wrote the system decided that when the same name comes from both sources
[/quote]
What do both sources mean here? global input and parameter?
What if I put uniform float4x4 modelViewProj out of the funcion as an global input, I would only need "modelViewProj"?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this