fix: remove MaterialInstance from SceneManager storage when destroyed

This commit is contained in:
Nick Fisher
2024-11-21 12:29:54 +08:00
parent 5deb2ad7cf
commit bc8edb7eb4
4 changed files with 15 additions and 5 deletions

View File

@@ -130,4 +130,11 @@ extern "C"
{
return ((SceneManager *)sceneManager)->createGeometry(vertices, static_cast<uint32_t>(numVertices), normals, static_cast<uint32_t>(numNormals), uvs, static_cast<uint32_t>(numUvs), indices, static_cast<uint32_t>(numIndices), (filament::RenderableManager::PrimitiveType)primitiveType, reinterpret_cast<MaterialInstance *>(materialInstance), keepData);
}
EMSCRIPTEN_KEEPALIVE void SceneManager_destroyMaterialInstance(TSceneManager *sceneManager, TMaterialInstance *instance)
{
((SceneManager *)sceneManager)->destroy(reinterpret_cast<MaterialInstance *>(instance));
}
}