Vivid
Loading...
Searching...
No Matches
Renderer3D.h
1#include "Renderer.h"
2#include "common/maths/Vec.h"
3
4namespace Vivid
5{
6 struct Storage3D
7 {
8 Ref<VertexArray> vao;
9 Ref<Shader> quadShader;
10 Vector<Vertex> quadVertices;
11 Vector<unsigned int> quadIndices;
12 Ref<Shader> triangleShader;
13 Vector<Vertex> triangleVertices;
14 Vector<unsigned int> triangleIndices;
15 };
16
18 {
19 private:
20 static Storage3D s_Storage3D;
21
22 public:
23 Renderer3D() = default;
24 ~Renderer3D() = default;
25
26 static void Init();
27 static void BeginScene();
28 static void EndScene();
29
30 static void DrawQuad(Maths::Vec3 vertex1, Maths::Vec3 vertex2, Maths::Vec3 vertex3, Maths::Vec3 vertex4, Maths::Vec3 color);
31 static void DrawTriangle(Maths::Vec3 vertex1, Maths::Vec3 vertex2, Maths::Vec3 vertex3, Maths::Vec3 color);
32 static void DrawCube(Maths::Vec3 center, float edgeLength, Maths::Vec3 color);
33 };
34
35}
Contains a 3D vector.
Definition: Vec.h:51