Subversion Repositories gelsvn

Rev

Rev 353 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 353 Rev 355
Line 1... Line 1...
1
#ifndef __PATHTRACER_X__H__
1
#ifndef __PATHTRACER_X__H__
2
#define __PATHTRACER_X__H__
2
#define __PATHTRACER_X__H__
3
 
3
 
4
#include "tracer.h"
4
#include "scene.h"
5
 
5
 
6
class path_tracer : public tracer
6
class pathtracer
7
{
7
{
8
public:
8
public:
9
    path_tracer(int width, int height, bool explicit_direct, int subsamples);
9
    pathtracer(int width, int height, bool explicit_direct, int subsamples);
10
 
10
 
11
    CGLA::Vec3f compute_pixel(int w, int h);
11
    CGLA::Vec3f compute_pixel(int w, int h);
12
 
12
 
-
 
13
    void set_scene(scene*);
-
 
14
 
13
private:
15
private:
14
 
16
 
15
    CGLA::Vec3f trace(const ray& r, bool include_emitted);
17
    CGLA::Vec3f trace(const ray& r, bool include_emitted);
16
 
18
 
-
 
19
    //resolution
-
 
20
    int width_;
-
 
21
    int height_;
-
 
22
 
-
 
23
    //the scene
-
 
24
    scene* scene_;
-
 
25
 
17
    //use explicit integration of direct illumination
26
    //use explicit integration of direct illumination
18
    bool explicit_direct_;
27
    bool explicit_direct_;
19
 
28
 
20
    //
29
    //misc
21
    int subsamples_;
30
    int subsamples_;
22
};
31
};
23
 
32
 
24
#endif
33
#endif
25
 
34