Viewmodel: Difference between revisions
Jump to navigation
Jump to search
Tip:By default, Viewmodels are drawn with a 54° field of view. This is considerably lower than the world view's default of 75°.
TomEdwards (talk | contribs) mNo edit summary |
TomEdwards (talk | contribs) No edit summary |
||
Line 8: | Line 8: | ||
# The model as a whole is distorted to look its best from the one viewing angle | # The model as a whole is distorted to look its best from the one viewing angle | ||
Although the viewmodel entity does exist on the server it is only | Although the viewmodel entity does exist on the server, it is only properly simulated on the client. It cannot interact with anything except through visual client-side effects (e.g. tracers from the muzzle, VGUI screens). | ||
{{tip|By default, Viewmodels are drawn with a 54° field of view. This is considerably lower than the world view's default of 75°.}} | {{tip|By default, Viewmodels are drawn with a 54° field of view. This is considerably lower than the world view's default of 75°.}} |
Revision as of 12:01, 6 December 2010
A viewmodel is a special model used by the viewmodel entity to represent the player's active weapon in first-person view (as opposed to the ordinary "worldmodel" used elsewhere). Because they appear so prominently on the screen and are only seen from a limited set of angles, viewmodels generally have the following distinguishing features:
- Parts that the player will never see are removed
- Parts that the player does see are very detailed
- The model as a whole is distorted to look its best from the one viewing angle
Although the viewmodel entity does exist on the server, it is only properly simulated on the client. It cannot interact with anything except through visual client-side effects (e.g. tracers from the muzzle, VGUI screens).

Creating a viewmodel
Three golden rules:
- You must attach a sequence to the
ACT_VM_IDLE
activity before the model will appear. - You should use $origin to adjust the location of the model, or it will be drawn in the centre of screen.
- In your modelling package, create a camera at the appropriate position and keep it visible while you work.
Basic activities
ACT_VM_DRAW,
ACT_VM_HOLSTER,
ACT_VM_IDLE,
ACT_VM_FIDGET,
ACT_VM_PULLBACK,
ACT_VM_PULLBACK_HIGH,
ACT_VM_PULLBACK_LOW,
ACT_VM_THROW,
ACT_VM_PULLPIN,
ACT_VM_PRIMARYATTACK, // fire
ACT_VM_SECONDARYATTACK, // alt. fire
ACT_VM_RELOAD,
ACT_VM_DRYFIRE, // fire with no ammo loaded.
ACT_VM_HITLEFT, // bludgeon, swing to left - hit (primary attk)
ACT_VM_HITLEFT2, // bludgeon, swing to left - hit (secondary attk)
ACT_VM_HITRIGHT, // bludgeon, swing to right - hit (primary attk)
ACT_VM_HITRIGHT2, // bludgeon, swing to right - hit (secondary attk)
ACT_VM_HITCENTER, // bludgeon, swing center - hit (primary attk)
ACT_VM_HITCENTER2, // bludgeon, swing center - hit (secondary attk)
ACT_VM_MISSLEFT, // bludgeon, swing to left - miss (primary attk)
ACT_VM_MISSLEFT2, // bludgeon, swing to left - miss (secondary attk)
ACT_VM_MISSRIGHT, // bludgeon, swing to right - miss (primary attk)
ACT_VM_MISSRIGHT2, // bludgeon, swing to right - miss (secondary attk)
ACT_VM_MISSCENTER, // bludgeon, swing center - miss (primary attk)
ACT_VM_MISSCENTER2, // bludgeon, swing center - miss (secondary attk)
ACT_VM_HAULBACK, // bludgeon, haul the weapon back for a hard strike (secondary attk)
ACT_VM_SWINGHARD, // bludgeon, release the hard strike (secondary attk)
ACT_VM_SWINGMISS,
ACT_VM_SWINGHIT,
ACT_VM_IDLE_TO_LOWERED,
ACT_VM_IDLE_LOWERED,
ACT_VM_LOWERED_TO_IDLE,
ACT_VM_RECOIL1,
ACT_VM_RECOIL2,
ACT_VM_RECOIL3,
ACT_VM_PICKUP,
ACT_VM_RELEASE,
ACT_VM_ATTACH_SILENCER,
ACT_VM_DETACH_SILENCER,