diff options
| author | clayjohn <claynjohn@gmail.com> | 2023-06-29 13:24:40 -0700 |
|---|---|---|
| committer | clayjohn <claynjohn@gmail.com> | 2023-06-29 13:24:40 -0700 |
| commit | 35ed7c770bd7616bdd43b32c1ea433d574452de5 (patch) | |
| tree | 1426a60f90da47619302f2742cc26d6de281c9f7 /servers/rendering/renderer_rd/storage_rd | |
| parent | 9d089fe6e501e4818fed1b0688631c4d65d1ba35 (diff) | |
| download | redot-engine-35ed7c770bd7616bdd43b32c1ea433d574452de5.tar.gz | |
Initialize particles instance buffer in case it is used before being updated
Diffstat (limited to 'servers/rendering/renderer_rd/storage_rd')
| -rw-r--r-- | servers/rendering/renderer_rd/storage_rd/particles_storage.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/servers/rendering/renderer_rd/storage_rd/particles_storage.cpp b/servers/rendering/renderer_rd/storage_rd/particles_storage.cpp index b36e027f07..1500c902c6 100644 --- a/servers/rendering/renderer_rd/storage_rd/particles_storage.cpp +++ b/servers/rendering/renderer_rd/storage_rd/particles_storage.cpp @@ -1288,7 +1288,10 @@ void ParticlesStorage::_particles_update_buffers(Particles *particles) { particles->userdata_count = userdata_count; - particles->particle_instance_buffer = RD::get_singleton()->storage_buffer_create(sizeof(float) * 4 * (xform_size + 1 + 1) * total_amount); + PackedByteArray data; + data.resize_zeroed(sizeof(float) * 4 * (xform_size + 1 + 1) * total_amount); + + particles->particle_instance_buffer = RD::get_singleton()->storage_buffer_create(sizeof(float) * 4 * (xform_size + 1 + 1) * total_amount, data); //needs to clear it { |
