This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
gamedev:deigde:editors:animator [2020/03/30 00:36] – dragonlord | gamedev:deigde:editors:animator [2020/04/05 16:16] – [Controllers] dragonlord | ||
---|---|---|---|
Line 5: | Line 5: | ||
====== IGDE Animator Editor ====== | ====== IGDE Animator Editor ====== | ||
- | The animator editor allows to create | + | The animator editor allows to edit [[gamedev: |
- | * Rig | + | |
- | * Animation | + | |
- | * Controllers | + | |
- | * Links | + | |
- | * Rules | + | |
- | {{ : | + | <WRAP group> |
+ | <WRAP column> | ||
+ | {{: | ||
+ | </ | ||
+ | <WRAP column> | ||
+ | {{youtube> | ||
+ | </ | ||
+ | </ | ||
The editor window composes of the preview area and the properties panel on the left side. | The editor window composes of the preview area and the properties panel on the left side. | ||
+ | |||
+ | ====== Preview Window ====== | ||
+ | |||
+ | The preview window shows the preview of the animator. See [[gamedev: | ||
+ | |||
+ | In addition to the regular 3d-view navigation you can activate **Locomotion Testing** by pressing < | ||
+ | * < | ||
+ | * < | ||
+ | * < | ||
+ | * < | ||
+ | * < | ||
+ | * < | ||
+ | * < | ||
+ | |||
+ | If the playground panel is active you can easily verify how the controller values change and what the animator is doing. | ||
+ | |||
+ | Optionally the **Wakeboarding** mode by pressing < | ||
+ | * < | ||
+ | |||
+ | Only one of these two testing modes can be active at the same time. | ||
+ | <WRAP clear/> | ||
====== Animator ====== | ====== Animator ====== | ||
- | {{: | + | {{ : |
+ | |||
+ | Defines the **Rig** and **Animation** resource to use for the animator. At least the rig resource is required to be present. The animation resource is not required if only procedural rules are used. | ||
+ | |||
+ | The **Affected Bones** list defines names of bones affected by the animator. If the list is empty all bones are affected by the animator. This can be used to animators affecting individual body areas of actors, for example upper and lower body. | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Animators can only be used on **Component** resources using the same rig resource. If the rig resource is mismatching the animator has no effect. | ||
+ | </ | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Automatic and manual retargeting of animations will be added in a future release. | ||
+ | </ | ||
+ | <WRAP clear/> | ||
====== Controllers ====== | ====== Controllers ====== | ||
- | {{: | + | {{ : |
- | Controllers are used by game programmers to adjust the animation. In general the artist defines the controller ranges but game programmers can overrule them to make their live easier. This does not interfere with the animation production process. The output of the controller is the **Value** linearly mapped from the range **Minimum Value -> Maximum Value** to the range **0 -> 1**. | + | Controllers are used by game programmers to adjust the animation. In general the artist defines the controller ranges but game programmers can overrule them to make their life easier. This does not interfere with the animation production process. The output of the controller is the **Value** linearly mapped from the range **Minimum Value -> Maximum Value** to the range **0 -> 1**. |
Controllers are typically accessed by the game developer using the unique **Controller Name** (case sensitive). This allows to mix and match different animators with differing controller setups (count, ordering and ranges) as long as the required names are present. | Controllers are typically accessed by the game developer using the unique **Controller Name** (case sensitive). This allows to mix and match different animators with differing controller setups (count, ordering and ranges) as long as the required names are present. | ||
Line 44: | Line 80: | ||
The **Locomotion Testing** panel allows to set dynamic behavior to controllers for preview purpose only. The attribute simulates typical ways how games manipulate controller values to get an idea on how the animator will perform if used in the game. | The **Locomotion Testing** panel allows to set dynamic behavior to controllers for preview purpose only. The attribute simulates typical ways how games manipulate controller values to get an idea on how the animator will perform if used in the game. | ||
+ | <WRAP clear/> | ||
====== Links ====== | ====== Links ====== | ||
- | {{: | + | {{ : |
Links map controller values to rule target input values using bezier curves. The artist is in full control of links. This decouples controller ranges allowing game programmers to freely manipulate them as they need. | Links map controller values to rule target input values using bezier curves. The artist is in full control of links. This decouples controller ranges allowing game programmers to freely manipulate them as they need. | ||
Line 58: | Line 95: | ||
The **Repeat** value allows to repeat the curve multiple times. This is useful for jig-saw type curves which can not be done with a bezier or linear type curve. This is also useful for overlaid detail animations. There you can easily adjust their play speed relative to the main animation. | The **Repeat** value allows to repeat the curve multiple times. This is useful for jig-saw type curves which can not be done with a bezier or linear type curve. This is also useful for overlaid detail animations. There you can easily adjust their play speed relative to the main animation. | ||
+ | <WRAP clear/> | ||
====== Rules ====== | ====== Rules ====== | ||
- | {{: | + | {{ : |
Rules define how the animation is produced. Rules are processed from top to bottom in the order they are specified. Rules can produce pre-canned animations or procedurally calculated animations. See [[gamedev: | Rules define how the animation is produced. Rules are processed from top to bottom in the order they are specified. Rules can produce pre-canned animations or procedurally calculated animations. See [[gamedev: | ||
Line 87: | Line 125: | ||
The last panel below changes according to the type of the selected rule. See [[gamedev: | The last panel below changes according to the type of the selected rule. See [[gamedev: | ||
+ | <WRAP clear/> | ||
====== Playground ====== | ====== Playground ====== | ||
- | {{: | + | {{ : |
The playground panel allows to quickly manipulate all controllers in a comprehensive list to test out the animation. Controllers which have a dynamic test attribute assigned can not be manipulated but their current state can be watched. | The playground panel allows to quickly manipulate all controllers in a comprehensive list to test out the animation. Controllers which have a dynamic test attribute assigned can not be manipulated but their current state can be watched. | ||
Line 105: | Line 144: | ||
The **Visualization** panel allows to enable some debug shapes to visualize some parameters. | The **Visualization** panel allows to enable some debug shapes to visualize some parameters. | ||
- | ====== Preview Window ====== | + | <WRAP clear/> |
- | The preview window shows the preview of the animator. See [[gamedev: | + | ====== |
- | In addition to the regular 3d-view navigation you can activate **Locomotion Testing** by pressing < | + | {{ :gamedev:deigde:editors:editor_animator_view.png? |
- | * < | + | |
- | * < | + | |
- | * < | + | |
- | * < | + | |
- | * < | + | |
- | * < | + | |
- | * < | + | |
- | If the playground panel is active you can easily verify how the controller values change | + | Preview |
- | Optionally | + | The **Display File Path** panel defines |
- | * < | + | |
+ | The **Testing Base Animator** panel allows to set another animator file as the base animation. If used the base animator is applied first then the animator currently being worked on. This allows to test overlay animations modifying other animations. This is used for example in **conversations** to animated **gestures** of actors. The controllers of the base animator | ||
+ | |||
+ | The **Sky** panel defines the **Sky** resource | ||
+ | |||
+ | The **Environment Object** panel defines the **Object Class** to use as environment the animator is previewed in. If **Wakeboarding** | ||
+ | |||
+ | The **Camera** panel shows the parameters of the camera in the preview view. The values can be manually edited. | ||
+ | |||
+ | The **Camera Attaching** panel allows to attach the preview view camera to bones in the animator. This allows to test first-person type animators | ||
+ | |||
+ | The **Playback** panel controls playback parameters. You can change the playback speed or pause the animation. While paused the animation time can be manually stepped forward | ||
+ | |||
+ | The **Attachment** panel allows to attach **Object Classes**. This can be used to verify correct object placement as well as spotting clipping problems if objects are attached to an actor while the animator is used. Attachments can be either attached **statically**, | ||
+ | |||
+ | If attached **statically** the object is attached to the virtual preview actor. In this case no bone has to be specified. This is useful to examine animations relative to a static prop, for example sitting down on a chair. | ||
+ | |||
+ | If attached to a **single bone** the bone name has to be valid otherwise this behaves the same as static attachment. This attachment type is typically used for attaching weapons or devices to actor hands or attaching props to actor belts or his back. | ||
+ | |||
+ | If **weight attached** is used the bones of the attached object are matched by name against the bones of the preview model. This attachment type is typically used for attaching cloth to an actor which has to be animated the same way as the base model is animated. | ||
+ | |||
+ | The **Attachment Object** panel defines what **Object Class** is used for the selected attachment as well as positional and rotational offset applied. Attachments can be individually hidden to allow switching between different objects. This can be used for example to check a sit down animation against different chair or bench types without needing to modify attachments all the time. | ||
+ | |||
+ | The **Dynamic Collider** parameter enables physical simulation for an attachment. The object root bone is attached while all bones marked as dynamic are influenced by physics. | ||
- | Only one of these two testing modes can be active at the same time. | ||
- | ===== Preview Video ===== | ||
- | https:// |