summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/utils
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2014-08-18 14:05:47 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2014-08-19 08:12:06 +0300
commitcf95478ea842cd42a8888b0b74de3d0d0d0233ea (patch)
tree689e38c48cf39ab3907ef46015f8bf26c4040d16 /src/datavisualization/utils
parent169a4d638c6c1b6634ffcfd19c4fe3cb94cf27d5 (diff)
Make volume shading sample once per texture layer.
Change-Id: Ia3a13e2cb8d7dcf744a55dcb827f5cb436a043c4 Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/utils')
-rw-r--r--src/datavisualization/utils/shaderhelper.cpp32
-rw-r--r--src/datavisualization/utils/shaderhelper_p.h12
2 files changed, 32 insertions, 12 deletions
diff --git a/src/datavisualization/utils/shaderhelper.cpp b/src/datavisualization/utils/shaderhelper.cpp
index 3c3d93ac..3361638a 100644
--- a/src/datavisualization/utils/shaderhelper.cpp
+++ b/src/datavisualization/utils/shaderhelper.cpp
@@ -93,10 +93,12 @@ void ShaderHelper::initialize()
m_gradientMinUniform = m_program->uniformLocation("gradMin");
m_gradientHeightUniform = m_program->uniformLocation("gradHeight");
m_lightColorUniform = m_program->uniformLocation("lightColor");
- m_volumeSliceIndices = m_program->uniformLocation("volumeSliceIndices");
- m_colorIndex = m_program->uniformLocation("colorIndex");
- m_cameraPositionRelativeToModel = m_program->uniformLocation("cameraPositionRelativeToModel");
- m_color8Bit = m_program->uniformLocation("color8Bit");
+ m_volumeSliceIndicesUniform = m_program->uniformLocation("volumeSliceIndices");
+ m_colorIndexUniform = m_program->uniformLocation("colorIndex");
+ m_cameraPositionRelativeToModelUniform = m_program->uniformLocation("cameraPositionRelativeToModel");
+ m_color8BitUniform = m_program->uniformLocation("color8Bit");
+ m_textureDimensionsUniform = m_program->uniformLocation("textureDimensions");
+ m_sampleCountUniform = m_program->uniformLocation("sampleCount");
m_initialized = true;
}
@@ -268,28 +270,42 @@ GLuint ShaderHelper::volumeSliceIndices()
{
if (!m_initialized)
qFatal("Shader not initialized");
- return m_volumeSliceIndices;
+ return m_volumeSliceIndicesUniform;
}
GLuint ShaderHelper::colorIndex()
{
if (!m_initialized)
qFatal("Shader not initialized");
- return m_colorIndex;
+ return m_colorIndexUniform;
}
GLuint ShaderHelper::cameraPositionRelativeToModel()
{
if (!m_initialized)
qFatal("Shader not initialized");
- return m_cameraPositionRelativeToModel;
+ return m_cameraPositionRelativeToModelUniform;
}
GLuint ShaderHelper::color8Bit()
{
if (!m_initialized)
qFatal("Shader not initialized");
- return m_color8Bit;
+ return m_color8BitUniform;
+}
+
+GLuint ShaderHelper::textureDimensions()
+{
+ if (!m_initialized)
+ qFatal("Shader not initialized");
+ return m_textureDimensionsUniform;
+}
+
+GLuint ShaderHelper::sampleCount()
+{
+ if (!m_initialized)
+ qFatal("Shader not initialized");
+ return m_sampleCountUniform;
}
GLuint ShaderHelper::posAtt()
diff --git a/src/datavisualization/utils/shaderhelper_p.h b/src/datavisualization/utils/shaderhelper_p.h
index 67e8a2f3..bc7609bb 100644
--- a/src/datavisualization/utils/shaderhelper_p.h
+++ b/src/datavisualization/utils/shaderhelper_p.h
@@ -78,6 +78,8 @@ class ShaderHelper
GLuint colorIndex();
GLuint cameraPositionRelativeToModel();
GLuint color8Bit();
+ GLuint textureDimensions();
+ GLuint sampleCount();
GLuint posAtt();
GLuint uvAtt();
@@ -112,10 +114,12 @@ class ShaderHelper
GLuint m_gradientMinUniform;
GLuint m_gradientHeightUniform;
GLuint m_lightColorUniform;
- GLuint m_volumeSliceIndices;
- GLuint m_colorIndex;
- GLuint m_cameraPositionRelativeToModel;
- GLuint m_color8Bit;
+ GLuint m_volumeSliceIndicesUniform;
+ GLuint m_colorIndexUniform;
+ GLuint m_cameraPositionRelativeToModelUniform;
+ GLuint m_color8BitUniform;
+ GLuint m_textureDimensionsUniform;
+ GLuint m_sampleCountUniform;
GLboolean m_initialized;
};