123456789101112131415161718192021222324 |
- #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<float, 50> buffer;
- buffer.add(v1.x);
- buffer.add(v1.y);
- buffer.add(*reinterpret_cast<const float*>(&(v1.color.data[0])));
- buffer.add(v2.x);
- buffer.add(v2.y);
- buffer.add(*reinterpret_cast<const float*>(&(v2.color.data[0])));
- buffer.add(v3.x);
- buffer.add(v3.y);
- buffer.add(*reinterpret_cast<const float*>(&(v3.color.data[0])));
-
- vertexBuffer.updateData(0, buffer.getLength() * sizeof(float), buffer.begin());
- vertexBuffer.draw(3);
- }
|