]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/instancearray.cpp
Tweak the comma operator between VertexAttribute and unsigned
[libs/gl.git] / source / render / instancearray.cpp
index 11279f76262fe60882df087e91d50d84d43a173b..427976129d65b1a4e5f0c82caf725822111a44b7 100644 (file)
@@ -46,15 +46,17 @@ InstanceArray::InstanceArray(const Object &o):
        {
                instance_data = new VertexArray((RAW_ATTRIB4,matrix_location, RAW_ATTRIB4,matrix_location+1, RAW_ATTRIB4,matrix_location+2));
                const VertexFormat &fmt = instance_data->get_format();
-               matrix_offset = fmt.offset(make_indexed_attribute(RAW_ATTRIB4, matrix_location));
+               matrix_offset = fmt.offset((RAW_ATTRIB4,matrix_location));
 
                instance_buffer = new Buffer;
                instance_data->use_buffer(instance_buffer);
 
+               const Mesh *mesh = object.get_mesh();
+
                vtx_setup = new VertexSetup;
-               vtx_setup->set_format_instanced(object.get_mesh()->get_vertices().get_format(), fmt);
-               vtx_setup->set_vertex_array(object.get_mesh()->get_vertices());
-               vtx_setup->set_index_buffer(*object.get_mesh()->get_index_buffer());
+               vtx_setup->set_format_instanced(mesh->get_vertices().get_format(), fmt);
+               vtx_setup->set_vertex_array(mesh->get_vertices());
+               vtx_setup->set_index_buffer(*mesh->get_index_buffer(), mesh->get_batches().front().get_index_type());
                vtx_setup->set_instance_array(*instance_data);
        }
        else