Main Page
Namespaces
Classes
Files
File List
File Members
render_engine.hpp
Go to the documentation of this file.
1
/*
2
** TP CPE Lyon
3
** Copyright (C) 2013 Damien Rohmer
4
**
5
** This program is free software: you can redistribute it and/or modify
6
** it under the terms of the GNU General Public License as published by
7
** the Free Software Foundation, either version 3 of the License, or
8
** (at your option) any later version.
9
**
10
** This program is distributed in the hope that it will be useful,
11
** but WITHOUT ANY WARRANTY; without even the implied warranty of
12
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
** GNU General Public License for more details.
14
**
15
** You should have received a copy of the GNU General Public License
16
** along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef RENDER_ENGINE_HPP
20
#define RENDER_ENGINE_HPP
21
22
23
#include <
scene.hpp
>
24
#include <
shading.hpp
>
25
26
27
namespace
cpe
28
{
29
class
image_zbuffer;
30
class
vertex;
31
class
mesh;
32
class
vec3;
33
class
pos2;
34
36
class
render_engine
37
{
38
public
:
39
41
render_engine
(
image_zbuffer
& im,
const
scene
& scene_parameter,
const
shading
& shading_parameter);
42
44
void
render
(
const
vertex
& v0,
const
vertex
& v1,
const
vertex
& v2);
46
void
render
(
const
mesh
& m);
47
48
private
:
49
51
image_zbuffer
&
internal_image
;
53
scene
internal_scene
;
55
shading
internal_shading
;
56
};
57
58
60
pos2
real_coordinate_to_image_coordinate
(
const
vec3
& p,
int
Nx,
int
Ny);
61
62
}
63
64
#endif
libprojectif
render_engine.hpp
Generated on Wed Mar 6 2013 11:12:44 by
1.8.3.1