test1.monkey2 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #Import "<std>"
  2. #Import "<assimp>"
  3. #Import "assets/"
  4. Using std..
  5. Using assimp..
  6. Function Main()
  7. ' Local flags:UInt=aiProcess_CalcTangentSpace | aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_SortByPType
  8. ' Local flags:UInt=aiProcess_CalcTangentSpace | aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_SortByPType
  9. Local flags:UInt=aiProcess_PreTransformVertices | aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_SortByPType
  10. Local scene:=aiImportFile( AssetsDir()+"turtle1.b3d",flags )
  11. If scene
  12. Print "Loaded!"
  13. Print "NumMeshes="+scene.mNumMeshes
  14. Print "NumMaterials="+scene.mNumMaterials
  15. For Local i:=0 Until scene.mNumMeshes
  16. Local mesh:=scene.mMeshes[i]
  17. Local matid:=mesh.mMaterialIndex
  18. Local mat:=scene.mMaterials[matid]
  19. Local n:=aiGetMaterialTextureCount( mat,aiTextureType_DIFFUSE )
  20. If n
  21. Local color:aiColor4D
  22. Local path:aiString
  23. aiGetMaterialColor( mat,AI_MATKEY_COLOR_DIFFUSE,0,0,Varptr color )
  24. Print "Mesh "+i+": Diffuse color="+color.r+","+color.g+","+color.b+","+color.a
  25. aiGetMaterialTexture( mat,aiTextureType_DIFFUSE,0,Varptr path )
  26. Print "Mesh "+i+": Diffuse texture="+path.data
  27. Endif
  28. Print "Mesh "+i+": NumVertices="+mesh.mNumVertices
  29. Next
  30. Else
  31. Print "Error!"
  32. Endif
  33. aiReleaseImport( scene )
  34. Print "Bye!"
  35. End