Subversion Repositories gelsvn

Rev

Rev 349 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 349 Rev 353
1
#include "matte.hpp"
1
#include "matte.h"
2
 
2
 
3
using namespace CGLA;
3
using namespace CGLA;
4
 
4
 
5
matte::matte(const CGLA::Vec3f& r) : material(1.f, 0.f), diffuse_(r)
5
matte::matte(const CGLA::Vec3f& r) : material(1.f, 0.f), diffuse_(r)
6
{
6
{
7
    assert(diffuse_[0]>=0.f && diffuse_[0]<1.f);
7
    assert(diffuse_[0]>=0.f && diffuse_[0]<1.f);
8
    assert(diffuse_[1]>=0.f && diffuse_[1]<1.f);
8
    assert(diffuse_[1]>=0.f && diffuse_[1]<1.f);
9
    assert(diffuse_[2]>=0.f && diffuse_[2]<1.f);
9
    assert(diffuse_[2]>=0.f && diffuse_[2]<1.f);
10
}
10
}
11
 
11
 
12
void matte::sample(const ray& r, hit_info& hi) const
12
void matte::sample(const ray& r, hit_info& hi) const
13
{
13
{
14
    hi.diffuse = diffuse_;
14
    hi.diffuse = diffuse_;
15
    hi.ior = hi.inside ? 1.f / ior_ : ior_;
15
    hi.ior = hi.inside ? 1.f / ior_ : ior_;
16
}
16
}
17
 
17
 
18
//02566 framework, Anders Wang Kristensen, awk@imm.dtu.dk, 2007
18
//02566 framework, Anders Wang Kristensen, awk@imm.dtu.dk, 2007
19
 
19
 
20
 
20
 
21

Generated by GNU Enscript 1.6.6.
21

Generated by GNU Enscript 1.6.6.
22
 
22
 
23
 
23
 
24
 
24