X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fmesh.cpp;h=05be2c3745b8562b32f9c9b5a69e722fb4af5058;hp=a1930d75d124bc35f9d6c40374b9cb7b2f64cb6a;hb=25c81b4953dd38993250321b9407ce8b0139cbeb;hpb=d51a234320449909eb34c802faa1f0c516ef70a0 diff --git a/source/mesh.cpp b/source/mesh.cpp index a1930d75..05be2c37 100644 --- a/source/mesh.cpp +++ b/source/mesh.cpp @@ -1,13 +1,14 @@ /* $Id$ This file is part of libmspgl -Copyright © 2007-2010 Mikko Rasa, Mikkosoft Productions +Copyright © 2007-2011 Mikko Rasa, Mikkosoft Productions Distributed under the LGPL */ #include "buffer.h" #include "extension.h" #include "mesh.h" +#include "renderer.h" using namespace std; @@ -107,6 +108,15 @@ void Mesh::draw() const Buffer::unbind_from(ELEMENT_ARRAY_BUFFER); } +void Mesh::draw(Renderer &renderer) const +{ + renderer.set_vertex_array(&vertices); + renderer.set_element_buffer(ibuf); + + for(list::const_iterator i=batches.begin(); i!=batches.end(); ++i) + renderer.draw(*i); +} + Mesh::Loader::Loader(Mesh &m): DataFile::ObjectLoader(m)