Garry's Mod Wiki



Vector, Angle Entity:GetBonePosition( number boneIndex )


Returns the position and angle of the given attachment, relative to the world.

This function can return entity's GetPos() instead if the entity doesn't have it's bone cache set up.

To ensure the bone position is correct use this:

local pos = ent:GetBonePosition(0) if pos == ent:GetPos() then pos = ent:GetBoneMatrix(0):GetTranslation() end
This function returns the bone position from the last tick, so if your framerate is higher than the server's tickrate it may appear to lag behind if used on a fast moving entity. You can fix this by using the bone's matrix instead:

local matrix = entity:GetBoneMatrix(0) local pos = matrix:GetTranslation() local ang = matrix:GetAngles()
This can return the server's position during server lag.

Issue Tracker: 884
This can return garbage serverside or Vector(0,0,0) for v49 models.

Issue Tracker: 3285
This can return garbage if a trace passed through the target bone during bone matrix access.

Issue Tracker: 3739


1 number boneIndex
The bone index of the bone to get the position of, starting at index 0. See Entity:LookupBone.


1 Vector
The bone's position relative to the world. It can return nothing if the requested bone is out of bounds, or the entity has no model.
2 Angle
The bone's angle relative to the world.

Special Pages



Render Time: 29ms

DB GetPage 6
Generate Html 5
SaveChanges (1) 9
Render Body 0
Render Sidebar 6