Difference between revisions of "DCK file"

From Pikmin Technical Knowledge Base
Jump to navigation Jump to search
(I know what they are, just nothing about how they work.)
 
m
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
DCK files are a model animation format used in Pikmin 1. DCK files use keyframes and interpolation to create fluid animation.
+
DCK files, likely standing for Demo Cutscene Keyframes, are an interpolated keyframed animation format in ''[[Pikmin]]''.
 +
They can only be found within the [[BUN file]] format.
  
DCK files cannot be found outside of any archive, and are instead located in [[Pikmin BUN Files|bundle archives]].
+
== File structure ==
 +
{| class="wikitable"
 +
|+ DCK header
 +
! Offset || Size      || Purpose
 +
|-
 +
| 0x00 || 4          || Amount of joints the file will animate
 +
|-
 +
| 0x04 || 4          || Amount of frames in the animation
 +
|}
  
Sorry that's all I really know right now.  You can edit the KEY files to make them go slower and see the interpolation in action I guess.  It's the IEEE-754 float after the "spd" label.
+
{| class="wikitable"
 +
|+ Scaling
 +
! Offset || Size      || Purpose
 +
|-
 +
| 0x08 || 4          || Amount of scaling values
 +
|-
 +
| 0x0C || 0x08 value || Scaling value
 +
|}
  
{{Credits|Minty_Meeo}}
+
{| class="wikitable"
 +
|+ Rotation
 +
! Offset || Size      || Purpose
 +
|-
 +
| 0x0? || 4          || Amount of rotation values
 +
|-
 +
| 0x0? || 0x0? value || Rotation value
 +
|}
 +
 
 +
{| class="wikitable"
 +
|+ Translation
 +
! Offset || Size      || Purpose
 +
|-
 +
| 0x0? || 4          || Amount of translation values
 +
|-
 +
| 0x0? || 0x0? value || Translation value
 +
|}
 +
 
 +
{| class="wikitable"
 +
|+ DCK joint
 +
! Offset || Size      || Purpose
 +
|-
 +
| 0x00 || 4          || Index of the joint
 +
|-
 +
| 0x04 || 4          || Parent of the joint
 +
|-
 +
| 0x08 || 36          || Internally named <code>sx_param</code>, <code>sy_param</code>, and <code>sz_param</code>, a table of 3 ints read 3 times
 +
|-
 +
| 0x2C || 36          || Internally named <code>rx_param</code>, <code>ry_param</code>, and <code>rz_param</code>, a table of 3 ints read 3 times
 +
|-
 +
| 0x80 || 36          || Internally named <code>tx_param</code>, <code>ty_param</code>, and <code>rz_param</code>, a table of 3 ints read 3 times
 +
|}
 +
 
 +
{{Credits|Ambrosia, Minty_Meeo}}
 +
 
 +
[[Category:Pikmin]]
 +
[[Category:File formats]]

Latest revision as of 09:29, 30 March 2020

DCK files, likely standing for Demo Cutscene Keyframes, are an interpolated keyframed animation format in Pikmin. They can only be found within the BUN file format.

File structure[edit]

DCK header
Offset Size Purpose
0x00 4 Amount of joints the file will animate
0x04 4 Amount of frames in the animation
Scaling
Offset Size Purpose
0x08 4 Amount of scaling values
0x0C 0x08 value Scaling value
Rotation
Offset Size Purpose
0x0? 4 Amount of rotation values
0x0? 0x0? value Rotation value
Translation
Offset Size Purpose
0x0? 4 Amount of translation values
0x0? 0x0? value Translation value
DCK joint
Offset Size Purpose
0x00 4 Index of the joint
0x04 4 Parent of the joint
0x08 36 Internally named sx_param, sy_param, and sz_param, a table of 3 ints read 3 times
0x2C 36 Internally named rx_param, ry_param, and rz_param, a table of 3 ints read 3 times
0x80 36 Internally named tx_param, ty_param, and rz_param, a table of 3 ints read 3 times
Credits: Ambrosia, Minty_Meeo