Kinetic Visualization
Main Page
Related Pages
Classes
Files
File List
All
Classes
Functions
Variables
Pages
MyRenderer.h
1
#pragma once
2
#include "utility.hpp"
3
#include "FBO.h"
4
#include "VertexGeometry.h"
5
#include "View.h"
6
#include "RenderStates.h"
7
8
#include <glm/gtx/transform.hpp>
9
#include <glm/gtc/type_ptr.hpp>
10
#include <glm\gtc\matrix_projection.hpp>
11
#include <glm\gtc\matrix_transform.hpp>
12
13
14
class
MyRenderer
15
{
16
public
:
20
MyRenderer
(
void
);
24
~MyRenderer
(
void
);
25
26
public
:
27
//Bei Inline Operationen wird einfach der Code im Aufrufteil kopiert, sollte etwas bei der Performance bringen, dafür ist das Programm größer...
31
inline
virtual
void
ClearColorBuffer
() = 0;
35
inline
virtual
void
ClearDepthBuffer
() = 0;
39
inline
virtual
void
ClearStencilBuffer
() = 0;
43
inline
virtual
void
ClearAccumBuffer
() = 0;
48
inline
virtual
void
SetClearColor
(glm::vec4 color) = 0;
49
53
inline
virtual
void
SwapBuffer
() = 0;
57
inline
virtual
void
GetErrors
() = 0;
58
62
inline
virtual
void
SetFrontCulling
()=0;
66
inline
virtual
void
SetBackCulling
()=0;
70
inline
virtual
void
EnableBackFaceCulling
()=0;
74
inline
virtual
void
DisableBackFaceCulling
()=0;
75
79
void
SetUniformsObject
();
83
void
BindShader
();
87
void
SetUniformsGlobal
();
88
92
void
EnableTextures
();
96
void
DisableTextures
();
97
101
void
DrawView
(
View
* node);
102
103
bool
m_clear_depth_buffer;
104
105
protected
:
111
inline
virtual
void
EnableTexture
(Texture::TexturePtr texture,
int
i) = 0;
117
inline
virtual
void
DisableTexture
(Texture::TexturePtr texture,
int
i) = 0;
118
122
virtual
void
DrawVertexGeometry
() = 0;
123
127
virtual
void
DrawGeometry
() = 0;
128
134
void
MyRenderer::TraverseSceneGraph
(
INode
* inode, glm::mat4 m);
135
136
glm::mat4 m_modelMatrix;
137
138
float
m_duration;
139
140
View
* m_view;
141
Geometry
* m_pkGeometry;
142
};
143
Generated on Fri Jun 29 2012 09:13:04 for Kinetic Visualization by
1.8.1.1