Rev | Line | |
---|
[2197] | 1 | #pragma once
|
---|
| 2 | #include "PointLight.hpp"
|
---|
| 3 | #include "SquareLight.hpp"
|
---|
| 4 | #include "Material.hpp"
|
---|
| 5 | #include "WoodMaterial.hpp"
|
---|
| 6 | #include "BoundingBox.hpp"
|
---|
| 7 | #include "Triangle.hpp"
|
---|
| 8 | #include "Sphere.hpp"
|
---|
| 9 | #include "Cylinder.h"
|
---|
| 10 | #include "PlaneAxisAligned.hpp"
|
---|
| 11 | #include "TriangleMesh.h"
|
---|
| 12 | #include "Transformed.h"
|
---|
| 13 | #include "KDTree.hpp"
|
---|
| 14 | #include <iostream>
|
---|
| 15 |
|
---|
| 16 | class Renderer;
|
---|
| 17 |
|
---|
| 18 | class World{
|
---|
| 19 | // friend class Renderer;
|
---|
| 20 | public:
|
---|
| 21 | KDTree* kdtree;
|
---|
| 22 |
|
---|
| 23 | Vector eyePosition;
|
---|
| 24 | Vector lookPosition;
|
---|
| 25 | Vector upwards;
|
---|
| 26 | Intersectable** virtualWorldObjects;
|
---|
| 27 | Vector* virtualWorldVertices;
|
---|
| 28 | Light** virtualWorldLights;
|
---|
| 29 | Material** virtualWorldMaterials;
|
---|
| 30 | int nVirtualWorldObjects;
|
---|
| 31 | int nVirtualWorldVertices;
|
---|
| 32 | int nVirtualWorldLights;
|
---|
| 33 | int nVirtualWorldMaterials;
|
---|
| 34 | float virtualWorldSummedLightLuminance;
|
---|
| 35 |
|
---|
| 36 | int materialArraySize;
|
---|
| 37 | int objectArraySize;
|
---|
| 38 | int lightArraySize;
|
---|
| 39 | public:
|
---|
| 40 | World();
|
---|
| 41 | ~World();
|
---|
| 42 | void createScene();
|
---|
| 43 | void createScene(Intersectable* obj);
|
---|
| 44 | void createScene(std::istream& isc);
|
---|
| 45 | void obliterate();
|
---|
| 46 |
|
---|
| 47 | void createEnvironmentMap(std::istream& isc);
|
---|
| 48 | }; |
---|
Note: See
TracBrowser
for help on using the repository browser.