rebase and simplify
diff --git a/include/rive/renderer.hpp b/include/rive/renderer.hpp
index 6011a99..dcd3b83 100644
--- a/include/rive/renderer.hpp
+++ b/include/rive/renderer.hpp
@@ -70,23 +70,6 @@
int count,
const Mat2D* localMatrix = nullptr);
- class RenderMesh : public RefCnt {};
-
- /* Copies the data provided, and returns a reusable RenderMesh object which can
- * be drawn in drawMesh(...).
- *
- * vertexCount is the number of vertex points (i.e. pairs of x,y)
- * vertices[] and texCoords[] are x,y interleaved
- * Note: texCoords[] are normalized (0..1), but can be outside of that range.
- * if they are out of range, the shader (in drawMesh) will handle tiling
- */
- extern rcp<RenderMesh> makeMesh(int vertexCount,
- const float vertices[], // x0, y0, x1, y1, ...
- const float texCoords[], // tx0, ty0, tx1, ty1, ...
- int indexCount,
- const uint16_t indices[]);
-
-
class RenderPaint {
public:
virtual void style(RenderPaintStyle style) = 0;
@@ -135,7 +118,12 @@
virtual void drawPath(RenderPath* path, RenderPaint* paint) = 0;
virtual void clipPath(RenderPath* path) = 0;
virtual void drawImage(RenderImage*, BlendMode, float opacity) = 0;
- virtual void drawMesh(const RenderMesh*, const RenderShader*, BlendMode, float opacity) = 0;
+ virtual void drawImageMesh(const RenderImage*,
+ rcp<RenderBuffer> vertices_f32,
+ rcp<RenderBuffer> uvCoords_f32,
+ rcp<RenderBuffer> indices_u16,
+ BlendMode,
+ float opacity) = 0;
// helpers