]> git.jsancho.org Git - guile-assimp.git/blobdiff - src/test.c
Bug: nodes store index to mesh and not pointer to mesh
[guile-assimp.git] / src / test.c
index fce975a9694401c5004dda7fe8fbd9d8af411b17..add9c2b7fee11a86936f1bace253cb3bd1438267 100644 (file)
@@ -7,6 +7,20 @@
 #include <assimp/scene.h>
 #include <assimp/postprocess.h>
 
+void print_node(const struct aiNode* node) {
+  int i;
+
+  printf("%s: %d %d [", node->mName.data, node->mNumMeshes, node->mNumChildren);
+  for (i = 0; i < node->mNumMeshes; i++) {
+    printf("%d ", node->mMeshes[i]);
+  }
+  printf("]\n");
+
+  for (i = 0; i < node->mNumChildren; i++) {
+    print_node(node->mChildren[i]);
+  }
+}
+
 int main(int argc, char **argv)
 {
   const struct aiScene* scene = NULL;
@@ -16,4 +30,7 @@ int main(int argc, char **argv)
   node = scene->mRootNode;
   printf("Node:\n  parent: %d\n  children: %d\n  meshes: %d\n", node->mParent, node->mNumChildren, node->mNumMeshes);
   printf("  transformation: %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f\n", node->mTransformation.a1, node->mTransformation.a2, node->mTransformation.a3, node->mTransformation.a4, node->mTransformation.b1, node->mTransformation.b2, node->mTransformation.b3, node->mTransformation.b4, node->mTransformation.c1, node->mTransformation.c2, node->mTransformation.c3, node->mTransformation.c4, node->mTransformation.d1, node->mTransformation.d2, node->mTransformation.d3, node->mTransformation.d4);
+
+  printf("\n\n");
+  print_node(node);
 }