refactor: add createGizmoRenderThread
This commit is contained in:
@@ -55,6 +55,13 @@ namespace thermion
|
|||||||
EMSCRIPTEN_KEEPALIVE void load_skybox_render_thread(TViewer *viewer, const char *skyboxPath, void (*onComplete)());
|
EMSCRIPTEN_KEEPALIVE void load_skybox_render_thread(TViewer *viewer, const char *skyboxPath, void (*onComplete)());
|
||||||
EMSCRIPTEN_KEEPALIVE void remove_skybox_render_thread(TViewer *viewer);
|
EMSCRIPTEN_KEEPALIVE void remove_skybox_render_thread(TViewer *viewer);
|
||||||
|
|
||||||
|
EMSCRIPTEN_KEEPALIVE TGizmo *SceneManager_createGizmoRenderThread(
|
||||||
|
TSceneManager *tSceneManager,
|
||||||
|
TView *tView,
|
||||||
|
TScene *tScene,
|
||||||
|
void (*onComplete)(TGizmo*)
|
||||||
|
);
|
||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE void SceneManager_createGeometryRenderThread(
|
EMSCRIPTEN_KEEPALIVE void SceneManager_createGeometryRenderThread(
|
||||||
TSceneManager *sceneManager,
|
TSceneManager *sceneManager,
|
||||||
float *vertices,
|
float *vertices,
|
||||||
|
|||||||
@@ -536,6 +536,22 @@ extern "C"
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EMSCRIPTEN_KEEPALIVE TGizmo *SceneManager_createGizmoRenderThread(
|
||||||
|
TSceneManager *tSceneManager,
|
||||||
|
TView *tView,
|
||||||
|
TScene *tScene,
|
||||||
|
void (*onComplete)(TGizmo*)
|
||||||
|
) {
|
||||||
|
std::packaged_task<void()> lambda(
|
||||||
|
[=]() mutable
|
||||||
|
{
|
||||||
|
auto *gizmo = SceneManager_createGizmo(tSceneManager, tView, tScene);
|
||||||
|
onComplete(gizmo);
|
||||||
|
});
|
||||||
|
auto fut = _rl->add_task(lambda);
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE void *SceneManager_destroyAssetRenderThread(TSceneManager *tSceneManager, TSceneAsset *tSceneAsset, void (*callback)())
|
EMSCRIPTEN_KEEPALIVE void *SceneManager_destroyAssetRenderThread(TSceneManager *tSceneManager, TSceneAsset *tSceneAsset, void (*callback)())
|
||||||
{
|
{
|
||||||
std::packaged_task<void()> lambda(
|
std::packaged_task<void()> lambda(
|
||||||
|
|||||||
Reference in New Issue
Block a user