GetAbsOrigin(): Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
No edit summary
Line 1: Line 1:
'''<code>GetAbsOrigin()</code>''' returns the world co-ordinates of the [[origin]] of any [[point]] or [[model]] entity as a [[vector]]. This is ''theoretically'' the centre of the object, but for NPCs (to choose a prominent example) will be a point exactly half way between the soles of their feet when in the [[reference posture]], or wherever else the modeller has placed it.
'''<code>GetAbsOrigin()</code>''' returns the world co-ordinates of the [[origin]] of any [[point]] or [[model]] entity as a [[vector]]. This is ''theoretically'' the centre of the object, but for NPCs (to choose a prominent example) it will be a point exactly half way between the soles of their feet when in the [[reference posture]], or wherever else the modeller has placed it.


== Alternatives ==
== Alternatives ==


You may want to use a different method of finding an entity's location, particularly given the fact that <code>GetAbsOrigin()</code> will not work with [[brush]]es unless they are tied to an [[entity]] that creates one for them - which may well not mark the location of the object in any useful way!
You may want to use a different method of finding an entity's location, particularly given the fact that <code>GetAbsOrigin()</code> will not work with [[brush]]es unless they are tied to an [[entity]] that creates one for them - which may well not mark the location of the object in any useful way!
{{note|These alternatives are all significantly slower than <code>GetAbsOrigin()</code>.}}


{{todo|How many of these OBB functions work with vphysics?}}
{{todo|How many of these OBB functions work with vphysics?}}

Revision as of 14:38, 2 June 2008

GetAbsOrigin() returns the world co-ordinates of the origin of any point or model entity as a vector. This is theoretically the centre of the object, but for NPCs (to choose a prominent example) it will be a point exactly half way between the soles of their feet when in the reference posture, or wherever else the modeller has placed it.

Alternatives

You may want to use a different method of finding an entity's location, particularly given the fact that GetAbsOrigin() will not work with brushes unless they are tied to an entity that creates one for them - which may well not mark the location of the object in any useful way!

Note.pngNote:These alternatives are all significantly slower than GetAbsOrigin().
Todo: How many of these OBB functions work with vphysics?
WorldSpaceCenter()
Returns the centre of an entity's object-aligned bounding box as a vector.
CollisionProp()->CalcNearestPoint( const Vector &vecWorldPt, Vector *pVecNearestWorldPt )
Calculates the nearest point to vecWorldPt of an entity's object-aligned bounding box.
Note.pngNote:Instead of returning a value, this function will modify whatever variable is passed for pVecNearestWorldPt.
Todo: More...