Merge pull request #94368 from CrazyRoka/optimize-render-pass-uniform-set

Optimize `RenderForwardClustered::_setup_render_pass_uniform_set` by reducing Vector allocations
This commit is contained in:
Rémi Verschelde 2024-12-02 15:49:58 +01:00
commit 14ce5ba8a1
No known key found for this signature in database
GPG key ID: C3336907360768E1
14 changed files with 53 additions and 36 deletions

View file

@ -3081,7 +3081,12 @@ void RenderingDevice::_uniform_set_update_shared(UniformSet *p_uniform_set) {
}
}
RID RenderingDevice::uniform_set_create(const Vector<Uniform> &p_uniforms, RID p_shader, uint32_t p_shader_set) {
template RID RenderingDevice::uniform_set_create(const LocalVector<RD::Uniform> &p_uniforms, RID p_shader, uint32_t p_shader_set);
template RID RenderingDevice::uniform_set_create(const Vector<RD::Uniform> &p_uniforms, RID p_shader, uint32_t p_shader_set);
template <typename Collection>
RID RenderingDevice::uniform_set_create(const Collection &p_uniforms, RID p_shader, uint32_t p_shader_set) {
_THREAD_SAFE_METHOD_
ERR_FAIL_COND_V(p_uniforms.is_empty(), RID());