diff --git a/Externals/Cg/cg.dll b/Externals/Cg/cg.dll index df703e24eb..f8241592e6 100644 Binary files a/Externals/Cg/cg.dll and b/Externals/Cg/cg.dll differ diff --git a/Externals/Cg/cg.h b/Externals/Cg/cg.h index 63235f90ac..485727a268 100644 --- a/Externals/Cg/cg.h +++ b/Externals/Cg/cg.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * @@ -57,7 +57,7 @@ /*** CG Run-Time Library API ***/ /*************************************************************************/ -#define CG_VERSION_NUM 2000 +#define CG_VERSION_NUM 2100 #ifdef _WIN32 # ifndef APIENTRY /* From Win32's */ @@ -74,15 +74,18 @@ # endif #endif /* _WIN32 */ -/* Set up for either Win32 import/export/lib. */ +/* Set up CG_API for Win32 dllexport or gcc visibility */ + #ifndef CG_API -# ifdef _WIN32 -# ifdef CG_EXPORTS +# ifdef CG_EXPORTS +# ifdef _WIN32 # define CG_API __declspec(dllexport) -# elif defined (CG_LIB) -# define CG_API +# elif defined(__GNUC__) && __GNUC__>=4 +# define CG_API __attribute__ ((visibility("default"))) +# elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) +# define CG_API __global # else -# define CG_API __declspec(dllimport) +# define CG_API # endif # else # define CG_API @@ -233,6 +236,7 @@ extern "C" { typedef CGbool (CGENTRY * CGstatecallback)(CGstateassignment); typedef void (CGENTRY * CGerrorCallbackFunc)(void); typedef void (CGENTRY * CGerrorHandlerFunc)(CGcontext ctx, CGerror err, void *data); +typedef void (CGENTRY * CGIncludeCallbackFunc)(CGcontext ctx, const char *filename); /*************************************************************************/ /*** Functions ***/ @@ -259,6 +263,13 @@ CG_API CGenum CGENTRY cgGetAutoCompile(CGcontext ctx); CG_API void CGENTRY cgSetParameterSettingMode(CGcontext ctx, CGenum parameterSettingMode); CG_API CGenum CGENTRY cgGetParameterSettingMode(CGcontext ctx); +/*** Inclusion ***/ + +CG_API void CGENTRY cgSetCompilerIncludeString(CGcontext ctx, const char *name, const char *source); +CG_API void CGENTRY cgSetCompilerIncludeFile(CGcontext ctx, const char *name, const char *filename); +CG_API void CGENTRY cgSetCompilerIncludeCallback(CGcontext ctx, CGIncludeCallbackFunc func); +CG_API CGIncludeCallbackFunc CGENTRY cgGetCompilerIncludeCallback(CGcontext ctx); + /*** Program functions ***/ CG_API CGprogram CGENTRY cgCreateProgram(CGcontext ctx, @@ -291,6 +302,7 @@ CG_API CGenum CGENTRY cgGetProgramInput(CGprogram program); CG_API CGenum CGENTRY cgGetProgramOutput(CGprogram program); CG_API void CGENTRY cgSetPassProgramParameters(CGprogram); CG_API void CGENTRY cgUpdateProgramParameters(CGprogram program); +CG_API void CGENTRY cgUpdatePassParameters(CGpass pass); /*** Parameter functions ***/ @@ -367,6 +379,12 @@ CG_API int CGENTRY cgGetParameterValuefr(CGparameter param, int n, float *vals); CG_API int CGENTRY cgGetParameterValuefc(CGparameter param, int n, float *vals); CG_API int CGENTRY cgGetParameterValueir(CGparameter param, int n, int *vals); CG_API int CGENTRY cgGetParameterValueic(CGparameter param, int n, int *vals); +CG_API int CGENTRY cgGetParameterDefaultValuedr(CGparameter param, int n, double *vals); +CG_API int CGENTRY cgGetParameterDefaultValuedc(CGparameter param, int n, double *vals); +CG_API int CGENTRY cgGetParameterDefaultValuefr(CGparameter param, int n, float *vals); +CG_API int CGENTRY cgGetParameterDefaultValuefc(CGparameter param, int n, float *vals); +CG_API int CGENTRY cgGetParameterDefaultValueir(CGparameter param, int n, int *vals); +CG_API int CGENTRY cgGetParameterDefaultValueic(CGparameter param, int n, int *vals); CG_API const char * CGENTRY cgGetStringParameterValue(CGparameter param); CG_API void CGENTRY cgSetStringParameterValue(CGparameter param, const char *str); @@ -514,6 +532,7 @@ CG_API CGpass CGENTRY cgGetNextPass(CGpass); CG_API CGbool CGENTRY cgIsPass(CGpass); CG_API const char * CGENTRY cgGetPassName(CGpass); CG_API CGtechnique CGENTRY cgGetPassTechnique(CGpass); +CG_API CGprogram CGENTRY cgGetPassProgram(CGpass pass, CGdomain domain); CG_API void CGENTRY cgSetPassState(CGpass); CG_API void CGENTRY cgResetPassState(CGpass); @@ -662,6 +681,7 @@ CG_API CGprogram CGENTRY cgCombinePrograms( int n, const CGprogram *exeList ); CG_API CGprogram CGENTRY cgCombinePrograms2( const CGprogram exe1, const CGprogram exe2 ); CG_API CGprogram CGENTRY cgCombinePrograms3( const CGprogram exe1, const CGprogram exe2, const CGprogram exe3 ); CG_API CGprofile CGENTRY cgGetProgramDomainProfile(CGprogram program, int index); +CG_API CGprogram CGENTRY cgGetProgramDomainProgram(CGprogram program, int index); /*** CGobj Functions ***/ CG_API CGobj CGENTRY cgCreateObj( CGcontext context, CGenum program_type, const char *source, CGprofile profile, const char **args ); @@ -670,6 +690,7 @@ CG_API void CGENTRY cgDestroyObj( CGobj obj ); CG_API long CGENTRY cgGetParameterResourceSize(CGparameter); CG_API CGtype CGENTRY cgGetParameterResourceType(CGparameter); +CG_API const char* CGENTRY cgGetParameterResourceName(CGparameter param); CG_API int CGENTRY cgGetParameterBufferIndex(CGparameter); CG_API int CGENTRY cgGetParameterBufferOffset(CGparameter); diff --git a/Externals/Cg/cg.lib b/Externals/Cg/cg.lib index 9639c4535a..926fac6152 100644 Binary files a/Externals/Cg/cg.lib and b/Externals/Cg/cg.lib differ diff --git a/Externals/Cg/cgGL.dll b/Externals/Cg/cgGL.dll index 89a9efe249..7241b0bc9e 100644 Binary files a/Externals/Cg/cgGL.dll and b/Externals/Cg/cgGL.dll differ diff --git a/Externals/Cg/cgGL.h b/Externals/Cg/cgGL.h index 8d7d78b13f..f7ab7d0883 100644 --- a/Externals/Cg/cgGL.h +++ b/Externals/Cg/cgGL.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * @@ -71,13 +71,15 @@ /* Set up for either Win32 import/export/lib. */ #ifndef CGGL_API -# ifdef _WIN32 -# ifdef CGGL_EXPORTS +# ifdef CGGL_EXPORTS +# ifdef _WIN32 # define CGGL_API __declspec(dllexport) -# elif defined (CG_LIB) -# define CGGL_API +# elif defined(__GNUC__) && __GNUC__>=4 +# define CGGL_API __attribute__ ((visibility("default"))) +# elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) +# define CGGL_API __global # else -# define CGGL_API __declspec(dllimport) +# define CGGL_API # endif # else # define CGGL_API @@ -144,6 +146,7 @@ CGGL_API void CGGLENTRY cgGLSetOptimalOptions(CGprofile profile); *****************************************************************************/ CGGL_API void CGGLENTRY cgGLLoadProgram(CGprogram program); +CGGL_API void CGGLENTRY cgGLUnloadProgram(CGprogram program); CGGL_API CGbool CGGLENTRY cgGLIsProgramLoaded(CGprogram program); CGGL_API void CGGLENTRY cgGLBindProgram(CGprogram program); CGGL_API void CGGLENTRY cgGLUnbindProgram(CGprofile profile); diff --git a/Externals/Cg/cgGL.lib b/Externals/Cg/cgGL.lib index 013c427c6d..c979b612dd 100644 Binary files a/Externals/Cg/cgGL.lib and b/Externals/Cg/cgGL.lib differ diff --git a/Externals/Cg/cgGL_profiles.h b/Externals/Cg/cgGL_profiles.h index 3a1aa9d615..c5302f1781 100644 --- a/Externals/Cg/cgGL_profiles.h +++ b/Externals/Cg/cgGL_profiles.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * diff --git a/Externals/Cg/cg_bindlocations.h b/Externals/Cg/cg_bindlocations.h index 96ae8e24b5..7c6219bc97 100644 --- a/Externals/Cg/cg_bindlocations.h +++ b/Externals/Cg/cg_bindlocations.h @@ -2,7 +2,7 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * diff --git a/Externals/Cg/cg_datatypes.h b/Externals/Cg/cg_datatypes.h index c26eced597..76bf9f9cfc 100644 --- a/Externals/Cg/cg_datatypes.h +++ b/Externals/Cg/cg_datatypes.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * @@ -67,6 +67,10 @@ * */ +/* + * ADD NEW DATA TYPES TO THE END OF THIS MACRO LIST! + * + */ CG_DATATYPE_MACRO(Half,half,CG_HALF,CG_HALF,0,1,CG_PARAMETERCLASS_SCALAR) @@ -188,4 +192,5 @@ CG_DATATYPE_MACRO(SamplerCUBEARRAY,samplerCUBEARRAY,CG_SAMPLERCUBEARRAY,CG_SAMPL CG_DATATYPE_MACRO(VertexShader, vertexshader, CG_VERTEXSHADER_TYPE, CG_VERTEXSHADER_TYPE, 0, 0, CG_PARAMETERCLASS_OBJECT) CG_DATATYPE_MACRO(PixelShader, pixelshader, CG_PIXELSHADER_TYPE, CG_PIXELSHADER_TYPE, 0, 0, CG_PARAMETERCLASS_OBJECT) CG_DATATYPE_MACRO(Sampler, sampler, CG_SAMPLER, CG_SAMPLER, 0, 0, CG_PARAMETERCLASS_SAMPLER) +CG_DATATYPE_MACRO(SamplerBUF,samplerBUF,CG_SAMPLERBUF,CG_SAMPLERBUF,0,0,CG_PARAMETERCLASS_SAMPLER) #undef CG_DATATYPE_MACRO diff --git a/Externals/Cg/cg_enums.h b/Externals/Cg/cg_enums.h index 9585f9d73d..c2654b6b7b 100644 --- a/Externals/Cg/cg_enums.h +++ b/Externals/Cg/cg_enums.h @@ -1,7 +1,7 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * diff --git a/Externals/Cg/cg_errors.h b/Externals/Cg/cg_errors.h index 8f5fe67ef6..df17864fce 100644 --- a/Externals/Cg/cg_errors.h +++ b/Externals/Cg/cg_errors.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * diff --git a/Externals/Cg/cg_profiles.h b/Externals/Cg/cg_profiles.h index bdf41fe260..e29d9d21d3 100644 --- a/Externals/Cg/cg_profiles.h +++ b/Externals/Cg/cg_profiles.h @@ -1,6 +1,6 @@ /* * - * Copyright (c) 2002-2007, NVIDIA Corporation. + * Copyright (c) 2002-2009, NVIDIA Corporation. * * * @@ -89,6 +89,9 @@ CG_PROFILE_MACRO(DX9Pixel2sw,ps_2_sw,PS_2_SW,"ps_2_sw",6164,0) CG_PROFILE_MACRO(DX9Pixel30,ps_3_0,PS_3_0,"ps_3_0",6165,0) CG_PROFILE_MACRO(DX9PixelHLSL,hlslf,HLSLF,"hlslf",6166,0) +CG_PROFILE_MACRO(DX10Vertex40,vs_4_0,VS_4_0,"vs_4_0",6167,1) +CG_PROFILE_MACRO(DX10Pixel40,ps_4_0,PS_4_0,"ps_4_0",6168,0) + CG_PROFILE_MACRO(Generic, generic, GENERIC, "generic", 7002,0) #undef CG_PROFILE_MACRO diff --git a/Externals/Cg64/cg.dll b/Externals/Cg64/cg.dll index b7093a468a..abed1c1797 100644 Binary files a/Externals/Cg64/cg.dll and b/Externals/Cg64/cg.dll differ diff --git a/Externals/Cg64/cg.lib b/Externals/Cg64/cg.lib index f9022d7b37..74bb44070d 100644 Binary files a/Externals/Cg64/cg.lib and b/Externals/Cg64/cg.lib differ diff --git a/Externals/Cg64/cgGL.dll b/Externals/Cg64/cgGL.dll index 8889677d9c..116227fe48 100644 Binary files a/Externals/Cg64/cgGL.dll and b/Externals/Cg64/cgGL.dll differ diff --git a/Externals/Cg64/cgGL.lib b/Externals/Cg64/cgGL.lib index 97338019b2..a72185c187 100644 Binary files a/Externals/Cg64/cgGL.lib and b/Externals/Cg64/cgGL.lib differ