feat: assignment 2
This commit is contained in:
37
src/mesh.h
Normal file
37
src/mesh.h
Normal file
@@ -0,0 +1,37 @@
|
||||
#ifndef MESH_H_
|
||||
#define MESH_H_
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
class Buffer;
|
||||
class Shader;
|
||||
|
||||
class Mesh {
|
||||
public:
|
||||
Mesh() = default;
|
||||
|
||||
void addBuffer(const std::shared_ptr<Buffer>& buffer,
|
||||
const std::shared_ptr<Shader>& shader = nullptr);
|
||||
|
||||
size_t getNumBuffers() const
|
||||
{
|
||||
return buffers_.size();
|
||||
}
|
||||
const std::shared_ptr<Buffer>& getBuffer(size_t index) const
|
||||
{
|
||||
return buffers_[index];
|
||||
}
|
||||
std::shared_ptr<Buffer>& getBuffer(size_t index)
|
||||
{
|
||||
return buffers_[index];
|
||||
}
|
||||
|
||||
void draw();
|
||||
|
||||
private:
|
||||
std::vector<std::shared_ptr<Buffer>> buffers_;
|
||||
std::vector<std::shared_ptr<Shader>> shaders_;
|
||||
};
|
||||
|
||||
#endif // MESH_H_
|
||||
Reference in New Issue
Block a user