Creating Faceposer gestures: Difference between revisions
Jump to navigation
Jump to search

Note:These are for a sequence's keyvalues, not the model's $KeyValues.
Note:Time tag names are not tied to anything at all, meaning you could name them anything you want. The tags listed are just those found in Valve's gestures.
m (Corrected a typo) |
Kestrelguy (talk | contribs) m (added language bar.) |
||
| Line 1: | Line 1: | ||
{{lang|{{PAGENAME}}|title=Creating Faceposer Gestures}} | |||
Faceposer can use any sequence in a model as a gesture, but timing tags (Apex, Accent, Loop, End), thumbnail frames, classification as a posture, etc. must be specified through a sequence's own keyvalues. This page is for creating new gestures or postures designed to be used in Faceposer. If you want to know how to place an existing gesture into a choreography scene, see [[Choreography_creation/Creating_Events/Skeletal_animation|Creating skeletal animation events]]. | Faceposer can use any sequence in a model as a gesture, but timing tags (Apex, Accent, Loop, End), thumbnail frames, classification as a posture, etc. must be specified through a sequence's own keyvalues. This page is for creating new gestures or postures designed to be used in Faceposer. If you want to know how to place an existing gesture into a choreography scene, see [[Choreography_creation/Creating_Events/Skeletal_animation|Creating skeletal animation events]]. | ||
{{note|These are for a ''sequence's'' keyvalues, not the model's {{ent|$keyvalues|alt=$KeyValues}}.}} | |||
{{note|These are for a ''sequence's'' keyvalues, not the model's | |||
== Example == | == Example == | ||
An example of a gesture with Faceposer options. This was found in <code>models/male_gestures.mdl</code>. The rest of the sequence has been removed for easier reading. | An example of a gesture with Faceposer options. This was found in <code>models/male_gestures.mdl</code>. The rest of the sequence has been removed for easier reading. | ||
<pre> | <pre> | ||
| Line 30: | Line 29: | ||
== Options == | == Options == | ||
;<code>type <choices></code> | ;<code>type <choices></code> | ||
: ''What Faceposer should classify this animation as.'' | : ''What Faceposer should classify this animation as.'' | ||
| Line 37: | Line 35: | ||
:; <code>posture</code> | :; <code>posture</code> | ||
:: Classifies the animation as a posture, putting it in the "Postures" category and behaving like a posture during playback. | :: Classifies the animation as a posture, putting it in the "Postures" category and behaving like a posture during playback. | ||
{{note|Time tag names are not tied to anything at all, meaning you could name them anything you want. The tags listed are just those found in Valve's gestures.}} | {{note|Time tag names are not tied to anything at all, meaning you could name them anything you want. The tags listed are just those found in Valve's gestures.}} | ||
| Line 58: | Line 55: | ||
;<code>endloop <tag></code> | ;<code>endloop <tag></code> | ||
: ''Which of the tags specified in <code>tags</code> should the loop end.'' {{confirm}} | : ''Which of the tags specified in <code>tags</code> should the loop end.'' {{confirm}} | ||
;<code>thumbnail_frame <frame></code> | ;<code>thumbnail_frame <frame></code> | ||
Revision as of 11:03, 20 October 2022
Faceposer can use any sequence in a model as a gesture, but timing tags (Apex, Accent, Loop, End), thumbnail frames, classification as a posture, etc. must be specified through a sequence's own keyvalues. This page is for creating new gestures or postures designed to be used in Faceposer. If you want to know how to place an existing gesture into a choreography scene, see Creating skeletal animation events.
Example
An example of a gesture with Faceposer options. This was found in models/male_gestures.mdl. The rest of the sequence has been removed for easier reading.
$sequence "b_head_back" {
...
keyvalues
{
faceposer
{
"type" "gesture"
"tags"
{
"apex" "10"
"extreme" "42"
"loop" "43"
"end" "44"
}
"entrytag" "apex"
"thumbnail_frame" "42"
}
}
}
Options
type <choices>- What Faceposer should classify this animation as.
gesture- Classifies the animation as a gesture, putting it in the "Gestures" category and behaving like a gesture during playback.
posture- Classifies the animation as a posture, putting it in the "Postures" category and behaving like a posture during playback.
tags { [stuff] }- Timing tags and which frame they are located at. All tags should be subkeys.
apex <frame>accent <frame>loop <frame>end <frame>
entrytag <tag>- Which of the tags specified in
tagsshould be the "entry tag".
exittag <tag>- Which of the tags specified in
tagsshould be the "exit tag".
startloop <tag>- Which of the tags specified in
tagsshould the loop start. [confirm]
endloop <tag>- Which of the tags specified in
tagsshould the loop end. [confirm]
thumbnail_frame <frame>- Which frame of the animation should appear in Faceposer's animation browser.
eye_height <float>- [Todo]