diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2016-07-01 11:44:13 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2016-07-05 13:24:20 +0000 |
commit | 07a81c85745ce189e633b66c51fd328d7666734e (patch) | |
tree | ce9196fb296281eaf4a037a53c7cf8c657b24420 /src/render/materialsystem/shader_p.h | |
parent | 916a756fd15fb3fa7851466f18365f701a3d16a3 (diff) |
Renderer: make submission not rely on the Shader backend node
Instead use the stored shaderDNA in the command. Make GraphicsContext able to
activate a shader based only on the DNA. This also forced to store the uniform
values slightly differently so that they can be applied without requiring a
backend Shader node at submission time.
Interestingly according to the Qt3DProfilter the load has shifted from the
second submission part to the first one because of this. The nice things is
that the load of the first part could be spread across multiple threads.
Change-Id: I7c543766d3c088ab3886ca1cd3b529f8deb18a93
Task-number: QTBUG-54423
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/materialsystem/shader_p.h')
-rw-r--r-- | src/render/materialsystem/shader_p.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/render/materialsystem/shader_p.h b/src/render/materialsystem/shader_p.h index d2c5330fb..1382e287e 100644 --- a/src/render/materialsystem/shader_p.h +++ b/src/render/materialsystem/shader_p.h @@ -83,7 +83,7 @@ public: void setGraphicsContext(GraphicsContext *context); GraphicsContext *graphicsContext(); - void updateUniforms(GraphicsContext *ctx, const ShaderParameterPack &pack); + void prepareUniforms(ShaderParameterPack &pack); void setFragOutputs(const QHash<QString, int> &fragOutputs); const QHash<QString, int> fragOutputs() const; |