ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libgender/shader.C
(Generate patch)

Comparing libgender/shader.C (file contents):
Revision 1.30 by root, Thu Nov 4 03:58:32 2004 UTC vs.
Revision 1.31 by root, Fri Nov 5 19:55:15 2004 UTC

149 149
150 program_object_i::program_object_i () 150 program_object_i::program_object_i ()
151 { 151 {
152 id = glCreateProgramObjectARB (); 152 id = glCreateProgramObjectARB ();
153 assert (id); 153 assert (id);
154
155 glAttachObjectARB (id, vsh->id);
156 glAttachObjectARB (id, fsh->id);
157 } 154 }
158 155
159 program_object_i::~program_object_i () 156 program_object_i::~program_object_i ()
160 { 157 {
161 glDeleteProgramsARB (1, &id); 158 glDeleteProgramsARB (1, &id);
207 if (i != progcache.end ()) 204 if (i != progcache.end ())
208 return i->second; 205 return i->second;
209 206
210 program_object p; 207 program_object p;
211 208
209 if (vsh.size ())
210 {
211 vertex_shader sh;
212 p->attach (sh);
212 p->vsh->compile (vsh); 213 sh->compile (vsh);
214 }
215
216 if (fsh.size ())
217 {
218 fragment_shader sh;
219 p->attach (sh);
213 p->fsh->compile (fsh); 220 sh->compile (fsh);
221 }
222
214 p->link (); 223 p->link ();
215 224
216 progcache.insert (pair<string, program_object> (idx, p)); 225 progcache.insert (pair<string, program_object> (idx, p));
217 226
218 return p; 227 return p;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines