> ## Name

> cg_2_2_0010 - Cg Toolkit 2.2 October 2009

> ## Summary

> - Allow compiler options in effect compile statements. e.g. VertexProgram = compile vp40 "-po PosInv=1" shader();
> - Better performance when running on multicore CPUs
> - Choosing the "latest" profile is now deferred until effect validation
> - Improved the inverse matrix computation in cgGLSetStateMatrixParameter
> - Better memory behavior when a program is repeatedly recompiled
> - Fixed an issue when using PSIZE semantic with ps_3_0 and ps_4_0 profiles
> - cgCombinePrograms now works with CG_OBJECT programs
> - cgGetNextProgram was always returning 0
> - Fixed a problem with effect parameters and cgGLGetTextureEnum
> - Allow comments prior to the shader version in D3D asm blocks of an effect
> - HLSL10: Mark globally scoped temporaries 'static' to keep them out of constant buffers
> - HLSL10: Allow any semantic for varyings provided the semantics match between stages
> - HLSL10: Fix handling of TEXUNITn semantic
> - HLSL10: Added support for arrays of samplers
> - HLSL10: Empty structs for uniform parameters crashed the D3D compiler
> - Fixed a problem when connecting parameters of type string
> - Corrected issues in the fp20 profile on Solaris
> - Now using MesaGLUT-7.5 for GLUT on Windows

> ## Download

> - Windows 32/64-bit installer for Windows XP, Vista and Win7.
> - Mac OS X ppc/i386/x86_64 dmg for Tiger, Leopard and Snow Leopard.
> - Linux 32-bit tgz tarball and rpm for RedHat.
> - Linux 64-bit tgz tarball and rpm for RedHat.
> - Solaris 32/64-bit package.

> ## See Also

> - 2.1.0009, 2.1.0012, 2.1.0016, 2.1.0017
> - 2.2.0004, 2.2.0006, 2.2.0010, 2.2.0017
> - 3.0.0007, 3.0.0015, 3.0.0016
> - 3.1.0010