Понимание моделей с несколькими сетками - PullRequest
0 голосов
/ 13 ноября 2018

Итак, я пытаюсь разработать класс модели для моего проекта 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;
};

Класс модели совсем не конкретизирован, так как я не знаю, как хранить данные отношений.

...