33 #include "uniform_buffer.h"
42 template<
typename Type>
75 :
UniformBuffer(gc, data.empty() ? (Type*)0 : &data[0], data.size() * sizeof(Type), usage)
107 size = size *
sizeof(Type);
115 size = size *
sizeof(Type);
void copy_to(GraphicContext &gc, TransferBuffer &buffer, int dest_pos=0, int src_pos=0, int size=-1)
Copies data to transfer buffer.
void upload_data(GraphicContext &gc, const std::vector< Type > &data)
Uploads data to uniforms buffer.
Definition: uniform_vector.h:97
void copy_to(GraphicContext &gc, TransferVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
Copies data to transfer buffer.
Definition: uniform_vector.h:112
Transfer Vector.
Definition: transfer_vector.h:43
UniformVector(GraphicContext &gc, int size, BufferUsage usage=usage_static_draw)
Constructs a ElementArrayBuffer.
Definition: uniform_vector.h:58
@ usage_static_draw
Definition: buffer_usage.h:45
UniformVector(GraphicContext &gc, const std::vector< Type > &data, BufferUsage usage=usage_static_draw)
Definition: uniform_vector.h:74
void upload_data(GraphicContext &gc, const Type *data, int size)
Uploads data to uniforms buffer.
Definition: uniform_vector.h:91
BufferUsage
Array Buffer usage enum.
Definition: buffer_usage.h:41
Interface to drawing graphics.
Definition: graphic_context.h:258
void upload_data(GraphicContext &gc, const void *data, int size)
Uploads data to uniforms buffer.
UniformVector(GraphicContext &gc, Type *data, int size, BufferUsage usage=usage_static_draw)
Constructs a ElementArrayBuffer.
Definition: uniform_vector.h:69
void copy_from(GraphicContext &gc, TransferVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
Copies data from transfer buffer.
Definition: uniform_vector.h:104
void copy_from(GraphicContext &gc, TransferBuffer &buffer, int dest_pos=0, int src_pos=0, int size=-1)
Copies data from transfer buffer.
UniformVector()
Constructs a null instance.
Definition: uniform_vector.h:49