Bug 926128 - Use a single configurable shader in OpenGL layers backend. r=vlad, r=nical, r=gal

This commit is contained in:
Morris Tseng
2013-11-07 22:22:05 -08:00
parent 51db8c3a35
commit cc3e76aa1d
21 changed files with 567 additions and 2322 deletions

View File

@@ -32,9 +32,15 @@ public:
return mImpl->gl();
}
virtual ShaderProgramOGL* GetProgram(ShaderProgramType aType) MOZ_OVERRIDE
virtual ShaderProgramOGL* GetProgram(GLenum aTarget, gfx::SurfaceFormat aFormat) MOZ_OVERRIDE
{
return mImpl->GetProgram(aType);
ShaderConfigOGL config = ShaderConfigFromTargetAndFormat(aTarget, aFormat);
return mImpl->GetShaderProgramFor(config);
}
virtual const gfx::Matrix4x4& GetProjMatrix() const MOZ_OVERRIDE
{
return mImpl->GetProjMatrix();
}
virtual void BindAndDrawQuad(ShaderProgramOGL *aProg) MOZ_OVERRIDE