Removes redundant binding slot retrieving from CShaderProgram.
This was SVN commit r26585.
This commit is contained in:
parent
8eecc39e71
commit
db7894ff6b
@ -230,12 +230,8 @@ void CShaderUniforms::BindUniforms(const CShaderProgramPtr& shader) const
|
||||
const std::vector<SItems::Item>& items = m_Items->items;
|
||||
for (size_t i = 0; i < items.size(); ++i)
|
||||
{
|
||||
CShaderProgram::Binding binding = shader->GetUniformBinding(items[i].first);
|
||||
if (binding.Active())
|
||||
{
|
||||
CVector4D v = items[i].second;
|
||||
shader->Uniform(binding, v.X, v.Y, v.Z, v.W);
|
||||
}
|
||||
const CVector4D& v = items[i].second;
|
||||
shader->Uniform(items[i].first, v.X, v.Y, v.Z, v.W);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -512,7 +512,7 @@ public:
|
||||
|
||||
Binding GetTextureBinding(texture_id_t id) override
|
||||
{
|
||||
std::map<CStrIntern, std::pair<GLenum, int> >::iterator it = m_Samplers.find(CStrIntern(id));
|
||||
std::map<CStrIntern, std::pair<GLenum, int>>::iterator it = m_Samplers.find(CStrIntern(id));
|
||||
if (it == m_Samplers.end())
|
||||
return Binding();
|
||||
else
|
||||
@ -521,7 +521,7 @@ public:
|
||||
|
||||
void BindTexture(texture_id_t id, GLuint tex) override
|
||||
{
|
||||
std::map<CStrIntern, std::pair<GLenum, int> >::iterator it = m_Samplers.find(CStrIntern(id));
|
||||
std::map<CStrIntern, std::pair<GLenum, int>>::iterator it = m_Samplers.find(CStrIntern(id));
|
||||
if (it == m_Samplers.end())
|
||||
return;
|
||||
|
||||
@ -538,7 +538,7 @@ public:
|
||||
|
||||
Binding GetUniformBinding(uniform_id_t id) override
|
||||
{
|
||||
std::map<CStrIntern, std::pair<int, GLenum> >::iterator it = m_Uniforms.find(id);
|
||||
std::map<CStrIntern, std::pair<int, GLenum>>::iterator it = m_Uniforms.find(id);
|
||||
if (it == m_Uniforms.end())
|
||||
return Binding();
|
||||
else
|
||||
@ -647,8 +647,8 @@ private:
|
||||
GLhandleARB m_VertexShader;
|
||||
GLhandleARB m_FragmentShader;
|
||||
|
||||
std::map<CStrIntern, std::pair<int, GLenum> > m_Uniforms;
|
||||
std::map<CStrIntern, std::pair<GLenum, int> > m_Samplers; // texture target & unit chosen for each uniform sampler
|
||||
std::map<CStrIntern, std::pair<int, GLenum>> m_Uniforms;
|
||||
std::map<CStrIntern, std::pair<GLenum, int>> m_Samplers; // texture target & unit chosen for each uniform sampler
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
@ -589,6 +589,8 @@ void ShaderModelRenderer::Render(
|
||||
}
|
||||
}
|
||||
|
||||
const double time = g_Renderer.GetTimeManager().GetGlobalTime();
|
||||
|
||||
{
|
||||
PROFILE3("rendering bucketed submissions");
|
||||
|
||||
@ -722,12 +724,7 @@ void ShaderModelRenderer::Render(
|
||||
CShaderRenderQueries::RenderQuery rq = renderQueries.GetItem(q);
|
||||
if (rq.first == RQUERY_TIME)
|
||||
{
|
||||
CShaderProgram::Binding binding = shader->GetUniformBinding(rq.second);
|
||||
if (binding.Active())
|
||||
{
|
||||
double time = g_Renderer.GetTimeManager().GetGlobalTime();
|
||||
shader->Uniform(binding, time, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
shader->Uniform(rq.second, time, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
else if (rq.first == RQUERY_WATER_TEX)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user