Sign in to follow this  
cjopengler

About Nehe Lesson30 qeustion

Recommended Posts

In idle() function, if (TestIntersionPlane(pl1,OldPos[i],uveloc,rt,norm)) { //Find intersection time rt4=rt*RestTime/rt2; //if smaller than the one already stored replace and in timestep if (rt4<=lamda) { if (rt4<=RestTime+ZERO) if (!((rt<=ZERO)&&(uveloc.dot(norm)>ZERO)) ) { normal=norm; point=OldPos[i]+uveloc*rt; lamda=rt4; BallNr=i; } } } In the code segement, "!((rt<=ZERO)&&(uveloc.dot(norm)>ZERO" I don't understand. In my opinion, uveloc.dot(norm)>ZERO condition is not neccessary for rt must be > 0 if TestIntersionPlane return ture. I don't understand why (uveloc.dot(norm)>ZERO is used?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this