27 #ifndef HX3D_GRAPHICS_BUFFERS_MULTIARRAYBUFFER 28 #define HX3D_GRAPHICS_BUFFERS_MULTIARRAYBUFFER 30 #include "hx3d/graphics/buffers/attribute_array_buffer.hpp" 76 virtual void upload()
override;
83 std::map<std::string, AttributeArrayBuffer> _attributes;
99 unsigned int attributeTotalSize();
virtual void begin(const Ptr< Shader > &shader) override
Begin the use with a shader.
Multi-component array buffer for optimization purpose.
virtual void end(const Ptr< Shader > &shader) override
End the use with a shader.
virtual void upload() override
Upload the data to the GPU.
void addAttribute(const std::string name, const Attribute attribute)
Add an empty initialized attribute array buffer.
Attribute specialized array buffer.
void setAttribute(const std::string name, const std::vector< float > data)
Set the wanted attribute array buffer content.
AttributeArrayBuffer & getAttribute(const std::string name)
Get the wanted attribute array buffer.
void generate()
Generate the vector using the attributes.
float * data()
Get the buffer values.
std::shared_ptr< T > Ptr
Quick-typing shared ptr.
OpenGL GPU uploadable buffer.