blackmesa_viewmodel

From Valve Developer Community
Jump to navigation Jump to search
Class hierarchy
CBlackMesaViewModel
CBaseViewModel
CBaseAnimating
CBaseEntity
Icon-NotInFGD.png
This entity is not in the FGD by default.
It should not be put directly in a map because it can only be configured through code.

blackmesa_viewmodel is a model entity available in Black Mesa Black Mesa. This game uses its own classname for viewmodel entity (the mod version still uses the original classname). Unique from other games in the ability to apply blood/slime to the models and bobbing customization via console variables.

Tip.pngTip:You can use SetBodyGroup input to change arms in your singleplayer map. Just add logic_auto that will fire this input via OnLoadGame and OnMapSpawn outputs.
Note.pngNote:Don't use this tip if your are using crossbow, RPG, frag, satchel, tripmine and/or snark in your map. This trick will disable some parts of the models for these weapons after save reload.
Note.pngNote:Console command viewmodel_fov is hided as a developer only console variable, mainly due to CSM lighting layer on viewmodel. You can edit viewmodel fov for each weapon separately by changing their .dmx files.
Icon-Bug.pngBug:The blood/slime splatter overlay is unfinished/broken in current versions of the game. The issues is:
  • Heavy short freeze in the game when applied for the first time (not in Black Mesa (mod)).
  • Frags, satchels, tripmines and snarks doesn't save blood overlay when used (new one in hand saves it) (not in Black Mesa (mod) with exception of snarks).
  • Slime doesn't applies for hands of each weapon model.
  • Slime doesn't applies to the hands if the weapon model was already covered in blood.
  • Blood/slime saves in multiplayer after death.
Icon-Important.pngImportant:Used 2 individual entities. The first appears with player and used for satchel radio. The second appears only if a weapon is picked up by player and used for all the available weapons. The first entity's index value is always smaller than the second one's.

Dedicated Console Variables

Cvar/Command Parameters or default value Descriptor Effect
cl_bobcycle 0.01 Float Speed of viewmodel bobbing.
cl_bobup 1 Float Scale of forward/backward bobbing for viewmodel.
cl_bobside 1 Float Scale of left/right bobbing for viewmodel.
cl_viewmodel_lag 3 Float Scale of the lag when you move player's camera. Minimum value is 0, maximum value is 50.
cl_csm_cascade_viewmodel_ignore 0 Bool Enable/disable self-shadowing of viewmodel from CSM.
Icon-Bug.pngBug:CSM shadows don't apply properly if this is enabled.
cl_csm_viewmodel_shadows 1 Bool Enable/disable CSM on viewmodel.
cl_csm_viewmodel_max_shadow_dist 21 Float The max distance at which CSM will be displayed on viewmodel.
Note.pngNote:Recommended value is 37 and not default 21.
cl_csm_viewmodel_farz 30 Float The max allowed distance at which CSM will be displayed on viewmodel.
Note.pngNote:Recommended value is 37 and not default 30.
cl_csm_viewmodel_max_visible_dist 100 Float It doesn't affect anything.
cl_csm_viewmodel_slopescaledepthbias 1.5 Float CSM slope scale depth bias on viewmodel.
cl_csm_viewmodel_depthbias 0.00005 Float CSM depth bias on viewmodel.
vr_viewmodel_translate_with_head 0 Float Source SDK leftover.
vr_viewmodel_offset_forward -8 Float Source SDK leftover.
vr_viewmodel_offset_forward_large -15 Float Source SDK leftover.
r_drawviewmodel 1 Bool Enable/disable viewmodel draw.
viewmodelfx Integer This is a debug command that was created to test the blood/slime on viewmodel. 0 - red blood, 1 - green blood, 2 - slime, 3 - no blood/slime.
cl_mdldetailfx_enable 1 Bool Enable/disable blood/slime on viewmodel generally.
cl_mdldetailfx_universal_hands 1 Bool Enable/disable blood/slime for right hand (satchel only).
cl_mdldetailfx_enable_hands 1 Bool Enable/disable blood/slime on hands (arms bodygroup).
cl_mdldetailfx_blood_time 60 Float Amount of time before blood (red and green) on viewmodel will disappear.
cl_mdldetailfx_slime_time 10 Float Amount of time before slime on viewmodel will disappear.