SparrowRenderer/meshbuilder.h
2015-08-27 23:35:56 +02:00

34 lines
909 B
C++

#ifndef MESHBUILDER_H
#define MESHBUILDER_H
#include "mesh.h"
class MeshBuilder : public Mesh
{
int currentGroup;
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);
void addGroup(Material* myMaterial);
void setCurrentGroup(int groupId);
void setCurrentGroupMaterial(Material* myMaterial);
int getNbGroups();
// require normals and texCoord
void computeTangents();
};
#endif // MESHBUILDER_H