2
* Copyright 2010 Inalogic Inc.
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU Lesser General Public License version 3, as
6
* published by the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranties of
10
* MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
11
* PURPOSE. See the applicable version of the GNU Lesser General Public
12
* License for more details.
14
* You should have received a copy of both the GNU Lesser General Public
15
* License version 3 along with this program. If not, see
16
* <http://www.gnu.org/licenses/>
18
* Authored by: Jay Taoko <jay.taoko_AT_gmail_DOT_com>
26
#include "IOpenGLGLSLShader.h"
27
#include "GLShaderParameter.h"
28
#include "GLDeviceObjects.h"
33
class TemplateQuadBuffer;
38
GLShaderParameter *Color;
39
GLShaderParameter *ViewProjectionMatrix;
40
GLShaderParameter *Scale;
41
GLShaderParameter *Offset;
47
void SetColor (FLOAT R, FLOAT G, FLOAT B, FLOAT A);
48
void Render (INT x, INT y, INT z, INT width, INT height);
50
void SetTransformMatrix (const Matrix4 &TransformMatrix);
55
IntrusiveSP<IOpenGLVertexShader> vs;
56
IntrusiveSP<IOpenGLPixelShader> ps;
57
IntrusiveSP<IOpenGLShaderProgram> sprog;
58
Matrix4 m_TransformMatrix;
59
TemplateQuadBuffer *m_QuadBuffer;