}
-Mesh::Loader::Loader(Mesh &m):
- DataFile::ObjectLoader<Mesh>(m)
+Mesh::Loader::Loader(Mesh &m, bool g):
+ DataFile::ObjectLoader<Mesh>(m),
+ allow_gl_calls(g)
{
add("batch", &Loader::batch);
add("vertices", &Loader::vertices);
fmt = (fmt, *i);
obj.vertices.reset(fmt);
load_sub(obj.vertices);
- obj.check_buffers(VERTEX_BUFFER);
+ if(allow_gl_calls)
+ {
+ obj.check_buffers(VERTEX_BUFFER);
+ obj.vtx_setup.refresh();
+ }
}
void Mesh::Loader::batch(PrimitiveType p)
{
// TODO use correct filename
DataFile::Parser parser(io, "async");
- Loader loader(mesh);
+ Loader loader(mesh, false);
loader.load(parser);
}
else if(phase==1)
{
mesh.resize_buffers();
+ mesh.vtx_setup.refresh();
vertex_updater = mesh.vertices.refresh_async();
if(!mesh.batches.empty())
index_updater = mesh.batches.front().refresh_async();