Garry's Mod Wiki


  Entity:SetModelScale( number scale, number deltaTime = 0 )


Scales the model of the entity, if the entity is a Player or an NPC the hitboxes will be scaled as well.

For some entities, calling Entity:Activate after this will scale the collision bounds and PhysObj as well; be wary as there's no optimization being done internally and highly complex collision models might crash the server.

This is the same system used in TF2 for the Mann Vs Machine robots.

To resize the entity along any axis, use Entity:EnableMatrix instead.

Client-side trace detection seems to mess up if deltaTime is set to anything but zero. A very small decimal can be used instead of zero to solve this issue.

If your old scales are wrong, use Entity:SetLegacyTransform as a quick fix.

If you do not want the physics to be affected by Entity:Activate, you can use Entity:ManipulateBoneScale( 0, Vector( scale, scale, scale ) ) instead.
This does not scale procedural bones and disables IK.

Issue Tracker: 3502


1 number scale
A float to scale the model by. 0 will not draw anything. A number less than 0 will draw the model inverted.
2 number deltaTime = 0
Transition time of the scale change, set to 0 to modify the scale right away. To avoid issues with client-side trace detection this must be set, and can be an extremely low number to mimic a value of 0 such as .000001.


From the "Biggify" option of right clicking an npc

ent:SetModelScale( ent:GetModelScale() * 1.25, 1 )