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

Comparing libgender/shader.C (file contents):
Revision 1.14 by root, Sun Oct 24 17:10:04 2004 UTC vs.
Revision 1.15 by root, Sun Oct 24 20:01:08 2004 UTC

239 239
240 program_object::program_object () 240 program_object::program_object ()
241 { 241 {
242 id = glCreateProgramObjectARB (); 242 id = glCreateProgramObjectARB ();
243 assert (id); 243 assert (id);
244 }
245 244
246 program_object::~program_object ()
247 {
248 glDeleteProgramsARB (1, &id);
249 }
250
251 void program_object::link ()
252 {
253 glAttachObjectARB (id, vsh->id); 245 glAttachObjectARB (id, vsh->id);
254 glAttachObjectARB (id, fsh->id); 246 glAttachObjectARB (id, fsh->id);
247 }
248
249 program_object::~program_object ()
250 {
251 glDeleteProgramsARB (1, &id);
252 }
253
254 void program_object::link ()
255 {
255 glLinkProgramARB (id); 256 glLinkProgramARB (id);
256 257
257 GLint linked; 258 GLint linked;
258 glGetObjectParameterivARB (id, GL_OBJECT_LINK_STATUS_ARB, &linked); 259 glGetObjectParameterivARB (id, GL_OBJECT_LINK_STATUS_ARB, &linked);
259 260
356 357
357 lightpos = vec4 (0, 10, 0, 1); 358 lightpos = vec4 (0, 10, 0, 1);
358 wpos = xyz (gl.model_view_matrix * vin.vertex); 359 wpos = xyz (gl.model_view_matrix * vin.vertex);
359 vout.position = gl.model_view_matrix_inverse_transpose * vin.vertex; 360 vout.position = gl.model_view_matrix_inverse_transpose * vin.vertex;
360 vout.tex_coord[0] = vin.tex_coord[0]; 361 vout.tex_coord[0] = vin.tex_coord[0];
361 vout.tex_coord[1] = normalize (lightpos - wpos); 362 vout.tex_coord[1] = normalize (xyz (lightpos) - wpos);
362 vout.tex_coord[2] = normalize (wpos); 363 vout.tex_coord[2] = normalize (xyzx (wpos));
363 //vout.tex_coord[3] = normalize (xyz (gl.model_view_matrix_inverse_transpose) * vin.normal); 364 //vout.tex_coord[3] = normalize (xyz (gl.model_view_matrix_inverse_transpose) * vin.normal);
364 //vout.tex_coord[4] = normalize (xyz (gl.projection_matrix_inverse_transpose) - wpos); 365 //vout.tex_coord[4] = normalize (xyz (gl.projection_matrix_inverse_transpose) - wpos);
365 366
366 vsh->end (); 367 vsh->end ();
367 vsh->compile (); 368 vsh->compile ();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines