MobileRT
1.0
A multi platform C++ CPU progressive Ray Tracer.
|
#include <Scene.hpp>
Public Member Functions | |
Scene ()=default | |
Scene (const Scene &scene)=delete | |
Scene (Scene &&scene) noexcept=default | |
~Scene () | |
Scene & | operator= (const Scene &scene)=delete |
Scene & | operator= (Scene &&scene) noexcept=default |
Static Public Member Functions | |
template<typename T > | |
::MobileRT::AABB | getBounds (const ::std::vector< T > &primitives) |
Public Attributes | |
::std::vector< Triangle > | triangles_ {} |
::std::vector< Sphere > | spheres_ {} |
::std::vector< Plane > | planes_ {} |
::std::vector<::std::unique_ptr< Light > > | lights_ {} |
::std::vector< Material > | materials_ {} |
Static Private Member Functions | |
::MobileRT::AABB | getBoxBounds (const AABB &box1, const AABB &box2) |
A class which represents a scene for the Ray Tracer engine to cast rays into.
|
explicitdefault |
|
delete |
|
defaultnoexcept |
Scene::~Scene | ( | ) |
The destructor.
|
inlinestatic |
Calculates the bounding boxes which surrounds all the primitives in a vector.
T | The type of the primitives. |
primitives | The primitives to calculate the bounding box. |
A helper method which calculates the bounding box that surrounds two bounding boxes.
box1 | A bounding box. |
box2 | A bounding box. |
::std::vector<::std::unique_ptr<Light> > MobileRT::Scene::lights_ {} |
::std::vector<Material> MobileRT::Scene::materials_ {} |
::std::vector<Plane> MobileRT::Scene::planes_ {} |
::std::vector<Sphere> MobileRT::Scene::spheres_ {} |
::std::vector<Triangle> MobileRT::Scene::triangles_ {} |