In view cone snippet: Difference between revisions
Jump to navigation
Jump to search
(Added Degrees conversion method) |
No edit summary |
||
Line 5: | Line 5: | ||
{ | { | ||
Vector los = ( vecSpot - GetAbsOrigin() ); | Vector los = ( vecSpot - GetAbsOrigin() ); | ||
los.z = 0; | //los.z = 0; //not needed. | ||
VectorNormalize( los ); | VectorNormalize( los ); | ||
Vector facingDir; | Vector facingDir; |
Revision as of 18:43, 12 October 2009
Snippet
bool CMyEnt::InViewCone( const Vector &vecSpot, float flTolerance ) { Vector los = ( vecSpot - GetAbsOrigin() ); //los.z = 0; //not needed. VectorNormalize( los ); Vector facingDir; AngleVectors( GetAbsAngles(), &facingDir ); float flDot = DotProduct( los, facingDir ); if ( flDot > flTolerance ) return true; return false; }
Extra
To pass in an angle of degrees, you must convert it.
//90 Degrees flTolerance = cos( 90 ); bool bInCone = InViewCone( vOrigin, flTolerance );