SparrowRenderer/meshbuilder.h

27 lines
730 B
C++

#ifndef MESHBUILDER_H
#define MESHBUILDER_H
#include "mesh.h";
class MeshBuilder : public Mesh
{
public:
void addTriangle(int i1, int i2, int i3);
void addPosition(float x, float y, float z);
void addPosition(const glm::vec3 &position);
void addNormal(float x, float y, float z);
void addNormal(const glm::vec3 &normal);
void addTexCoord(float u, float v);
void addTexCoord(const glm::vec2 &texCoord);
void addVertex(glm::vec3 &position, glm::vec3 &normal);
void addVertex(glm::vec3 &position, glm::vec2 &texCoord);
void addVertex(glm::vec3 &position, glm::vec3 &normal, glm::vec2 &texCoord);
// require normals and texCoord
void computeTangents();
};
#endif // MESHBUILDER_H