proper detatching
This commit is contained in:
parent
9fa54ddd34
commit
6f706378ee
1 changed files with 9 additions and 11 deletions
|
|
@ -204,16 +204,8 @@ class TrailSystem is ModifierSystem {
|
||||||
|
|
||||||
//...but for now...
|
//...but for now...
|
||||||
var data = get(entity)
|
var data = get(entity)
|
||||||
var inst_data: TrailData = _instance_data[entity]
|
detach(entity, data)
|
||||||
|
|
||||||
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)
|
|
||||||
attach(entity, data)
|
attach(entity, data)
|
||||||
System.print("recreated")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
destroy() {
|
destroy() {
|
||||||
|
|
@ -309,8 +301,14 @@ class TrailSystem is ModifierSystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
detach(entity, data: ModifierData) {
|
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) {
|
tick(delta) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue