Sign in to follow this  

cgSetParameter

This topic is 3661 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I'm implementing shaders into my c# Tao Framework project. The shader is working and is a slightly modified version of the nehe tutorial, the only thing that doesn't work is setting parameters. Both
[SOURCE]
Cg.cgSetParameter4f(color, 1.0f, 0.0f, 0.0f,1.0f);
[/SOURCE]
or
[SOURCE]
CgGl.cgGLSetParameter4f(color, 1.0f, 0.0f, 0.0f,1.0f);
[/SOURCE]
seem to have no effect what so ever at changing the colour. Shader from nehe without wave implemented
[SOURCE]
struct appdata 
{
	float4 position : POSITION;
	float4 color : COLOR0;
	float3 wave	: COLOR1;
};

struct vfconn
{
	float4 HPos	: POSITION;
	float4 Col0	: COLOR0;
};

vfconn main(appdata IN,	uniform float4x4 ModelViewProj)
{
	vfconn OUT;			

	OUT.HPos = mul(ModelViewProj, IN.position);

	OUT.Col0.xyz = IN.color.xyz;

	return OUT;
}
[/SOURCE]
Any help would be much appreciated. Thanks Draconis

Share this post


Link to post
Share on other sites
I assume "color" is appdata.color?

(if im not mistaken)

appdata.color is "color" per vertex color, and you will have to send color as a colorarray. see glColorPointer

If color is the same for all vertices than it's better that you use it as a global parameter.

float4 color : Color;
float3 wave : WaveColor;

struct appdata
{
float4 position : POSITION;
};

you than can get a valid CGparameter by using either "getParameterByName(<paramname>)" or getParameterBySemantic(<Semantic>)

After you have a valid CGparameter you can change/set the value with cgGLSetParameter4f(...)

hope this helps.

edit:

If your not familiar wirh vertexbuffers here is a link that helped me: http://www.spec.org/gwpg/gpc.static/vbo_whitepaper.html

[Edited by - D3DXVECTOR3 on December 6, 2007 2:10:26 AM]

Share this post


Link to post
Share on other sites

This topic is 3661 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

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