]> git.tdb.fi Git - libs/gl.git/blob - source/arb_vertex_program.cpp
Write correct specularity parameters for materials
[libs/gl.git] / source / arb_vertex_program.cpp
1 #include "extension.h"
2 #include "arb_vertex_program.h"
3
4 namespace Msp {
5 namespace GL {
6
7 PFNGLVERTEXATTRIB1DARBPROC glVertexAttrib1dARB = 0;
8 PFNGLVERTEXATTRIB1DVARBPROC glVertexAttrib1dvARB = 0;
9 PFNGLVERTEXATTRIB1FARBPROC glVertexAttrib1fARB = 0;
10 PFNGLVERTEXATTRIB1FVARBPROC glVertexAttrib1fvARB = 0;
11 PFNGLVERTEXATTRIB1SARBPROC glVertexAttrib1sARB = 0;
12 PFNGLVERTEXATTRIB1SVARBPROC glVertexAttrib1svARB = 0;
13 PFNGLVERTEXATTRIB2DARBPROC glVertexAttrib2dARB = 0;
14 PFNGLVERTEXATTRIB2DVARBPROC glVertexAttrib2dvARB = 0;
15 PFNGLVERTEXATTRIB2FARBPROC glVertexAttrib2fARB = 0;
16 PFNGLVERTEXATTRIB2FVARBPROC glVertexAttrib2fvARB = 0;
17 PFNGLVERTEXATTRIB2SARBPROC glVertexAttrib2sARB = 0;
18 PFNGLVERTEXATTRIB2SVARBPROC glVertexAttrib2svARB = 0;
19 PFNGLVERTEXATTRIB3DARBPROC glVertexAttrib3dARB = 0;
20 PFNGLVERTEXATTRIB3DVARBPROC glVertexAttrib3dvARB = 0;
21 PFNGLVERTEXATTRIB3FARBPROC glVertexAttrib3fARB = 0;
22 PFNGLVERTEXATTRIB3FVARBPROC glVertexAttrib3fvARB = 0;
23 PFNGLVERTEXATTRIB3SARBPROC glVertexAttrib3sARB = 0;
24 PFNGLVERTEXATTRIB3SVARBPROC glVertexAttrib3svARB = 0;
25 PFNGLVERTEXATTRIB4NBVARBPROC glVertexAttrib4NbvARB = 0;
26 PFNGLVERTEXATTRIB4NIVARBPROC glVertexAttrib4NivARB = 0;
27 PFNGLVERTEXATTRIB4NSVARBPROC glVertexAttrib4NsvARB = 0;
28 PFNGLVERTEXATTRIB4NUBARBPROC glVertexAttrib4NubARB = 0;
29 PFNGLVERTEXATTRIB4NUBVARBPROC glVertexAttrib4NubvARB = 0;
30 PFNGLVERTEXATTRIB4NUIVARBPROC glVertexAttrib4NuivARB = 0;
31 PFNGLVERTEXATTRIB4NUSVARBPROC glVertexAttrib4NusvARB = 0;
32 PFNGLVERTEXATTRIB4BVARBPROC glVertexAttrib4bvARB = 0;
33 PFNGLVERTEXATTRIB4DARBPROC glVertexAttrib4dARB = 0;
34 PFNGLVERTEXATTRIB4DVARBPROC glVertexAttrib4dvARB = 0;
35 PFNGLVERTEXATTRIB4FARBPROC glVertexAttrib4fARB = 0;
36 PFNGLVERTEXATTRIB4FVARBPROC glVertexAttrib4fvARB = 0;
37 PFNGLVERTEXATTRIB4IVARBPROC glVertexAttrib4ivARB = 0;
38 PFNGLVERTEXATTRIB4SARBPROC glVertexAttrib4sARB = 0;
39 PFNGLVERTEXATTRIB4SVARBPROC glVertexAttrib4svARB = 0;
40 PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB = 0;
41 PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB = 0;
42 PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB = 0;
43 PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB = 0;
44 PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB = 0;
45 PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB = 0;
46 PFNGLPROGRAMSTRINGARBPROC glProgramStringARB = 0;
47 PFNGLBINDPROGRAMARBPROC glBindProgramARB = 0;
48 PFNGLDELETEPROGRAMSARBPROC glDeleteProgramsARB = 0;
49 PFNGLGENPROGRAMSARBPROC glGenProgramsARB = 0;
50 PFNGLPROGRAMENVPARAMETER4DARBPROC glProgramEnvParameter4dARB = 0;
51 PFNGLPROGRAMENVPARAMETER4DVARBPROC glProgramEnvParameter4dvARB = 0;
52 PFNGLPROGRAMENVPARAMETER4FARBPROC glProgramEnvParameter4fARB = 0;
53 PFNGLPROGRAMENVPARAMETER4FVARBPROC glProgramEnvParameter4fvARB = 0;
54 PFNGLPROGRAMLOCALPARAMETER4DARBPROC glProgramLocalParameter4dARB = 0;
55 PFNGLPROGRAMLOCALPARAMETER4DVARBPROC glProgramLocalParameter4dvARB = 0;
56 PFNGLPROGRAMLOCALPARAMETER4FARBPROC glProgramLocalParameter4fARB = 0;
57 PFNGLPROGRAMLOCALPARAMETER4FVARBPROC glProgramLocalParameter4fvARB = 0;
58 PFNGLGETPROGRAMENVPARAMETERDVARBPROC glGetProgramEnvParameterdvARB = 0;
59 PFNGLGETPROGRAMENVPARAMETERFVARBPROC glGetProgramEnvParameterfvARB = 0;
60 PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC glGetProgramLocalParameterdvARB = 0;
61 PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC glGetProgramLocalParameterfvARB = 0;
62 PFNGLGETPROGRAMIVARBPROC glGetProgramivARB = 0;
63 PFNGLGETPROGRAMSTRINGARBPROC glGetProgramStringARB = 0;
64 PFNGLGETVERTEXATTRIBDVARBPROC glGetVertexAttribdvARB = 0;
65 PFNGLGETVERTEXATTRIBFVARBPROC glGetVertexAttribfvARB = 0;
66 PFNGLGETVERTEXATTRIBIVARBPROC glGetVertexAttribivARB = 0;
67 PFNGLGETVERTEXATTRIBPOINTERVARBPROC glGetVertexAttribPointervARB = 0;
68 PFNGLISPROGRAMARBPROC glIsProgramARB = 0;
69
70 void init_arb_vertex_program()
71 {
72         glVertexAttrib1dARB = reinterpret_cast<PFNGLVERTEXATTRIB1DARBPROC>(get_proc_address("glVertexAttrib1dARB"));
73         glVertexAttrib1dvARB = reinterpret_cast<PFNGLVERTEXATTRIB1DVARBPROC>(get_proc_address("glVertexAttrib1dvARB"));
74         glVertexAttrib1fARB = reinterpret_cast<PFNGLVERTEXATTRIB1FARBPROC>(get_proc_address("glVertexAttrib1fARB"));
75         glVertexAttrib1fvARB = reinterpret_cast<PFNGLVERTEXATTRIB1FVARBPROC>(get_proc_address("glVertexAttrib1fvARB"));
76         glVertexAttrib1sARB = reinterpret_cast<PFNGLVERTEXATTRIB1SARBPROC>(get_proc_address("glVertexAttrib1sARB"));
77         glVertexAttrib1svARB = reinterpret_cast<PFNGLVERTEXATTRIB1SVARBPROC>(get_proc_address("glVertexAttrib1svARB"));
78         glVertexAttrib2dARB = reinterpret_cast<PFNGLVERTEXATTRIB2DARBPROC>(get_proc_address("glVertexAttrib2dARB"));
79         glVertexAttrib2dvARB = reinterpret_cast<PFNGLVERTEXATTRIB2DVARBPROC>(get_proc_address("glVertexAttrib2dvARB"));
80         glVertexAttrib2fARB = reinterpret_cast<PFNGLVERTEXATTRIB2FARBPROC>(get_proc_address("glVertexAttrib2fARB"));
81         glVertexAttrib2fvARB = reinterpret_cast<PFNGLVERTEXATTRIB2FVARBPROC>(get_proc_address("glVertexAttrib2fvARB"));
82         glVertexAttrib2sARB = reinterpret_cast<PFNGLVERTEXATTRIB2SARBPROC>(get_proc_address("glVertexAttrib2sARB"));
83         glVertexAttrib2svARB = reinterpret_cast<PFNGLVERTEXATTRIB2SVARBPROC>(get_proc_address("glVertexAttrib2svARB"));
84         glVertexAttrib3dARB = reinterpret_cast<PFNGLVERTEXATTRIB3DARBPROC>(get_proc_address("glVertexAttrib3dARB"));
85         glVertexAttrib3dvARB = reinterpret_cast<PFNGLVERTEXATTRIB3DVARBPROC>(get_proc_address("glVertexAttrib3dvARB"));
86         glVertexAttrib3fARB = reinterpret_cast<PFNGLVERTEXATTRIB3FARBPROC>(get_proc_address("glVertexAttrib3fARB"));
87         glVertexAttrib3fvARB = reinterpret_cast<PFNGLVERTEXATTRIB3FVARBPROC>(get_proc_address("glVertexAttrib3fvARB"));
88         glVertexAttrib3sARB = reinterpret_cast<PFNGLVERTEXATTRIB3SARBPROC>(get_proc_address("glVertexAttrib3sARB"));
89         glVertexAttrib3svARB = reinterpret_cast<PFNGLVERTEXATTRIB3SVARBPROC>(get_proc_address("glVertexAttrib3svARB"));
90         glVertexAttrib4NbvARB = reinterpret_cast<PFNGLVERTEXATTRIB4NBVARBPROC>(get_proc_address("glVertexAttrib4NbvARB"));
91         glVertexAttrib4NivARB = reinterpret_cast<PFNGLVERTEXATTRIB4NIVARBPROC>(get_proc_address("glVertexAttrib4NivARB"));
92         glVertexAttrib4NsvARB = reinterpret_cast<PFNGLVERTEXATTRIB4NSVARBPROC>(get_proc_address("glVertexAttrib4NsvARB"));
93         glVertexAttrib4NubARB = reinterpret_cast<PFNGLVERTEXATTRIB4NUBARBPROC>(get_proc_address("glVertexAttrib4NubARB"));
94         glVertexAttrib4NubvARB = reinterpret_cast<PFNGLVERTEXATTRIB4NUBVARBPROC>(get_proc_address("glVertexAttrib4NubvARB"));
95         glVertexAttrib4NuivARB = reinterpret_cast<PFNGLVERTEXATTRIB4NUIVARBPROC>(get_proc_address("glVertexAttrib4NuivARB"));
96         glVertexAttrib4NusvARB = reinterpret_cast<PFNGLVERTEXATTRIB4NUSVARBPROC>(get_proc_address("glVertexAttrib4NusvARB"));
97         glVertexAttrib4bvARB = reinterpret_cast<PFNGLVERTEXATTRIB4BVARBPROC>(get_proc_address("glVertexAttrib4bvARB"));
98         glVertexAttrib4dARB = reinterpret_cast<PFNGLVERTEXATTRIB4DARBPROC>(get_proc_address("glVertexAttrib4dARB"));
99         glVertexAttrib4dvARB = reinterpret_cast<PFNGLVERTEXATTRIB4DVARBPROC>(get_proc_address("glVertexAttrib4dvARB"));
100         glVertexAttrib4fARB = reinterpret_cast<PFNGLVERTEXATTRIB4FARBPROC>(get_proc_address("glVertexAttrib4fARB"));
101         glVertexAttrib4fvARB = reinterpret_cast<PFNGLVERTEXATTRIB4FVARBPROC>(get_proc_address("glVertexAttrib4fvARB"));
102         glVertexAttrib4ivARB = reinterpret_cast<PFNGLVERTEXATTRIB4IVARBPROC>(get_proc_address("glVertexAttrib4ivARB"));
103         glVertexAttrib4sARB = reinterpret_cast<PFNGLVERTEXATTRIB4SARBPROC>(get_proc_address("glVertexAttrib4sARB"));
104         glVertexAttrib4svARB = reinterpret_cast<PFNGLVERTEXATTRIB4SVARBPROC>(get_proc_address("glVertexAttrib4svARB"));
105         glVertexAttrib4ubvARB = reinterpret_cast<PFNGLVERTEXATTRIB4UBVARBPROC>(get_proc_address("glVertexAttrib4ubvARB"));
106         glVertexAttrib4uivARB = reinterpret_cast<PFNGLVERTEXATTRIB4UIVARBPROC>(get_proc_address("glVertexAttrib4uivARB"));
107         glVertexAttrib4usvARB = reinterpret_cast<PFNGLVERTEXATTRIB4USVARBPROC>(get_proc_address("glVertexAttrib4usvARB"));
108         glVertexAttribPointerARB = reinterpret_cast<PFNGLVERTEXATTRIBPOINTERARBPROC>(get_proc_address("glVertexAttribPointerARB"));
109         glEnableVertexAttribArrayARB = reinterpret_cast<PFNGLENABLEVERTEXATTRIBARRAYARBPROC>(get_proc_address("glEnableVertexAttribArrayARB"));
110         glDisableVertexAttribArrayARB = reinterpret_cast<PFNGLDISABLEVERTEXATTRIBARRAYARBPROC>(get_proc_address("glDisableVertexAttribArrayARB"));
111         glProgramStringARB = reinterpret_cast<PFNGLPROGRAMSTRINGARBPROC>(get_proc_address("glProgramStringARB"));
112         glBindProgramARB = reinterpret_cast<PFNGLBINDPROGRAMARBPROC>(get_proc_address("glBindProgramARB"));
113         glDeleteProgramsARB = reinterpret_cast<PFNGLDELETEPROGRAMSARBPROC>(get_proc_address("glDeleteProgramsARB"));
114         glGenProgramsARB = reinterpret_cast<PFNGLGENPROGRAMSARBPROC>(get_proc_address("glGenProgramsARB"));
115         glProgramEnvParameter4dARB = reinterpret_cast<PFNGLPROGRAMENVPARAMETER4DARBPROC>(get_proc_address("glProgramEnvParameter4dARB"));
116         glProgramEnvParameter4dvARB = reinterpret_cast<PFNGLPROGRAMENVPARAMETER4DVARBPROC>(get_proc_address("glProgramEnvParameter4dvARB"));
117         glProgramEnvParameter4fARB = reinterpret_cast<PFNGLPROGRAMENVPARAMETER4FARBPROC>(get_proc_address("glProgramEnvParameter4fARB"));
118         glProgramEnvParameter4fvARB = reinterpret_cast<PFNGLPROGRAMENVPARAMETER4FVARBPROC>(get_proc_address("glProgramEnvParameter4fvARB"));
119         glProgramLocalParameter4dARB = reinterpret_cast<PFNGLPROGRAMLOCALPARAMETER4DARBPROC>(get_proc_address("glProgramLocalParameter4dARB"));
120         glProgramLocalParameter4dvARB = reinterpret_cast<PFNGLPROGRAMLOCALPARAMETER4DVARBPROC>(get_proc_address("glProgramLocalParameter4dvARB"));
121         glProgramLocalParameter4fARB = reinterpret_cast<PFNGLPROGRAMLOCALPARAMETER4FARBPROC>(get_proc_address("glProgramLocalParameter4fARB"));
122         glProgramLocalParameter4fvARB = reinterpret_cast<PFNGLPROGRAMLOCALPARAMETER4FVARBPROC>(get_proc_address("glProgramLocalParameter4fvARB"));
123         glGetProgramEnvParameterdvARB = reinterpret_cast<PFNGLGETPROGRAMENVPARAMETERDVARBPROC>(get_proc_address("glGetProgramEnvParameterdvARB"));
124         glGetProgramEnvParameterfvARB = reinterpret_cast<PFNGLGETPROGRAMENVPARAMETERFVARBPROC>(get_proc_address("glGetProgramEnvParameterfvARB"));
125         glGetProgramLocalParameterdvARB = reinterpret_cast<PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC>(get_proc_address("glGetProgramLocalParameterdvARB"));
126         glGetProgramLocalParameterfvARB = reinterpret_cast<PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC>(get_proc_address("glGetProgramLocalParameterfvARB"));
127         glGetProgramivARB = reinterpret_cast<PFNGLGETPROGRAMIVARBPROC>(get_proc_address("glGetProgramivARB"));
128         glGetProgramStringARB = reinterpret_cast<PFNGLGETPROGRAMSTRINGARBPROC>(get_proc_address("glGetProgramStringARB"));
129         glGetVertexAttribdvARB = reinterpret_cast<PFNGLGETVERTEXATTRIBDVARBPROC>(get_proc_address("glGetVertexAttribdvARB"));
130         glGetVertexAttribfvARB = reinterpret_cast<PFNGLGETVERTEXATTRIBFVARBPROC>(get_proc_address("glGetVertexAttribfvARB"));
131         glGetVertexAttribivARB = reinterpret_cast<PFNGLGETVERTEXATTRIBIVARBPROC>(get_proc_address("glGetVertexAttribivARB"));
132         glGetVertexAttribPointervARB = reinterpret_cast<PFNGLGETVERTEXATTRIBPOINTERVARBPROC>(get_proc_address("glGetVertexAttribPointervARB"));
133         glIsProgramARB = reinterpret_cast<PFNGLISPROGRAMARBPROC>(get_proc_address("glIsProgramARB"));
134 }
135
136 } // namespace GL
137 } // namespace Msp