Jump to content

  • Log In with Google      Sign In   
  • Create Account

Lesson 44


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
No replies to this topic

#1 Geometrian   Crossbones+   -  Reputation: 1601

Like
0Likes
Like

Posted 24 June 2009 - 03:10 PM

Hi, Lesson 44 is the lens flare tutorial. Apparently, it has occlusion testing. If the situation is right, it can be done vastly more efficiently. In Python:
model = glGetDoublev(GL_MODELVIEW_MATRIX)
proj = glGetDoublev(GL_PROJECTION_MATRIX)
view = glGetIntegerv(GL_VIEWPORT)
winx,winy,winz = gluProject(lightpos[0],lightpos[1],lightpos[2],model,proj,view)
winz = glReadPixels(winx,winy,1,1,GL_DEPTH_COMPONENT,GL_FLOAT)
pos = gluUnProject(winx,winy,winz,model,proj,view)
#if pos and lightpos are basically the same and 0<winx<view[2] and
#0<winy<view[3], then the light is visible; draw the flare.
I used this technique to produce: The planet can occlude the sun's flare. It does so perfectly. Hope this helps, Geometrian

Sponsor:



Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS