Env shake

From Valve Developer Community
Jump to navigation Jump to search
English (en)中文 (zh)Translate (Translate)

Template:Base point It shakes the screens of players. Objects can be jostled as well.

Note.pngNote:This can greatly hinder the accuracy of shots fired when the shaking is continuous.
Note.pngNote:In code, a comment says that UTIL_ScreenShake does not work on airborne players. This is false.
C++ In code, it is represented by theCEnvShakeclass, defined in theEnvShake.cppfile.

Flags

  • 1: GlobalShake - Ignore radius, EVERYTHING shakes.
  • 4: In Air - Shake players in air.
  • 8: Physics - Shake physics objects, not just the camera.
  • 16: Ropes - Shake ropes. (Works independently from Physics.)
  • 32: DON'T shake view (for shaking ropes or physics only)
  • 64: DON'T Rumble Controller - Do not shake the controller for players using an Xbox controller, etc.

Keyvalues

Amplitude (0-16) (amplitude) ([todo internal name (i)]) <float>
How far away from the normal position the camera will wobble. Should be a range between 0 and 16.
Effect Radius (radius) ([todo internal name (i)]) <float>
The radius around this entity in which to affect players.
Icon-Bug.pngBug:Exiting the radius will not stop the shaking. It continues for the set duration, starting the moment that the player enters the radius.  [todo tested in ?]
Duration (seconds) (duration) ([todo internal name (i)]) <float>
The length of time in which to shake the player's screens.
Frequency (frequency) ([todo internal name (i)]) <float>
How many times per second to change the direction of the camera wobble. 40 is generally enough; values higher are hardly distinguishable.


Inputs

Amplitude <integerRedirectInput/integer>
Sets Amplitude.
Frequency <integerRedirectInput/integer>
Sets Frequency.
StartShake
Start the shake.
StopShake
Stop the shake.


Outputs