1
CgFX에서 geometry shaders를 사용하는 방법은 무엇입니까? 실제로 '기법'에서 기하 구조 셰이더를 지정하는 방법은 무엇입니까?CgFX geometry shader
목록은 아래에 있습니다. 정점 및 조각 셰이더는 잘 컴파일됩니다. 그러나 'NVIDIA FX 작곡가 2.5'는 'technique'
에 'GeometryProgram'
을 추가 한 후 'error C3001 no program defined'
을 발동합니다.
float4x4 WorldITXf : WorldInverseTranspose;
float4x4 WorldViewProjXf : WorldViewProjection;
float4x4 WorldXf : World;
struct appdata
{
float4 Position : POSITION;
float4 Color : COLOR0;
};
struct vertexOutput
{
float4 Position : POSITION;
float4 Color : COLOR0;
};
TRIANGLE void gshader1(AttribArray<float4> pos : POSITION,
AttribArray<float4> col : COLOR0)
{
// some code will be here;
}
vertexOutput vshader1(appdata IN)
{
vertexOutput OUT;
float4 Po = float4(IN.Position.xyz,1.0f);
OUT.Position = mul(WorldViewProjXf, Po);
OUT.Color = IN.Color;
return OUT;
}
float4 fshader1(vertexOutput IN) : COLOR
{
return IN.Color;
}
technique Tec1 {
pass p0 {
GeometryProgram = compile glslg gshader1();
VertexProgram = compile glslv vshader1();
FragmentProgram = compile glslf fshader1();
}
}