code for assignment 3
[MicroTrace.git] / Primitive.hxx
index f147b35..68dd11c 100644 (file)
@@ -2,11 +2,21 @@
 #define PRIMITIVE_HXX
 
 #include "Ray.hxx"
+#include "Shader.hxx"
 
 class Primitive
 {
 public:
+  Primitive(Shader* shader = 0);
+  virtual ~Primitive();
+
   virtual bool Intersect(Ray &ray) = 0;
+  virtual bool Occluded(Ray& ray);
+  virtual Vec3f GetNormal(Ray& ray) = 0;
+  Shader* shader();
+  
+protected:
+  Shader* m_shader;
 };
 
 #endif
This page took 0.020887 seconds and 4 git commands to generate.