rstruct.h

Go to the documentation of this file.
00001 /* file RSTRUCT.H   include file for Renderer external structure */
00002 /*                  pointers to callback functions               */
00003 /* This file is in folder TEXTURES                               */
00004 
00005 
00035 typedef struct X__SHADERtag {
00036  void   (*fp_sNoise)(double x, double y, double z, double *result); 
00037  void   (*fp_sTurbulence)(double x, double y, double z, double *result); 
00038  void   (*fp_Cycloidal)(double value, double *result);  
00039  void   (*fp_vNoise)(vector result, double x, double y, double z); 
00040  void   (*fp_vTurbulence)(vector result, double x, double y, double z); 
00041  short  (*fp_normalize)(vector n);
00042  vector *fp_Wave_Sources;  
00043  void   (*fp_UseSingleShaderProgram)(long id); 
00044  int    (*fp_LoadAndCompileShader)(char *name); 
00045  void   (*fp_UnloadCompiledShader)(GLint id);
00046  void   (*fp_SetUniformInteger)(int id, char *name, GLint val);
00047  void   (*fp_SetUniformVariable)(int id, char *name, GLfloat val);
00048  void   (*fp_SetUniformVector)(int id, char *name, GLfloat a, GLfloat b, GLfloat c);
00049  void   (*fp_SetUniformVector2)(int id, char *name, GLfloat a, GLfloat b);
00050  void   (*fp_SetUniformMatrix3)(int id, char *name, GLfloat m[3][3]);
00051  void   (*fp_SetUniformMatrix4)(int id, char *name, GLfloat m[4][4]);
00052  void   (*fp_SetAttributeInteger)(int id, char *name, GLshort val);
00053  void   (*fp_SetAttributeVariable)(int id, char *name, GLfloat val);
00054  void   (*fp_SetAttributeVector)(int id, char *name, GLfloat a, GLfloat b, GLfloat c);
00055  void   (*fp_SetAttributeVectorID)(int id, int loc, GLfloat a, GLfloat b, GLfloat c);
00056  void   (*fp_BindAttributeVector)(int id, char *name, int loc);
00057  GLint  (*fp_GetAttibuteLocation)(int id, char *name);
00058  void   (*fp_DrawShaderPolygons)(long k, int pass, GLuint progID, GLint attribloc, long Nface, void *MainFp, long Nvert, void *MainVp);
00059  long   *dummyf[16]; 
00060  long   version;     
00061  vector *fp_axis_o, 
00062         *fp_axis_u, 
00063         *fp_axis_v, 
00064         *fp_axis_n; 
00065  vector *fp_axis_unorm,
00066         *fp_axis_vnorm;
00067  double *u_length,   
00068         *v_length;  
00069  double *tr,*itr;     
00070  long   GLshaderID;   
00071  long   fp_matpass;  
00072  long   fp_pass;      
00073  GLuint fp_progID;    
00074  GLint  fp_attrloc;   
00075  long   fp_Nface;   
00076  void   *fp_MainFp; 
00077  long   fp_Nvert;   
00078  void   *fp_MainVp; 
00079  BOOL   fp_FullSat; 
00080  long   *dummyv[21];
00081 } X__SHADER;
00082 
Generated on Tue Jan 28 06:18:32 2014 for OpenFX by  doxygen 1.6.3