void R_BufferData_Reset(void);
/// begin a new frame (recycle old buffers)
void R_BufferData_NewFrame(void);
-/// request space in a vertex/index/uniform buffer for the chosen data, returns the buffer pointer and offset, if allowfail is true it may return NULL if the growth limit has been reached, false will cause it to allocate additional memory despite this (warning: may run out of memory)
-r_meshbuffer_t *R_BufferData_Store(size_t size, void *data, r_bufferdata_type_t type, int *returnbufferoffset, qboolean allowfail);
+/// request space in a vertex/index/uniform buffer for the chosen data, returns the buffer pointer and offset, always successful
+r_meshbuffer_t *R_BufferData_Store(size_t size, void *data, r_bufferdata_type_t type, int *returnbufferoffset);
/// free all R_AnimCache memory
void R_AnimCache_Free(void);
int entityskeletaltransform3x4size;
float *modelvertex3f;
const r_meshbuffer_t *modelvertex3f_vertexbuffer;
- size_t modelvertex3f_bufferoffset;
+ int modelvertex3f_bufferoffset;
float *modelsvector3f;
const r_meshbuffer_t *modelsvector3f_vertexbuffer;
- size_t modelsvector3f_bufferoffset;
+ int modelsvector3f_bufferoffset;
float *modeltvector3f;
const r_meshbuffer_t *modeltvector3f_vertexbuffer;
- size_t modeltvector3f_bufferoffset;
+ int modeltvector3f_bufferoffset;
float *modelnormal3f;
const r_meshbuffer_t *modelnormal3f_vertexbuffer;
- size_t modelnormal3f_bufferoffset;
+ int modelnormal3f_bufferoffset;
float *modellightmapcolor4f;
const r_meshbuffer_t *modellightmapcolor4f_vertexbuffer;
- size_t modellightmapcolor4f_bufferoffset;
+ int modellightmapcolor4f_bufferoffset;
float *modeltexcoordtexture2f;
const r_meshbuffer_t *modeltexcoordtexture2f_vertexbuffer;
- size_t modeltexcoordtexture2f_bufferoffset;
+ int modeltexcoordtexture2f_bufferoffset;
float *modeltexcoordlightmap2f;
const r_meshbuffer_t *modeltexcoordlightmap2f_vertexbuffer;
- size_t modeltexcoordlightmap2f_bufferoffset;
+ int modeltexcoordlightmap2f_bufferoffset;
unsigned char *modelskeletalindex4ub;
const r_meshbuffer_t *modelskeletalindex4ub_vertexbuffer;
- size_t modelskeletalindex4ub_bufferoffset;
+ int modelskeletalindex4ub_bufferoffset;
unsigned char *modelskeletalweight4ub;
const r_meshbuffer_t *modelskeletalweight4ub_vertexbuffer;
- size_t modelskeletalweight4ub_bufferoffset;
+ int modelskeletalweight4ub_bufferoffset;
r_vertexmesh_t *modelvertexmesh;
- const r_meshbuffer_t *modelvertexmeshbuffer;
- const r_meshbuffer_t *modelvertex3fbuffer;
+ const r_meshbuffer_t *modelvertexmesh_vertexbuffer;
+ int modelvertexmesh_bufferoffset;
int *modelelement3i;
const r_meshbuffer_t *modelelement3i_indexbuffer;
- size_t modelelement3i_bufferoffset;
+ int modelelement3i_bufferoffset;
unsigned short *modelelement3s;
const r_meshbuffer_t *modelelement3s_indexbuffer;
- size_t modelelement3s_bufferoffset;
+ int modelelement3s_bufferoffset;
int *modellightmapoffsets;
int modelnumvertices;
int modelnumtriangles;
int batchfirsttriangle;
int batchnumtriangles;
r_vertexmesh_t *batchvertexmesh;
- const r_meshbuffer_t *batchvertexmeshbuffer;
- const r_meshbuffer_t *batchvertex3fbuffer;
+ const r_meshbuffer_t *batchvertexmesh_vertexbuffer;
+ int batchvertexmesh_bufferoffset;
float *batchvertex3f;
const r_meshbuffer_t *batchvertex3f_vertexbuffer;
- size_t batchvertex3f_bufferoffset;
+ int batchvertex3f_bufferoffset;
float *batchsvector3f;
const r_meshbuffer_t *batchsvector3f_vertexbuffer;
- size_t batchsvector3f_bufferoffset;
+ int batchsvector3f_bufferoffset;
float *batchtvector3f;
const r_meshbuffer_t *batchtvector3f_vertexbuffer;
- size_t batchtvector3f_bufferoffset;
+ int batchtvector3f_bufferoffset;
float *batchnormal3f;
const r_meshbuffer_t *batchnormal3f_vertexbuffer;
- size_t batchnormal3f_bufferoffset;
+ int batchnormal3f_bufferoffset;
float *batchlightmapcolor4f;
const r_meshbuffer_t *batchlightmapcolor4f_vertexbuffer;
- size_t batchlightmapcolor4f_bufferoffset;
+ int batchlightmapcolor4f_bufferoffset;
float *batchtexcoordtexture2f;
const r_meshbuffer_t *batchtexcoordtexture2f_vertexbuffer;
- size_t batchtexcoordtexture2f_bufferoffset;
+ int batchtexcoordtexture2f_bufferoffset;
float *batchtexcoordlightmap2f;
const r_meshbuffer_t *batchtexcoordlightmap2f_vertexbuffer;
- size_t batchtexcoordlightmap2f_bufferoffset;
+ int batchtexcoordlightmap2f_bufferoffset;
unsigned char *batchskeletalindex4ub;
const r_meshbuffer_t *batchskeletalindex4ub_vertexbuffer;
- size_t batchskeletalindex4ub_bufferoffset;
+ int batchskeletalindex4ub_bufferoffset;
unsigned char *batchskeletalweight4ub;
const r_meshbuffer_t *batchskeletalweight4ub_vertexbuffer;
- size_t batchskeletalweight4ub_bufferoffset;
+ int batchskeletalweight4ub_bufferoffset;
int *batchelement3i;
const r_meshbuffer_t *batchelement3i_indexbuffer;
- size_t batchelement3i_bufferoffset;
+ int batchelement3i_bufferoffset;
unsigned short *batchelement3s;
const r_meshbuffer_t *batchelement3s_indexbuffer;
- size_t batchelement3s_bufferoffset;
+ int batchelement3s_bufferoffset;
int batchskeletalnumtransforms;
float *batchskeletaltransform3x4;
const r_meshbuffer_t *batchskeletaltransform3x4buffer; // uniform buffer
// rendering pass processing arrays in GL11 and GL13 paths
float *passcolor4f;
const r_meshbuffer_t *passcolor4f_vertexbuffer;
- size_t passcolor4f_bufferoffset;
+ int passcolor4f_bufferoffset;
// some important fields from the entity
int ent_skinnum;