proper detatching

This commit is contained in:
Ronja 2022-01-25 22:51:54 +01:00
parent 9fa54ddd34
commit 6f706378ee

View file

@ -204,16 +204,8 @@ class TrailSystem is ModifierSystem {
//...but for now...
var data = get(entity)
var inst_data: TrailData = _instance_data[entity]
World.render_set_remove(_world, inst_data.geometry, entity)
Geometry.destroy(inst_data.geometry)
Render.destroy_index_buffer(inst_data.index_buffer)
Render.destroy_vertex_buffer(inst_data.position_buffer)
Render.destroy_vertex_buffer(inst_data.color_buffer)
Render.destroy_vertex_buffer(inst_data.uv_buffer)
detach(entity, data)
attach(entity, data)
System.print("recreated")
}
destroy() {
@ -309,8 +301,14 @@ class TrailSystem is ModifierSystem {
}
detach(entity, data: ModifierData) {
//called when detached from an entity, like on destroy
var inst_data: TrailData = _instance_data[entity]
World.render_set_remove(_world, inst_data.geometry, entity)
Geometry.destroy(inst_data.geometry)
Render.destroy_index_buffer(inst_data.index_buffer)
Render.destroy_vertex_buffer(inst_data.position_buffer)
Render.destroy_vertex_buffer(inst_data.color_buffer)
Render.destroy_vertex_buffer(inst_data.uv_buffer)
_instance_data.remove(entity)
}
tick(delta) {