Ray Tracer  2020
Material.h
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef MATERIAL_H_INCLUDED
4 #define MATERIAL_H_INCLUDED
5 
6 #include "Colour.h"
7 
29 class Material {
30 
31 public:
37  Material();
38 
43  Material(const Material& material) = default;
44 
48  ~Material() = default;
49 
55  Material& operator=(const Material& material) = default;
56 
58 
60 
63 
65 
66 };
67 
68 #endif
Colour class header file.
Class to store colour information.
Definition: Colour.h:25
Class defining Material colours and properties.
Definition: Material.h:29
Material()
Material default constructor.
Definition: Material.cpp:3
double specularExponent
'Hardness' of Material's specular hightlights - high values give small, sharp highlights.
Definition: Material.h:62
Colour specularColour
Colour of Material's specular highlights. If this is zero then there are no highlights.
Definition: Material.h:61
Material(const Material &material)=default
Matieral copy constructor.
Colour diffuseColour
Colour of Material under direct white light. Usually, but not always, the same as ambientColour.
Definition: Material.h:59
~Material()=default
Material destructor.
Colour mirrorColour
Colour of reflected rays under direct white light. If this is zero then there are no reflections.
Definition: Material.h:64
Material & operator=(const Material &material)=default
Matieral assignment operator.
Colour ambientColour
Colour of Material under white ambient light. Usually, but not always, the same as diffuseColour.
Definition: Material.h:57