virtual ~buffer_too_small() throw() { }
};
-class BufferRange;
-
/**
A buffer for storing data in GL memory. Putting vertex and index data in
buffers can improve rendering performance. The VertexArray, Mesh and
if(location_dirty)
{
buffer->require_size(offset+data_size);
- location_changed(buffer, offset, data_size);
location_dirty = false;
}
unsigned get_offset() const { return offset; }
private:
- /** Called when the target buffer or offset within it has changed. */
- virtual void location_changed(Buffer *, unsigned, unsigned) const { }
-
/** Uploads data to the buffer. Receives pointer to mapped buffer memory as
parameter, or null to use the buffer upload interface. */
void upload_data(char *) const;
void image(unsigned, const void *);
void sub_image(unsigned, int, unsigned, const void *);
virtual void image(const Graphics::Image &, unsigned = 0);
- using Texture::image;
+
unsigned get_width() const { return width; }
private:
image must match the defined storage. */
virtual void image(const Graphics::Image &, unsigned lv = 0);
- using Texture::image;
-
unsigned get_width() const { return width; }
unsigned get_height() const { return height; }
storage. */
virtual void image(const Graphics::Image &, unsigned = 0);
- using Texture::image;
-
unsigned get_width() const { return width; }
unsigned get_height() const { return height; }
unsigned get_depth() const { return depth; }
void image(TextureCubeFace, const Graphics::Image &);
virtual void image(const Graphics::Image &, unsigned = 0);
- using Texture::image;
unsigned get_size() const { return size; }
private:
virtual void setup_frame(Renderer &);
virtual void finish_frame();
- using Scene::render;
virtual void render(Renderer &, Tag = Tag()) const;
};