Mesh.cpp 626 B

123456789101112131415161718192021222324252627
  1. #include "client/rendering/Mesh.h"
  2. Mesh::Mesh() {
  3. vertexBuffer.bind();
  4. vertexBuffer.setFloatAttribute(0, 3, 0, 11);
  5. vertexBuffer.setFloatAttribute(1, 2, 3, 11);
  6. vertexBuffer.setFloatAttribute(2, 3, 5, 11);
  7. vertexBuffer.setFloatAttribute(3, 3, 8, 11);
  8. }
  9. void Mesh::add(const Triangle& data) {
  10. buffer.add(data);
  11. }
  12. void Mesh::clear() {
  13. buffer.clear();
  14. }
  15. void Mesh::build() {
  16. vertexBuffer.bindBuffer();
  17. vertexBuffer.setData(sizeof (Triangle) * buffer.getLength(), buffer.getData());
  18. }
  19. void Mesh::draw() const {
  20. vertexBuffer.bindArray();
  21. vertexBuffer.draw(buffer.getLength() * 3);
  22. }