00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef RU_GPUFunctions_h
00029 #define RU_GPUFunctions_h
00030
00031 #include "RU_API.h"
00032 #include <PXL/PXL_LumFuncs.h>
00033
00034 class UT_String;
00035 class TIL_TileList;
00036 class RE_OGLComputeGPU;
00037
00038
00039
00040
00041 extern RU_API void RUsetOutput(RE_OGLComputeGPU &engine,
00042 TIL_TileList *tiles,
00043 const char *outname,
00044 UT_String &shader);
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054 extern RU_API void RUgetTextureSampleGPU(const char *texture,
00055 int vsize,
00056 UT_String &code);
00057 extern RU_API void RUgetTextureClamp(UT_String &code);
00058 extern RU_API void RUgetTextureBilinear(const char *texture,
00059 int vsize,
00060 UT_String &code);
00061
00062
00063
00064
00065
00066 extern RU_API void RUgetToHSVConvertGPU(UT_String &code);
00067
00068
00069
00070
00071
00072 extern RU_API void RUgetFromHSVConvertGPU(UT_String &code);
00073
00074
00075
00076
00077
00078
00079 extern RU_API void RUgetDiffuseLambert(UT_String &code);
00080
00081
00082
00083
00084
00085
00086
00087 extern RU_API void RUgetDiffuseOrenNayar(UT_String &code);
00088
00089
00090
00091
00092
00093
00094
00095 extern RU_API void RUgetSpecularPhong(UT_String &code);
00096
00097
00098
00099
00100
00101
00102
00103 extern RU_API void RUgetSpecularBlinn(UT_String &code);
00104
00105
00106
00107 extern RU_API void RUgetDropoffFunc(UT_String &code);
00108
00109 extern RU_API void RUgetSoftDropoff(int function, UT_String &code);
00110
00111
00112
00113
00114 extern RU_API void RUgetLuminanceFunc(UT_String &code);
00115 extern RU_API void RUgetLuminanceFunc(PXL_LumFunction f, UT_String &code);
00116
00117 extern RU_API void RUgetFlatLightFrontend(UT_String &code);
00118 extern RU_API void RUgetBumpLightFrontend(UT_String &code,
00119 const char *bump_name);
00120 extern RU_API void RUget3DLightFrontend(UT_String &code,
00121 const char *point_name,
00122 const char *normal_name);
00123
00124 extern RU_API void RUgetLightingBackend(UT_String &code,
00125 const char *color_name);
00126 extern RU_API void RUgetVolumetricLight(UT_String &code);
00127
00128 extern RU_API void RUgetLightingMain(UT_String &code);
00129
00130 extern RU_API void RUgetTransform(int vsize, const char *texture,
00131 UT_String &code);
00132
00133 extern RU_API void RUgetTransformBlur(int vsize, const char *image,
00134 UT_String &code);
00135 extern RU_API void RUgetTransformDeformBlur(int vsize,
00136 const char *image,
00137 const char *prev,
00138 const char *next,
00139 UT_String &code);
00140
00141 extern RU_API void RUgetFogMain(UT_String &code);
00142 extern RU_API void RUgetFogDistanceZ(const char *depth_name, UT_String &code);
00143 extern RU_API void RUgetFogDistanceP(const char *point_name, UT_String &code);
00144 extern RU_API void RUgetFogDistanceNone(UT_String &code);
00145 extern RU_API void RUgetFogColorConst(UT_String &code);
00146 extern RU_API void RUgetFogColorImage(const char *color_name,UT_String &code);
00147 extern RU_API void RUgetFogDensityConst(UT_String &code);
00148 extern RU_API void RUgetFogDensityImage(const char *alpha_name,UT_String &code);
00149 extern RU_API void RUgetFogConst(UT_String &code);
00150 extern RU_API void RUgetFogNoise(UT_String &code);
00151
00152 extern RU_API void RUgetFogTypeFog(const char *color_name, UT_String &code);
00153 extern RU_API void RUgetFogTypeAdd(const char *color_name, UT_String &code);
00154 extern RU_API void RUgetFogTypeHeat(const char *color_name, UT_String &code);
00155 extern RU_API void RUgetFogTypeHaze(const char *color_name, UT_String &code);
00156
00157 extern RU_API void RUgetZCompositeSimple(int vsize, UT_String &code);
00158 extern RU_API void RUgetZCompositeSuperSample(int vsize, UT_String &code);
00159 extern RU_API void RUgetZCompositeGeo(int vsize, UT_String &code);
00160 extern RU_API void RUgetZCompositeSuperSampleGeo(int vsize, UT_String &code);
00161
00162 extern RU_API void RUgetEnvironmentMain(int vsize, UT_String &code);
00163 extern RU_API void RUgetEnvironmentBump(UT_String &code);
00164 extern RU_API void RUgetEnvironmentNormal(UT_String &code);
00165 extern RU_API void RUgetEnvironmentCubeDeep(UT_String &code);
00166 extern RU_API void RUgetEnvironmentCubeStrip(UT_String &code);
00167 extern RU_API void RUgetEnvironmentCubeCrossHorz(UT_String &code);
00168 extern RU_API void RUgetEnvironmentCubeCrossVert(UT_String &code);
00169 extern RU_API void RUgetEnvironmentLatLong(UT_String &code);
00170
00171 extern RU_API void RUgetKeyMain(int vsize, const char *key, UT_String &code);
00172 extern RU_API void RUgetKeyMainSuperSample(int vsize, UT_String &code);
00173 extern RU_API void RUgetKeyMainSuperSampleSelf(int vsize, UT_String &code);
00174 extern RU_API void RUgetKeyLuma(int vsize, UT_String &code);
00175 extern RU_API void RUgetKeyChroma(int vsize, UT_String &code);
00176
00177 extern RU_API void RUgetNoiseCop(UT_String &code);
00178 extern RU_API void RUgetPerlinNoise(UT_String &code);
00179 extern RU_API void RUgetSparseNoise(UT_String &code);
00180 extern RU_API void RUgetAlligatorNoise(UT_String &code);
00181
00182 extern RU_API void RUgetDeform(const char *pname, int vsize, UT_String &code);
00183 extern RU_API void RUgetDeformMask(const char *pname, int vsize,
00184 UT_String &code);
00185
00186 extern RU_API void RUgetConvolve(int vsize, UT_String &code);
00187
00188 extern RU_API void RUgetExpand(int vsize, UT_String &code);
00189 extern RU_API void RUgetExpandLuma(int vsize, UT_String &code);
00190 extern RU_API void RUgetExpandPerPixel(int vsize, UT_String &code);
00191 extern RU_API void RUgetExpandLumaPerPixel(int vsize, UT_String &code);
00192
00193 extern RU_API void RUgetBlurPerPixel(int vsize, UT_String &code);
00194 #endif