#include "rendering/ColorRenderer.h" #include "gaming-core/wrapper/Attributes.h" #include "gaming-core/utils/List.h" ColorRenderer::ColorRenderer() { vertexBuffer.setAttributes(Attributes().addFloat(2).addSpacer(0, 0).addColor4()); vertexBuffer.setStreamData(3 * sizeof (float) * 6); } void ColorRenderer::draw(const Vertex& v1, const Vertex& v2, const Vertex& v3) { List buffer; buffer.add(v1.x); buffer.add(v1.y); buffer.add(*reinterpret_cast(&(v1.color.data[0]))); buffer.add(v2.x); buffer.add(v2.y); buffer.add(*reinterpret_cast(&(v2.color.data[0]))); buffer.add(v3.x); buffer.add(v3.y); buffer.add(*reinterpret_cast(&(v3.color.data[0]))); vertexBuffer.updateData(0, buffer.getLength() * sizeof(float), buffer.begin()); vertexBuffer.draw(3); }