1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-17 14:11:06 +00:00

Move storage for Mesh, MeshInstance, MultiMesh and Skeleton into MeshStorage

This commit is contained in:
Bastiaan Olij
2022-04-02 16:29:04 +11:00
parent 7bb963efe9
commit b8be7903f3
28 changed files with 3529 additions and 3100 deletions

View File

@@ -997,8 +997,8 @@ void RendererCanvasCull::canvas_item_add_mesh(RID p_item, const RID &p_mesh, con
ERR_FAIL_COND(!m);
m->mesh = p_mesh;
if (canvas_item->skeleton.is_valid()) {
m->mesh_instance = RSG::storage->mesh_instance_create(p_mesh);
RSG::storage->mesh_instance_set_skeleton(m->mesh_instance, canvas_item->skeleton);
m->mesh_instance = RSG::mesh_storage->mesh_instance_create(p_mesh);
RSG::mesh_storage->mesh_instance_set_skeleton(m->mesh_instance, canvas_item->skeleton);
}
m->texture = p_texture;
@@ -1093,12 +1093,12 @@ void RendererCanvasCull::canvas_item_attach_skeleton(RID p_item, RID p_skeleton)
Item::CommandMesh *cm = static_cast<Item::CommandMesh *>(c);
if (canvas_item->skeleton.is_valid()) {
if (cm->mesh_instance.is_null()) {
cm->mesh_instance = RSG::storage->mesh_instance_create(cm->mesh);
cm->mesh_instance = RSG::mesh_storage->mesh_instance_create(cm->mesh);
}
RSG::storage->mesh_instance_set_skeleton(cm->mesh_instance, canvas_item->skeleton);
RSG::mesh_storage->mesh_instance_set_skeleton(cm->mesh_instance, canvas_item->skeleton);
} else {
if (cm->mesh_instance.is_valid()) {
RSG::storage->free(cm->mesh_instance);
RSG::mesh_storage->mesh_instance_free(cm->mesh_instance);
cm->mesh_instance = RID();
}
}