annotate doc/goatanimfmt @ 103:45a9d493e98c
fixed the input latency issue by calling QWidget::update() instead of QGLWidget::updateGL()
update schedules an update instead of redrawing immediately.
author |
John Tsiombikas <nuclear@member.fsf.org> |
date |
Sat, 12 Sep 2015 17:40:02 +0300 |
parents |
b35427826b60 |
children |
|
rev |
line source |
nuclear@35
|
1 Goat3D animation file format
|
nuclear@19
|
2 ----------------------------
|
nuclear@35
|
3
|
nuclear@35
|
4 Chunk structure
|
nuclear@35
|
5 ---------------
|
nuclear@35
|
6 Multiple tracks might apply to the same node, to allow for different
|
nuclear@35
|
7 interpolation, extrapolation, and time ranges between position, rotation, and
|
nuclear@35
|
8 scaling tracks.
|
nuclear@35
|
9
|
nuclear@35
|
10 ANIM
|
nuclear@35
|
11 +--ANIM_NAME
|
nuclear@35
|
12 | +--<STRING>
|
nuclear@35
|
13 +--TRACK
|
nuclear@35
|
14 +--TRACK_NAME
|
nuclear@35
|
15 | +--<STRING>
|
nuclear@35
|
16 +--TRACK_NODE
|
nuclear@35
|
17 | +--<STRING> (name of the scene node using this track)
|
nuclear@35
|
18 +--TRACK_ATTR
|
nuclear@35
|
19 | +--<STRING> (specify the attribute affected, see NOTE1)
|
nuclear@35
|
20 +--TRACK_INTERP
|
nuclear@35
|
21 | +--<STRING> ("step", "linear", "cubic")
|
nuclear@35
|
22 +--TRACK_EXTRAP
|
nuclear@35
|
23 | +--<STRING> ("extend", "clamp", "repeat", "pingpong")
|
nuclear@35
|
24 +--TRACK_KEY
|
nuclear@35
|
25 +--TRACK_KEY_TIME
|
nuclear@35
|
26 | +--<INT> (time in milliseconds)
|
nuclear@35
|
27 +--TRACK_KEY_VALUE
|
nuclear@35
|
28 +--<FLOAT|FLOAT3|FLOAT4>
|
nuclear@35
|
29
|
nuclear@35
|
30 NOTE1: The attribute might be any user-defined string, but the following
|
nuclear@35
|
31 standard attribute names are specified:
|
nuclear@35
|
32 - "position" keys are (x,y,z) vectors
|
nuclear@35
|
33 - "rotation" keys are (x,y,z,w) quaternions, with w being the real part
|
nuclear@35
|
34 - "scaling" keys are (x,y,z) scale factors
|