7 #include "../Material/Material.h" 34 std::vector<glm::vec2>
uv;
56 virtual void draw(glm::mat4 matrix = glm::mat4(1.0f))=0;
90 virtual void draw(glm::mat4 matrix = glm::mat4(1.0f));
153 glm::mat4 modelMatrix;
156 std::shared_ptr<Material> material;
Class for procedurally genereted geometries, like spheres and cubes.
Definition: Geometry.h:64
glm::vec2 uv
Definition: Geometry.h:17
static GeometryData createSphereGeometry(float radius, unsigned int longitudeSegments, unsigned int latitudeSegments)
Definition: ProceduralGeometry.cpp:234
glm::vec3 normals
Definition: Geometry.h:16
std::vector< glm::vec3 > normals
Definition: Geometry.h:31
ProceduralGeometry(glm::mat4 modelMatrix, GeometryData &geometryData, std::shared_ptr< Material > material)
Definition: ProceduralGeometry.cpp:3
glm::mat4 modelMatrix
Definition: Geometry.h:49
std::vector< unsigned int > indices
Definition: Geometry.h:38
static GeometryData createCubeGeometry(float width, float height, float depth)
Definition: ProceduralGeometry.cpp:84
std::vector< glm::vec2 > uv
Definition: Geometry.h:34
Base class for Geometry classes.
Definition: Geometry.h:45
virtual void draw(glm::mat4 matrix=glm::mat4(1.0f))=0
std::vector< glm::vec3 > positions
Definition: Geometry.h:28
Struct for Vertex Data.
Definition: Geometry.h:13
virtual void draw(glm::mat4 matrix=glm::mat4(1.0f))
Definition: ProceduralGeometry.cpp:67
static GeometryData createCylinderGeometry(float radius, float height, unsigned int segments)
Definition: ProceduralGeometry.cpp:351
static GeometryData createFullScreenQuad()
Definition: ProceduralGeometry.cpp:415
Stuct holding the vertices and indeces of the Geometry.
Definition: Geometry.h:24