diff --git a/dart_filament/native/include/DartFilamentApi.h b/dart_filament/native/include/DartFilamentApi.h index e4c76873..6fdf4754 100644 --- a/dart_filament/native/include/DartFilamentApi.h +++ b/dart_filament/native/include/DartFilamentApi.h @@ -162,6 +162,9 @@ extern "C" EMSCRIPTEN_KEEPALIVE int get_animation_count(void *sceneManager, EntityId asset); EMSCRIPTEN_KEEPALIVE void get_animation_name(void *sceneManager, EntityId entity, char *const outPtr, int index); EMSCRIPTEN_KEEPALIVE float get_animation_duration(void *sceneManager, EntityId entity, int index); + EMSCRIPTEN_KEEPALIVE int get_bone_count(void *sceneManager, EntityId assetEntity, int skinIndex); + EMSCRIPTEN_KEEPALIVE void get_bone_names(void *sceneManager, EntityId assetEntity, const char** outPtr, int skinIndex); + EMSCRIPTEN_KEEPALIVE void get_morph_target_name(void *sceneManager, EntityId assetEntity, EntityId childEntity, char *const outPtr, int index); EMSCRIPTEN_KEEPALIVE int get_morph_target_name_count(void *sceneManager, EntityId assetEntity, EntityId childEntity); EMSCRIPTEN_KEEPALIVE void remove_entity(const void *const viewer, EntityId asset); diff --git a/dart_filament/native/include/SceneManager.hpp b/dart_filament/native/include/SceneManager.hpp index fe797424..2f8f2853 100644 --- a/dart_filament/native/include/SceneManager.hpp +++ b/dart_filament/native/include/SceneManager.hpp @@ -61,6 +61,7 @@ namespace flutter_filament float getAnimationDuration(EntityId entity, int animationIndex); unique_ptr> getMorphTargetNames(EntityId assetEntityId, EntityId childEntity); + unique_ptr> getBoneNames(EntityId assetEntityId, EntityId childEntity); void transformToUnitCube(EntityId e); inline void updateTransform(EntityId e); void setScale(EntityId e, float scale);