Name

cgCombinePrograms4 - combine programs from three different domains

Synopsis

#include <Cg/cg.h>

CGprogram cgCombinePrograms4( const CGprogram program1,
                              const CGprogram program2,
                              const CGprogram program3,
                              const CGprogram program4 );

Parameters

program1
An executable program from one domain.
program2
An executable program from a second domain.
program3
An executable program from a third domain.
program4
An executable program from a fourth domain.

Return Values

Returns a handle to the newly created program on success.

Returns NULL if an error occurs.

Description

cgCombinePrograms4 takes four programs from different domains and combines them into a single CGprogram. This is a convenience function for cgCombinePrograms.

Examples

CGprogram p1 = cgCreateProgram(context, CG_SOURCE, vSrc, vProfile,
                               vEntryName, NULL);
CGprogram p2 = cgCreateProgram(context, CG_SOURCE, fSrc, fProfile,
                               fEntryName, NULL);
CGprogram p3 = cgCreateProgram(context, CG_SOURCE, tcSrc, tcProfile,
                               tcEntryName, NULL);
CGprogram p4 = cgCreateProgram(context, CG_SOURCE, teSrc, teProfile,
                               teEntryName, NULL);

CGprogram combined = cgCombinePrograms4(p1, p2, p3, p4);

cgDestroyProgram(p1);
cgDestroyProgram(p2);
cgDestroyProgram(p3);
cgDestroyProgram(p4);

cgGLBindProgram(combined); /* Assuming cgGL runtime */

/* Render... */

Errors

The errors listed in cgCombinePrograms might be generated.

History

cgCombinePrograms4 was introduced in Cg 3.0.

See Also

cgCombinePrograms, cgCombinePrograms2, cgCombinePrograms3, cgCombinePrograms5