04e201f62083a1ce5c13e65cef4bb16fce39c2dd
[MicroTrace.git] / Primitive.hxx
1 #ifndef PRIMITIVE_HXX
2 #define PRIMITIVE_HXX
3
4 #include "Ray.hxx"
5 #include "Shader.hxx"
6
7 class Primitive
8 {
9 public:
10 Primitive(Shader* shader = 0);
11 virtual ~Primitive();
12
13 virtual bool Intersect(Ray &ray) = 0;
14 virtual bool Occluded(Ray& ray);
15 virtual Vec3f GetNormal(Ray& ray) = 0;
16
17 Shader* shader();
18 protected:
19 Shader* m_shader;
20 };
21
22 #endif
This page took 0.043727 seconds and 3 git commands to generate.