#pragma once // OpenGL #include #include // Duck Tape #include "DGL_FundamentalTypes.hpp" // Non-Standard C++ #include "Cpp_Alias.hpp" namespace DGL { namespace Generic { template using Vector3 = glm::tvec3; } using DataPtr = ptr; template using ID = gUInt; struct LinearColor { gFloatClamped Red, Green, Blue, Alpha; LinearColor(gFloatClamped _red, gFloatClamped _green, gFloatClamped _blue, gFloatClamped _alpha) : Red(_red), Green(_green), Blue(_blue), Alpha(_alpha) {}; }; // ID Reference Types class Buffer ; class Matrix ; class Shader ; class ShaderProgram; class VertexBuffer ; class ElementBuffer; using Matrix4x4 = glm::mat4; using Vector3 = glm::vec3; using Vector4 = glm::vec4; }