summaryrefslogtreecommitdiff
path: root/libs/assimp/port/assimp_rs/src/structs/anim
diff options
context:
space:
mode:
Diffstat (limited to 'libs/assimp/port/assimp_rs/src/structs/anim')
-rw-r--r--libs/assimp/port/assimp_rs/src/structs/anim/anim.rs44
-rw-r--r--libs/assimp/port/assimp_rs/src/structs/anim/mod.rs6
2 files changed, 50 insertions, 0 deletions
diff --git a/libs/assimp/port/assimp_rs/src/structs/anim/anim.rs b/libs/assimp/port/assimp_rs/src/structs/anim/anim.rs
new file mode 100644
index 0000000..5374151
--- /dev/null
+++ b/libs/assimp/port/assimp_rs/src/structs/anim/anim.rs
@@ -0,0 +1,44 @@
+pub struct Animation<'mA, 'mMA, 'nA> {
+ /* The name of the animation. If the modeling package this data was
+ * exported from does support only a single animation channel, this
+ * name is usually empty (length is zero).
+ */
+ m_name: Option<String>,
+ // Duration of the animation in ticks
+ m_duration: f64,
+ // Ticks per second. Zero (0.000... ticks/second) if not
+ // specified in the imported file
+ m_ticks_per_second: Option<f64>,
+ /* Number of bone animation channels.
+ Each channel affects a single node.
+ */
+ m_num_channels: u64,
+ /* Node animation channels. Each channel
+ affects a single node.
+ ?? -> The array is m_num_channels in size.
+ (maybe refine to a derivative type of usize?)
+ */
+ m_channels: &'nA NodeAnim,
+ /* Number of mesh animation channels. Each
+ channel affects a single mesh and defines
+ vertex-based animation.
+ */
+ m_num_mesh_channels: u64,
+ /* The mesh animation channels. Each channel
+ affects a single mesh.
+ The array is m_num_mesh_channels in size
+ (maybe refine to a derivative of usize?)
+ */
+ m_mesh_channels: &'mA MeshAnim,
+ /* The number of mesh animation channels. Each channel
+ affects a single mesh and defines some morphing animation.
+ */
+ m_num_morph_mesh_channels: u64,
+ /* The morph mesh animation channels. Each channel affects a single mesh.
+ The array is mNumMorphMeshChannels in size.
+ */
+ m_morph_mesh_channels: &'mMA MeshMorphAnim
+}
+pub struct NodeAnim {}
+pub struct MeshAnim {}
+pub struct MeshMorphAnim {}
diff --git a/libs/assimp/port/assimp_rs/src/structs/anim/mod.rs b/libs/assimp/port/assimp_rs/src/structs/anim/mod.rs
new file mode 100644
index 0000000..a0d4b7d
--- /dev/null
+++ b/libs/assimp/port/assimp_rs/src/structs/anim/mod.rs
@@ -0,0 +1,6 @@
+mod anim;
+pub use self::anim::{
+ Animation,
+ NodeAnim,
+ MeshAnim,
+ MeshMorphAnim};