-#include <msp/gl/extensions/arb_vertex_array_object.h>
-#include <msp/gl/extensions/arb_vertex_buffer_object.h>
-#include <msp/gl/extensions/arb_vertex_shader.h>
-#include <msp/gl/extensions/khr_debug.h>
#include "buffer.h"
#include "error.h"
#include "mesh.h"
#include "renderer.h"
#include "resourcemanager.h"
-#include "vertexsetup.h"
using namespace std;
namespace Msp {
namespace GL {
-Mesh::Mesh(ResourceManager *rm)
+Mesh::Mesh(const VertexFormat &f):
+ Mesh()
{
- init(rm);
-}
-
-Mesh::Mesh(const VertexFormat &f, ResourceManager *rm)
-{
- init(rm);
storage(f);
}
-void Mesh::init(ResourceManager *rm)
-{
- vbuf = 0;
- ibuf = 0;
- dirty = 0;
- disallow_rendering = false;
- face_winding = NON_MANIFOLD;
-
- if(rm)
- set_manager(rm);
-}
-
Mesh::~Mesh()
{
set_manager(0);
return new AsyncLoader(*this, io);
}
-UInt64 Mesh::get_data_size() const
+uint64_t Mesh::get_data_size() const
{
- UInt64 size = 0;
+ uint64_t size = 0;
if(vbuf)
size += vbuf->get_size();
if(ibuf)