Point posecontroller

From Valve Developer Community
Revision as of 18:25, 17 September 2022 by Luke18033 (talk | contribs) (Use the fix/workaround templates, also the rounding/overflow bug needs clarification on what it actually affects, I've never heard of someone having to do this workaround)
Jump to navigation Jump to search

Template:Base point It controls a pose parameter of a prop and cycles the pose clientside.

Note.pngNote:The posecontroller resets the prop's default animations.
Icon-Bug.pngBug:Using an invalid or non-existant Pose Parameter will crash the game.  [todo tested in ?]
C++ In code, it is represented by theCPoseControllerclass, defined in thepoint_posecontroller.cppfile.

Keyvalues

Prop Name ([todo internal name (i)]) <string>
Name of the prop to control.
Icon-Bug.pngBug:This keyvalue does not receive instance fixups, making the entity mostly unusable inside instances.  [todo tested in ?]
Note.pngFix:Change the keyvalue type from string to target_destination in the FGD.
Pose Parameter Name ([todo internal name (i)]) <string>
Name of the pose parameter to control.
Pose Parameter Value ([todo internal name (i)]) <float>
Normalized value for the pose parameter from 0.0 and 1.0 (maps to min and max range).
Icon-Bug.pngBug:Pose Paramater Value suffers from rounding or overflow errors.  [todo tested in ?]
Clarify: What effect does this have?
PlacementTip.pngWorkaround:Apparently, constantly setting a new value using SetPoseValue can be used as a workaround.
Interpolation Time ([todo internal name (i)]) <float>
Number of seconds (0.0 to 10.0) for client to match absolute pose values.
Icon-Bug.pngBug:The value must have a trailing decimal (such as .0), or it will completely break the pose controller.  [todo tested in ?]
Should wrap from 0.0 to 1.0 when interpolating. ([todo internal name (i)]) <boolean>
If set, wrap from 0.0 to 1.0 when interpolating.
Cycle Frequency ([todo internal name (i)]) <float>
Base cycles per second from -10.0 to 10.0.
Frequency Modulation Type ([todo internal name (i)]) <choices>
Control the way the interpolation blends between the poses.
Value Description
0 None
1 Sine
2 Square
3 Triangle
4 Sawtooth
5 Noise
Frequency Modulation Time Offset ([todo internal name (i)]) <float>
Modulation time offset from -1.0f to 1.0.
Frequency Modulation Rate ([todo internal name (i)]) <float>
Modulation cycles per second from -10.0f to 10.0.
Frequency Modulation Amplitude ([todo internal name (i)]) <float>
Modulation extents from 0.0f to 10.0.


Inputs

SetPoseParameterName <stringRedirectInput/string>
Sets the pose parameter to control.
SetPoseValue <floatRedirectInput/float>
Set the pose parameter to a normalized value between 0.0 and 1.0 (maps to min and max range).
SetInterpolationTime <floatRedirectInput/float>
Set the interpolation time to a number of seconds between 0.0 and 10.0.
SetCycleFrequency <floatRedirectInput/float>
Set the pose parameter's base cycles per second from -10.0f to 10.0.
SetFModType <integerRedirectInput/integer>
Set the type of frequency modulation.
SetFModTimeOffset <floatRedirectInput/float>
Set the modulation time offset from -1.0f to 1.0.
SetFModRate <floatRedirectInput/float>
Set the modulation cycles per second from -10.0f to 10.0.
SetFModAmplitude <floatRedirectInput/float>
Set the modulation extents from 0.0f to 10.0.
RandomizeFMod <floatRedirectInput/float>
Randomize the frequency modulation by an extremeness of 0.0 to 1.0.
GetFMod
Outputs the current modulation settings in console. !FGD


Outputs