diff --git a/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp b/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp index 7fd16368..31011c44 100644 --- a/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp +++ b/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp @@ -1008,6 +1008,28 @@ EMSCRIPTEN_KEEPALIVE void SceneAsset_createFromFilamentAssetRenderThread( }); auto fut = _renderThread->add_task(lambda); } + + EMSCRIPTEN_KEEPALIVE void GltfResourceLoader_asyncUpdateLoadRenderThread( + TGltfResourceLoader *tGltfResourceLoader) { + std::packaged_task lambda( + [=]() mutable + { + GltfResourceLoader_asyncUpdateLoad(tGltfResourceLoader); + }); + auto fut = _renderThread->add_task(lambda); + } + + EMSCRIPTEN_KEEPALIVE void GltfResourceLoader_asyncGetLoadProgressRenderThread( + TGltfResourceLoader *tGltfResourceLoader, + void (*callback)(float)) { + std::packaged_task lambda( + [=]() mutable + { + auto result = GltfResourceLoader_asyncGetLoadProgress(tGltfResourceLoader); + callback(result); + }); + auto fut = _renderThread->add_task(lambda); + } EMSCRIPTEN_KEEPALIVE void GltfAssetLoader_loadRenderThread( TEngine *tEngine,