|
Oxygen Engine
Modern C++ 3D Engine using OpenGL
|
Scene related management (Render-agnostic Geometry, Manger, etc...) More...
Namespaces | |
| namespace | gltf |
| Helpers and classes related to glTF models. | |
| namespace | loader |
| Generators of geometry / scene by computation (eg. Bezier) or from files (eg. Gltf) | |
| namespace | primitive |
| Standard mesh primitives (Cube, Plane, Teapot, etc...) | |
| namespace | skin |
| Helpers and classes related to skinned meshes. | |
Classes | |
| class | AABB |
| Axis-aligned bounding box. More... | |
| struct | AreaLight |
| Realistic light that emits from a rectangle shape (example: screens, neons) More... | |
| class | Camera |
| The "eye of the scene". More... | |
| struct | DefaultMeshSettings |
| Settings to specialize Mesh. More... | |
| struct | FrustumProjection |
| Special case of perspective projection where you need to provide frustum extents. More... | |
| struct | IsPosition |
| struct | IsPosition< glm::vec3 > |
| struct | IsRotation |
| struct | IsRotation< glm::quat > |
| struct | IsScale |
| struct | IsScale< glm::vec3 > |
| struct | Lighting |
| Lighting manager (scene) More... | |
| class | Material |
| Render agnostic material. More... | |
| struct | Mesh |
| class | Node |
| Scene node. More... | |
| struct | NodePtr |
| Wrapper to a node reference to use pointers to node even if the actual node moves in memory. More... | |
| struct | OrthographicProjection |
| Non realistic projection where all objects lines are orthogonal to the projection plane giving the idea that all faces are at the same distance to the viewer. More... | |
| struct | PerspectiveProjection |
| Realistic projection where distant objects appear smaller than closer objects. More... | |
| struct | PointLight |
| Light that emits from a point in all directions. More... | |
| struct | Primitive |
| Part of a mesh (used to separate mesh materials for example) More... | |
| class | Scene |
| Logical scene manager. More... | |
| struct | SkinnedVertex |
| struct | TextureCoordinatesTransform |
| Material property defining texture coordinates set transformation. More... | |
| struct | TextureProperty |
| Material property defining texture settings. More... | |
| class | Transform |
| Manage local Translation / Rotation / Scale of an entity in the world. More... | |
| struct | TransmissiveProperties |
| Material properties related to physically-based transparency related effects. More... | |
| struct | Vertex |
Typedefs | |
| using | SolidMesh = Mesh< Vertex > |
| using | SkinnedMesh = Mesh< SkinnedVertex > |
| using | NodeType = uint64_t |
| typedef uint32_t | index_t |
Functions | |
| AABB | operator+ (const AABB &op1, const AABB &op2) noexcept |
| return an AABB containing both AABB | |
| template<typename MeshType , VertexPredicateFunction< typename MeshType::vertex_type > F> | |
| constexpr AABB | generateBoundingBoxFromPredicate (const MeshType &mesh, F &&predicate) noexcept |
| Generate a bounding box containing vertices matching a predicate. | |
Variables | |
| const NodeType | NodeTypeALL = 0 |
Scene related management (Render-agnostic Geometry, Manger, etc...)
| typedef uint32_t oe::scene::index_t |
Vertex index in meshes
|
inlineconstexprnoexcept |
Generate a bounding box containing vertices matching a predicate.
| predicate | A function with a vertex as parameter that should return true if the vertex should be considered in the bbox |