Hymn to Beauty
C++ 3D Engine
Isocahedron.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <cstdint>
4
5namespace Video {
6
7class LowLevelRenderer;
8class Buffer;
9class VertexDescription;
10class GeometryBinding;
11
14 public:
16
19 explicit Isocahedron(LowLevelRenderer* lowLevelRenderer);
20
23
25
29
31
35
37
40 uint16_t GetIndexCount() const;
41
43
46 float GetError() const;
47
48 private:
49 VertexDescription* vertexDescription;
50 Buffer* vertexBuffer;
51 Buffer* indexBuffer;
52 GeometryBinding* geometryBinding;
53 float error;
54};
55
56}
A buffer containing GPU accessible data.
Definition: Buffer.hpp:8
Binds together a vertex description with buffers.
Definition: GeometryBinding.hpp:8
An isocahedron used as proxy light geometry.
Definition: Isocahedron.hpp:13
uint16_t GetIndexCount() const
Get the number of indices in the geometry.
Definition: Isocahedron.cpp:88
const VertexDescription * GetVertexDescription() const
Get the isocahedron's vertex description.
Definition: Isocahedron.cpp:80
Isocahedron(LowLevelRenderer *lowLevelRenderer)
Create new isocahedron.
Definition: Isocahedron.cpp:8
GeometryBinding * GetGeometryBinding()
Get the geometry binding.
Definition: Isocahedron.cpp:84
float GetError() const
Get the error when compared to a sphere.
Definition: Isocahedron.cpp:92
~Isocahedron()
Destructor.
Definition: Isocahedron.cpp:73
Low level renderer abstracting the underlaying graphics API (OpenGL or Vulkan).
Definition: LowLevelRenderer.hpp:27
Describes how a vertex buffer is accessed by a shader.
Definition: VertexDescription.hpp:8
Definition: Editor.hpp:18