summaryrefslogtreecommitdiff
path: root/rsVertexArray.h
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2010-06-25 12:45:41 -0700
committerJason Sams <rjsams@android.com>2010-06-25 12:45:41 -0700
commit760f1f7335ad0c5aee59ca829a40bbf6e3328a1b (patch)
treeee0e5ed23eb41f716d6ed5efb7993770fa7c7bfa /rsVertexArray.h
parentc9b8d1ca3e02d1bd06b08e8f64a01be9270a880e (diff)
downloadrs-760f1f7335ad0c5aee59ca829a40bbf6e3328a1b.tar.gz
Add support for non-VBO drawing in Meshes.
Change-Id: Ic4dd88cbe591091ebe740babe30213c15ad60cb3
Diffstat (limited to 'rsVertexArray.h')
-rw-r--r--rsVertexArray.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/rsVertexArray.h b/rsVertexArray.h
index e5b51d7f..7c609b26 100644
--- a/rsVertexArray.h
+++ b/rsVertexArray.h
@@ -37,6 +37,7 @@ public:
class Attrib {
public:
uint32_t buffer;
+ const uint8_t * ptr;
uint32_t offset;
uint32_t type;
uint32_t size;
@@ -51,7 +52,15 @@ public:
void clearAll();
- void setActiveBuffer(uint32_t id) {mActiveBuffer = id;}
+ void setActiveBuffer(uint32_t id) {
+ mActiveBuffer = id;
+ mActivePointer = NULL;
+ }
+ void setActiveBuffer(const void *ptr) {
+ mActiveBuffer = 0;
+ mActivePointer = (const uint8_t *)ptr;
+ }
+
void add(const Attrib &, uint32_t stride);
//void addLegacy(uint32_t type, uint32_t size, uint32_t stride, bool normalized, uint32_t offset);
void add(uint32_t type, uint32_t size, uint32_t stride, bool normalized, uint32_t offset, const char *name);
@@ -63,6 +72,7 @@ public:
protected:
void clear(uint32_t index);
uint32_t mActiveBuffer;
+ const uint8_t * mActivePointer;
uint32_t mCount;
Attrib mAttribs[RS_MAX_ATTRIBS];