OpenPolygon
1.0.0
OpenPolygon is a Rendering Engine
Main Page
Namespaces
Classes
Files
File List
include
Container
material.h
1
/*
2
Copyright (C) 2014 - 2016 Mutzii
3
4
This program is free software: you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation, either version 3 of the License, or
7
(at your option) any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU General Public License for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program. If not, see <http://www.gnu.org/licenses/>.
16
17
*/
18
#ifndef MATERIAL_H
19
#define MATERIAL_H
20
21
#include "entity.h"
22
#include "shadowevent.h"
23
#include "drawevent.h"
24
25
namespace
Engine
26
{
27
28
// class DrawMaterial
29
// {
30
// public:
31
// explicit DrawMaterial( Entity * entity ) : mEntity(entity){}
32
// virtual ~DrawMaterial(){}
33
34
// virtual void enable( const DrawEvent & event )=0;
35
36
// IComponent<Entity> * mEntityComponent;
37
38
// protected:
39
40
// Entity * mEntity;
41
// };
42
43
// class ShadowMaterial
44
// {
45
// public:
46
// explicit ShadowMaterial( Entity * entity ) :mEntity(entity) {}
47
// virtual ~ShadowMaterial(){}
48
49
// virtual void enable( const ShadowEvent & event )=0;
50
51
// IComponent<Entity> * mEntityComponent;
52
53
// protected:
54
55
// Entity * mEntity;
56
57
// };
58
59
class
Material
60
{
61
public
:
62
63
explicit
Material
(
Entity
* entity ) : mEntity( entity ){}
64
65
virtual
~
Material
(){}
66
67
virtual
void
enable(
int
texture_unit )=0;
68
69
protected
:
70
71
Entity
* mEntity;
72
73
};
74
75
}
76
#endif // MATERIAL_H
Engine::Entity
The Entity - base component class - for 3D Entitys.
Definition:
entity.h:28
Engine
Definition:
element.h:23
Engine::Material
Definition:
material.h:59
Generated by
1.8.10