了解具有多个网格的模型

时间:2018-11-13 19:13:17

标签: c++ opengl glm-math

因此,我正在尝试为我的OpenGL项目设计一个模型类,但是我试图弄清楚应该如何通用地存储数据,以便能够渲染整个模型。

例如,汽车模型。汽车将由三个网格组成:车身,车轮和车轴。我希望车轮随车轴一起旋转,并且车轴跟随车身旋转。

我当前的班级设置如下:

struct Vertex {
    glm::vec3 position;
    glm::vec3 normal;
    glm::vec2 texCoord;
};

struct Texture {
    unsigned int id;
    std::string type;
};


class Mesh
{
public:
    Mesh();
    Mesh(std::vector<Vertex> pVerticies, std::vector<unsigned int> pIndicies, std::vector<Texture> pTextures);
    ~Mesh();

private:
    std::vector<Vertex> verticies;
    std::vector<unsigned int> indicies;
    std::vector<Texture> textures;
};

和模型类

class Model
{
public:
    Model();
    ~Model();

private:
    std::vector<Mesh> meshes;
    unsigned int shaderID;
};

由于我不知道如何存储关系数据,所以根本没有充实模型类。

0 个答案:

没有答案