User Tools

Site Tools


hpl3:game:scripting:user_modules:camera_animation

Link to this comparison view

Next revision
Previous revision
hpl3:game:scripting:user_modules:camera_animation [2015/09/16 11:03]
ian.thomas created
hpl3:game:scripting:user_modules:camera_animation [2015/09/16 12:25] (current)
ian.thomas [Node properties]
Line 1: Line 1:
-PLaceholder+====== Camera Animation ====== 
 + 
 +**Helper function prefix:** CameraAnimation_,​ CameraAnimationNode_ 
 +==== General ==== 
 + 
 +The camera animation system is used to move the player camera along a specific path while still allowing some degree of interaction. 
 + 
 +==== Instructions ==== 
 + 
 +To use the system, place CameraAnimation nodes (Area → CameraAnimation) in the scene and give each of them the name of the animation followed by an underscore and their placement within the animation (such as WakeUpAnimation_1,​ WakeUpAnimation_2 etc). Note that if you duplicate (Ctrl-D) a node, the duplicate will automatically get the next available number as its suffix.\\ 
 +Rotate the nodes so that their Z-axes point in the direction you want the camera to look at that part of the animation. \\ 
 +In script, call the helper function CameraAnimation_Begin() to start the animation. 
 + 
 +==== Node properties ==== 
 + 
 +=== MaxYaw/​MaxPitch === 
 +Dictates how far the player is allowed to rotate the camera away from the target forward rotation. This value is interpolated between nodes. 
 + 
 +=== LookSpeedMultiplier === 
 +How fast the player can rotate the camera. 
 + 
 +=== ForwardTime === 
 +The time it takes to move from this node to the next at full speed forward. 
 + 
 +=== BackwardTime === 
 +The time it takes to move from the next node to this one at full reverse speed. 
 + 
 +=== AutoMovement === 
 +Dictates how the animation behaves when no movement input is given, or when movement input is disabled. 0 stops movement, 1 is as if given full forward speed (animation will finish after [ForwardTime] seconds), -1 is as if given full reverse speed. 
 + 
 +=== LookMoveDistance === 
 +The length between this node and the next the player can move just by looking toward the next node, given as a value between 0 and 1. 
 + 
 +=== LookMoveMaxAngle === 
 +The maximum angle away from the next node the player can look and still move forward. Only valid if LookMoveDistance > 0. 
 + 
 +=== InteractiveMovement === 
 +If checked, the player can control the movement between this node and the next. If unchecked, the AutoMovement property has complete control over the movement and should not be set to 0. 
 + 
 +=== CrouchOnExit === 
 +If checked, the player will automatically crouch if the animation is ended at this node. 
 + 
 +=== InitToCamera === 
 +If checked, the node is given the orientation of the camera when the animation starts. This is very useful when you want the animation to have a smooth beginning, or you want to make sure the player is returned to where they were when the end node is reached. 
 + 
 +=== UsePlayerEyeline === 
 +If ticked, instead of using the Y-value of the node itself, the camera system uses the Y-value that the player'​s eyeline should be at that point (i.e. from the ground/​floor upwards). 
 + 
 +=== CallbackFunc === 
 +Function in the level script that should be called when reaching this node. The syntax is bool FuncName(const tString &in asEntity, int alDirection),​ where asEntity is the name of the node and alDirection is 1 if moving forward and -1 if moving backward. 
 + 
 +==== Important Functions ==== 
 + 
 +=== CameraAnimation_Begin === 
 +Start a camera animation. 
 + 
 +=== CameraAnimation_End === 
 +Stop a camera animation. 
 + 
 +=== CameraAnimationNode_SetAutoMove === 
 +Allows you to pause or continue animation at a particular node. 
 + 
 +=== CameraAnimationNode_SetInteractiveMovement === 
 +Allows you to enable the player to progress within a particular node.
hpl3/game/scripting/user_modules/camera_animation.1442401381.txt.gz · Last modified: 2015/09/16 11:03 by ian.thomas