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 17: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 );