1 #ifndef MOBILERT_SHADER_HPP 2 #define MOBILERT_SHADER_HPP 46 ::std::vector<::std::unique_ptr<Light>>
lights_ {};
72 explicit Shader () =
delete;
92 const ::std::vector<Plane>&
getPlanes()
const;
94 const ::std::vector<Sphere>&
getSpheres()
const;
100 const ::std::vector<::std::unique_ptr<Light>>&
getLights()
const;
104 #endif //MOBILERT_SHADER_HPP const ::std::vector< Triangle > & getTriangles() const
Definition: Shader.cpp:284
Accelerator
Definition: Shader.hpp:20
const ::std::vector< Material > & getMaterials() const
Definition: Shader.cpp:315
Definition: Shader.hpp:18
virtual void resetSampling()
Definition: Shader.cpp:176
bool rayTrace(::glm::vec3 *rgb, Ray &&ray)
Definition: Shader.cpp:86
RegularGrid< Sphere > gridSpheres_
Definition: Shader.hpp:32
Definition: RegularGrid.hpp:24
RegularGrid< Triangle > gridTriangles_
Definition: Shader.hpp:33
void initializeAccelerators(Scene scene)
Definition: Shader.cpp:46
Definition: Intersection.hpp:14
virtual bool shade(::glm::vec3 *rgb, const Intersection &intersection)=0
const ::std::int32_t samplesLight_
Definition: Shader.hpp:45
Shader & operator=(const Shader &shader)=delete
Definition: Shader.hpp:22
Naive< Plane > naivePlanes_
Definition: Shader.hpp:27
BVH< Plane > bvhPlanes_
Definition: Shader.hpp:35
BVH< Sphere > bvhSpheres_
Definition: Shader.hpp:36
Intersection traceLights(Intersection intersection) const
Definition: Shader.cpp:166
const ::std::vector< Sphere > & getSpheres() const
Definition: Shader.cpp:262
::std::vector<::std::unique_ptr< Light > > lights_
Definition: Shader.hpp:46
const ::std::vector< Plane > & getPlanes() const
Definition: Shader.cpp:240
bool shadowTrace(float distance, Ray &&ray)
Definition: Shader.cpp:132
Naive< Triangle > naiveTriangles_
Definition: Shader.hpp:29
const Accelerator accelerator_
Definition: Shader.hpp:42
virtual ~Shader()=default
Definition: Shader.hpp:21
BVH< Triangle > bvhTriangles_
Definition: Shader.hpp:37
Naive< Sphere > naiveSpheres_
Definition: Shader.hpp:28
const ::std::vector<::std::unique_ptr< Light > > & getLights() const
Definition: Shader.cpp:306
::std::uint32_t getLightIndex()
Definition: Shader.cpp:223
Definition: Shader.hpp:23
RegularGrid< Plane > gridPlanes_
Definition: Shader.hpp:31
::glm::vec3 getCosineSampleHemisphere(const ::glm::vec3 &normal)
Definition: Shader.cpp:188
::std::vector< Material > materials_
Definition: Shader.hpp:39