> ## Name

> cgCombinePrograms2 - combine programs from two different domains

> ## Synopsis

>     #include <Cg/cg.h>

>     CGprogram cgCombinePrograms2( const CGprogram program1,
>                                   const CGprogram program2 );

> ## Parameters

> program1
>   An executable program from one domain.
> program2
>   An executable program from a different domain.

> ## Return Values

> Returns a handle to the newly created program on success.

> Returns NULL if an error occurs.

> ## Description

> cgCombinePrograms2 takes two 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 combined = cgCombinePrograms2(p1, p2);

>     cgDestroyProgram(p1);
>     cgDestroyProgram(p2);

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

>     /* Render... */

> ## Errors

> The errors listed in cgCombinePrograms might be generated.

> ## History

> cgCombinePrograms2 was introduced in Cg 1.5.

> ## See Also

> cgCombinePrograms, cgCombinePrograms3, cgCombinePrograms4, cgCombinePrograms5