diff --git a/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp b/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp index 455365e9..7fd16368 100644 --- a/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp +++ b/thermion_dart/native/src/c_api/ThermionDartRenderThreadApi.cpp @@ -995,6 +995,19 @@ EMSCRIPTEN_KEEPALIVE void SceneAsset_createFromFilamentAssetRenderThread( }); auto fut = _renderThread->add_task(lambda); } + + EMSCRIPTEN_KEEPALIVE void GltfResourceLoader_asyncBeginLoadRenderThread( + TGltfResourceLoader *tGltfResourceLoader, + TFilamentAsset *tFilamentAsset, + void (*callback)(bool)) { + std::packaged_task lambda( + [=]() mutable + { + auto result = GltfResourceLoader_asyncBeginLoad(tGltfResourceLoader, tFilamentAsset); + callback(result); + }); + auto fut = _renderThread->add_task(lambda); + } EMSCRIPTEN_KEEPALIVE void GltfAssetLoader_loadRenderThread( TEngine *tEngine,