@@ -84,6 +84,24 @@ inline char charFromValue(const Napi::CallbackInfo& info, int index) {
8484 return info[index].As <Napi::Number>().Uint32Value ();
8585}
8686
87+ // exception for this constructor, which has different input depending on platform
88+ inline rlVertexBuffer rlVertexBufferFromValue (const Napi::CallbackInfo& info, int index) {
89+ return {
90+ intFromValue (info, index + 0 ),
91+ (float *) pointerFromValue (info, index + 1 ),
92+ (float *) pointerFromValue (info, index + 2 ),
93+ (unsigned char *) pointerFromValue (info, index + 3 ),
94+ #if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33)
95+ (unsigned int *) pointerFromValue (info, index + 4 ), // Vertex indices (in case vertex data comes indexed) (6 indices per quad)
96+ #endif
97+ #if defined(GRAPHICS_API_OPENGL_ES2)
98+ (unsigned short *) pointerFromValue (info, index + 4 ), // Vertex indices (in case vertex data comes indexed) (6 indices per quad)
99+ #endif
100+ unsignedintFromValue (info, index + 5 ),
101+ (unsigned int ) pointerFromValue (info, index + 6 )
102+ };
103+ }
104+
87105// Convert structs from Napi::Values in info[] arguments
88106
89107inline Vector2 Vector2FromValue (const Napi::CallbackInfo& info, int index) {
@@ -369,18 +387,6 @@ inline FilePathList FilePathListFromValue(const Napi::CallbackInfo& info, int in
369387 };
370388}
371389
372- inline rlVertexBuffer rlVertexBufferFromValue (const Napi::CallbackInfo& info, int index) {
373- return {
374- intFromValue (info, index + 0 ),
375- (float *) pointerFromValue (info, index + 1 ),
376- (float *) pointerFromValue (info, index + 2 ),
377- (unsigned char *) pointerFromValue (info, index + 3 ),
378- (unsigned int *) pointerFromValue (info, index + 4 ),
379- unsignedintFromValue (info, index + 5 ),
380- (unsigned int ) pointerFromValue (info, index + 6 )
381- };
382- }
383-
384390inline rlDrawCall rlDrawCallFromValue (const Napi::CallbackInfo& info, int index) {
385391 return {
386392 intFromValue (info, index + 0 ),
0 commit comments