GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
GameApi_low.hh
Go to the documentation of this file.
1
2// DO NOT PUT ANY INCLUDE HERE.
3
4#ifndef GAMEAPI_LOW_H
5#define GAMEAPI_LOW_H
6
7
8#ifdef WINDOWS
9#ifdef GAMEAPI_EXPORTS
10#define IMPORT __declspec(dllexport)
11#else
12#define IMPORT __declspec(dllimport)
13#endif
14#define EXPORT
15#else
16
17#ifdef GAMEAPI_EXPORTS
18#define IMPORT __attribute__((visibility("default")))
19#else
20#define IMPORT
21#endif
22#define EXPORT
23
24/*
25#ifndef __clang__
26#define IMPORT
27#define EXPORT
28#else
29#ifdef GAMEAPI_COMPILATION
30#define IMPORT __declspec(dllexport)
31#define EXPORT __declspec(dllexport)
32#else
33#define IMPORT
34#define EXPORT
35#endif
36#endif
37*/
38#endif
39
40
41
42typedef unsigned int Low_GLuint;
43typedef void Low_GLvoid;
44typedef unsigned int Low_GLenum;
45typedef float Low_GLfloat;
46typedef int Low_GLsizei;
47typedef int Low_GLint;
48// old
49typedef signed char Low_GLbyte;
50typedef short Low_GLshort;
51enum
52 {
53 Low_GL_ARRAY_BUFFER=555, // glBindBuffer 1st arg, glBufferData 1st arg, glBufferSubData 1st arg
54 Low_GL_FLOAT, // glVertexAttribPointer 3rd arg
55 Low_GL_INT, // glVertexAttribIPointer 3rd arg
56 Low_GL_FALSE, // glVertexAttribPointer 4th arg
57 Low_GL_TRIANGLES, // glDrawArrays / glDrawArraysInstanced 1st arg
58 Low_GL_TRIANGLE_STRIP, // glDrawArrays 1st arg
59 Low_GL_UNSIGNED_BYTE, // glVertexAttribPointer 3rd arg, glReadPixels 6tth param
60 Low_GL_QUADS, // glDrawArrays
61 Low_GL_DEPTH_TEST, // glEnable / glDisable
62 Low_GL_STATIC_DRAW, // glBufferData 4th param
63 Low_GL_DYNAMIC_DRAW, // glBufferData 4th param
64 Low_GL_TEXTURE0, // glClientActiveTexture 1st param (+n)
65 Low_GL_TEXTURE1, // glClientActiveTexture 1st param (+n)
66 Low_GL_TEXTURE2, // glClientActiveTexture 1st param (+n)
67 Low_GL_TEXTURE3, // glClientActiveTexture 1st param (+n)
68 Low_GL_TEXTURE4, // glClientActiveTexture 1st param (+n)
69 Low_GL_TEXTURE5, // glClientActiveTexture 1st param (+n)
70 Low_GL_TEXTURE6, // glClientActiveTexture 1st param (+n)
71 Low_GL_TEXTURE7, // glClientActiveTexture 1st param (+n)
72 Low_GL_TEXTURE8, // glClientActiveTexture 1st param (+n)
73 Low_GL_TEXTURE9, // glClientActiveTexture 1st param (+n)
74 Low_GL_TEXTURE10, // glClientActiveTexture 1st param (+n)
75 Low_GL_TEXTURE11, // glClientActiveTexture 1st param (+n)
76 Low_GL_TEXTURE12, // glClientActiveTexture 1st param (+n)
77 Low_GL_TEXTURE13, // glClientActiveTexture 1st param (+n)
78 Low_GL_TEXTURE14, // glClientActiveTexture 1st param (+n)
79 Low_GL_TEXTURE15, // glClientActiveTexture 1st param (+n)
80 Low_GL_TEXTURE16, // glClientActiveTexture 1st param (+n)
81 Low_GL_TEXTURE17, // glClientActiveTexture 1st param (+n)
82 Low_GL_TEXTURE18, // glClientActiveTexture 1st param (+n)
83 Low_GL_TEXTURE19, // glClientActiveTexture 1st param (+n)
84 Low_GL_TEXTURE20, // glClientActiveTexture 1st param (+n)
85
86 Low_GL_TEXTURE_2D, // glBindTexture, glTexImage2D
89 Low_GL_LINEAR, // glTexParameteri 3th param
90 Low_GL_TEXTURE_MIN_FILTER, // glTexParameteri 2nd param
91 Low_GL_TEXTURE_MAG_FILTER, // glTexParameteri 2nd param
92 Low_GL_TEXTURE_WRAP_S, // glTexParameteri 2nd param
93 Low_GL_CLAMP_TO_EDGE, // glTexParameteri 3rd param
94 Low_GL_TEXTURE_WRAP_T, // glTexParamteri 2nd param
96 Low_GL_NICEST, // hlHint 2nd param
97 Low_GL_RED, // glTexImage2D 3rd param
98 Low_GL_RENDERBUFFER, // glBindRenderBuffer, glRenderbufferStorage, glFramebufferRenderbuffer
99 Low_GL_FRAMEBUFFER, // ..., glCheckFramebufferStatus
100 Low_GL_TRUE, // glDepthMask
102 Low_GL_RGBA, // glGetTexImage 3rd param, glReadPixels 5th param
104 Low_GL_SCISSOR_TEST, // glEnable/glDisable
105 Low_GL_FRAMEBUFFER_COMPLETE, // glCheckFramebufferStatus return value
106 Low_GL_NEAREST, // glTexParameteri 3rd param
107 Low_GL_DEPTH_COMPONENT16, // glRenderbufferStorage 2nd param
108 Low_GL_DEPTH_ATTACHMENT, // glFramebufferRenderbuffer 2nd param
109 Low_GL_COLOR_ATTACHMENT0, // glFramebufferTexture2D 2nd param
110 Low_GL_VIEWPORT, // glGetIntegerv
111 Low_GL_SRC_ALPHA, // glBlendFunc 1st param
112 Low_GL_ONE_MINUS_SRC_ALPHA, // glBlendFunc 2nd param
119 //GL_ONE_MINUS_SRC_ALPHA,
124 Low_GL_CONSTANT_ALPHA, // glBlendFunc 1st AND 2ND ARG
125 Low_GL_LIGHTING, // glDisable/glEnable
126 Low_GL_MODELVIEW, // glMatrixMode
127 Low_GL_TEXTURE_ENV, // glTexEnvi
128 Low_GL_BLEND, // glEnable
129 Low_GL_ALWAYS, // glStencilFunc
130 Low_GL_KEEP, // glStencilOp 1,2
131 Low_GL_REPLACE, // glStencilOp
132 Low_GL_NOTEQUAL, // glStencilFunc
133 Low_GL_FRONT_AND_BACK, // glPolygonMode 1st param
134 Low_GL_LINE, // glPolygonMode 2nd param
135 Low_GL_FILL, // glPolygonMode 2nd param
136 Low_GL_STENCIL_TEST, // glDisable 1st
137 Low_GL_LEQUAL, // glDepthFunc
139 //GL_ALWAYS,
171 Low_GL_LINEAR_MIPMAP_LINEAR, // glTexParameteri 3th param
189 Low_GL_NEAREST_MIPMAP_LINEAR, // glTexParameteri 3th param
191 //
192 // OLD STUFF
193 //
214 };
215enum {
219};
220
221#undef glActiveTexture
222#undef glClientActiveTexture
223#undef glTexStorage3d
224#undef glTexSubImage3d
225#undef glGenBuffers
226#undef glDeleteBuffers
227#undef glBindBuffer
228#undef glBufferData
229#undef glBufferSubData
230#undef glVertexAttribPointer
231#undef glVertexAttribIPointer
232#undef glVertexAttribDivisor
233#undef glGenVertexArrays
234#undef glDeleteVertexArrays
235#undef glBindVertexArray
236#undef glEnableVertexAttribArray
237#undef glDisableVertexAttribArray
238#undef glTexStorate3d
239#undef glTexSubImage3d
240#undef glDrawArraysInstanced
241#undef glGenFramebuffers
242#undef glBindFramebuffer
243#undef glBindRenderbuffer
244#undef glFramebufferRenderbuffer
245#undef glCreateShader
246#undef glShaderSource
247#undef glCompileShader
248#undef glGetShaderInfoLog
249#undef glGetShaderiv
250#undef glDeleteShader
251#undef glCreaeProgram
252#undef glDeleteProgram
253#undef glAttachhader
254#undef glDetachShader
255#undef glLinkProgram
256#undef glUseProgram
257#undef glGetProgramInfoLog
258#undef glGetProgramiv
259#undef glBindFragDataLocation
260#undef glProgramParameteriEXT
261#undef glGetUniformLocation
262#undef glUniform1f
263#undef glUniform2f
264#undef glUniform3f
265#undef glUniform4f
266#undef glRenderbufferStorage
267#undef glShaderSource
268#undef glGetShaderInfoLog
269#undef glCreateProgram
270#undef glAttachShader
271#undef glGetProgramInfoLog
272#undef glUniform1iv
273#undef glUniform1fv
274#undef glUniformMatrix4fv
275#undef glUniform3fv
276#undef glTexStorage3D
277#undef glTexSubImage3D
278#undef glGetAttribLocation
279#undef glDepthFunc
280#undef glAlphaFunc
281#undef glDrawArrays
282#undef glDrawElements
283#undef glDrawElementsInstanced
284#undef glTexImage2D
285#undef glTexSubImage2D
286#undef glMapBuffer
287#undef glUnmapBuffer
288#undef Mix_PlayChannel
289#undef Mix_HaltChannel
290#undef Mix_GetError
291#undef emscripten_set_touchend_callback
292#undef emscripten_set_click_callback
293#undef glGenerateMipmap
294#undef glFrontFace
295#undef glDebugMessageCallback
296#undef glDebugMessageControl
297
299{
300public:
301 virtual void init()=0;
302 virtual void cleanup()=0;
303
304 virtual int glGetError()=0;
305
306 virtual void glColor4ub(int r, int g, int b, int a)=0;
307 virtual void glColor4f(float r, float g, float b, float a)=0;
308 virtual void glClearColor(float r, float g, float b, float a)=0;
309 virtual void glClear(int bits)=0;
310 virtual void glDepthMask(int a)=0;
311 virtual void glDepthFunc(int i)=0;
312 virtual void glAlphaFunc(int i, float val)=0;
313 virtual void glStencilMask(int a)=0;
314 virtual void glStencilOp(int keep, int keep2, int repl)=0;
315 virtual void glStencilFunc(int notequal, int, int)=0;
316 virtual void glPolygonMode(int front_and_back, int gl_line)=0;
317 virtual void glClearStencil(int val)=0;
318 virtual void glTexEnvi(int a, int mode, int rep)=0;
319
320 // attribs
321 virtual void glEnable(int val)=0;
322 virtual void glDisable(int val)=0;
323 virtual void glGetFloatv(int val, float *params)=0;
324
325 // viewports
326 virtual void glViewport(int x, int y, unsigned int w, unsigned int h)=0;
327
328 // textures
329 virtual void glGenTextures(int val, unsigned int *tex)=0;
330 virtual void glDeleteTextures(int val, const unsigned int *tex)=0;
331 virtual void glBindTexture(int ID, int tex)=0;
332 virtual void glTexImage2D(int ID, int, int,unsigned int,unsigned int, int, int, int, void *ptr)=0;
333 virtual void glTexSubImage2D(int ID, int,int,int,unsigned int, unsigned int, int,int, void *ptr)=0;
334 virtual void glCopyTexImage2D(int ID, int,int,int,int, int,int, int ptr)=0;
335 virtual void glTexParameteri(int ID, int,int)=0;
336 virtual void glHint(int hint, int value)=0;
337 virtual void glActiveTexture(int a)=0;
338 virtual void glClientActiveTexture(int a)=0;
339 virtual void glTexStorage3D(int arr, int, int flag, int w, int h, int layer_count)=0;
340 virtual void glTexSubImage3D(int arr, int,int,int,int,int,int, int, int rgba, int unsig_byte, void *buffer)=0;
341 virtual void glGetTexLevelParameteriv(int a, int, int w, int *ptr)=0;
342 virtual void glGetTexImage(int a, int, int rgba, int unsign_byte, void *ptr)=0;
343 virtual void glReadBuffer(int a)=0;
344 virtual void glDrawBuffer(int s)=0;
345 virtual void glDrawBuffers(int n, const unsigned int *bufs)=0;
346
347 // blend
348 virtual void glBlendFunc(int val, int val2)=0;
349
350 // scissor
351 virtual void glScissor(float x, float y, float w, float h)=0;
352
353 // fbo
354 //virtual void glGenRenderbuffers(int i, unsigned int *ptr)=0;
355 virtual void glFramebufferTexture2D(int i, int atth, int tex2d, int tex, int ptr)=0;
356
357 // vertex arrays
358 virtual void glGenBuffers(int i, unsigned int *buffers)=0;
359 virtual void glDeleteBuffers(int count, const unsigned int *buffers)=0;
360 virtual void glBindBuffer(int a, unsigned int data)=0;
361 virtual void glBufferData(int a, int size, const void *ptr, int static_draw)=0;
362 virtual void glBufferSubData(int a, int, int, const void*)=0;
363 virtual void glVertexAttribPointer(int, int, int gl_float, int boolean, unsigned int, const void *ptr)=0;
364 virtual void glVertexAttribIPointer(int, int, int gl_float, int boolean, const void *ptr)=0;
365 virtual void glVertexAttribDivisor(int, int)=0;
366 virtual void glGenVertexArrays(int i, unsigned int *arr)=0;
367 virtual void glDeleteVertexArrays(int count, unsigned int *vao)=0;
368 virtual void glBindVertexArray(int vao)=0;
369 virtual void glEnableVertexAttribArray(int a)=0;
370 virtual void glDisableVertexAttribArray(int a)=0;
371 virtual void glDrawArraysInstanced(int tri, int, unsigned int, unsigned int)=0;
372 virtual void glDrawArrays(int tri, int, unsigned int)=0;
373 virtual void glDrawElements(int tri, int a, int type, void *indices)=0;
374 virtual void glDrawElementsInstanced(int tri, int a, int type, void *indices, int size)=0;
375
376 // bitmaps
377 virtual void glReadPixels(int x, int y, int w, int h, int rgba, int mode, void *ptr)=0;
378
379 // fbo
380 virtual void glGenFramebuffers(int i, unsigned int *fbo_id)=0;
381 virtual void glGenRenderbuffers(int i, unsigned int *rbo_id)=0;
382 virtual void glDeleteRenderBuffers(int i, unsigned int *rbo)=0;
383 virtual void glDeleteFrameBuffers(int i, unsigned int *fbo)=0;
384 virtual void glBindFramebuffer(int a, int fbo_id)=0;
385 virtual void glBindRenderbuffer(int a, int fbo_id)=0;
386 virtual void glRenderbufferStorage(int a, int d, int sx, int sy)=0;
387 virtual void glFramebufferRenderbuffer(int a, int d, int r, unsigned int tex)=0;
388
389 // shaders
390 virtual unsigned int glCreateShader(int shader)=0;
391 virtual void glShaderSource(int h, int c, const char **strings, int *lengths)=0;
392 virtual void glCompileShader(int h)=0;
393 virtual void glGetShaderInfoLog(unsigned int h, int val, int *length, char *buf)=0;
394 virtual void glGetShaderiv(int handle, int gl_compile_status, int *ptr)=0;
395 virtual void glDeleteShader(int h)=0;
396
397 // programs
398 virtual int glCreateProgram()=0;
399 virtual void glDeleteProgram(int p)=0;
400 virtual void glAttachShader(int p, int h)=0;
401 virtual void glDetachShader(int p, int h)=0;
402 virtual void glLinkProgram(int p)=0;
403 virtual void glUseProgram(int p)=0;
404 virtual void glGetProgramInfoLog(unsigned int p, int num, int *len, char *buf)=0;
405 //virtual void glGetProgramiv(unsigned int p, int pname, int *params)=0;
406 virtual void glBindFragDataLocation(int p, int num, const char *data)=0;
407 virtual void glBindAttribLocation(int p, int num, const char *data)=0;
408 virtual void glProgramParameteriEXT(int p, int geom, int inputtype)=0;
409
410 // uniforms
411 virtual int glGetUniformLocation(int p, const char *data)=0;
412 virtual int glGetAttribLocation(int p, const char *data)=0;
413 virtual void glUniform1f(int loc, float val)=0;
414 virtual void glUniform1i(int loc, int val)=0;
415 virtual void glUniform2f(int loc, float val, float val2)=0;
416 virtual void glUniform3f(int loc, float val, float val2, float val3)=0;
417 virtual void glUniform4f(int loc, float val, float val2, float val3, float val4)=0;
418 virtual void glUniform1iv(int loc, int count, int *array)=0;
419 virtual void glUniform1fv(int loc, int count, float *array)=0;
420 virtual void glUniformMatrix4fv(int loc, unsigned int count, int boolean, const float *matrix)=0;
421 virtual void glUniform3fv(int loc, int count, float *arr)=0;
422 virtual void glGetUniformfv(int p, int loc, float *arr)=0;
423 virtual void glGetIntegerv(int p, int *ptr)=0;
424 virtual int glCheckFramebufferStatus(int id)=0;
425
426 virtual void glFinish()=0;
427
428 virtual const unsigned char *glGetString( int name )=0;
429 virtual void glGenerateMipmap(int p)=0;
430
431 virtual void glCullFace(int mode)=0;
432 virtual void glFrontFace(int mode)=0;
433 virtual void* glMapBuffer(int a, int b)=0;
434 virtual void glUnmapBuffer(int a)=0;
435
436 // Old
437 virtual void glEnableClientState(int a)=0;
438 virtual void glLineWidth(float i)=0;
439 virtual void glPushMatrix()=0;
440 virtual void glPopMatrix()=0;
441 virtual void glMultMatrixf(float *mat)=0;
442 virtual void glMatrixLoadIdentityEXT(int i)=0;
443 virtual void glMatrixMode(int i)=0;
444 virtual void glLoadIdentity()=0;
445 virtual void glTranslatef(float, float, float)=0;
446 virtual void glDisableClientState(int) { }
447 virtual void glTexCoordPointer(int,int,int, void*) { }
448 virtual void glColorPointer(int,int,int,void*) { }
449 virtual void glVertexPointer(int,int,int,void*) { }
450 virtual void glNormalPointer(int,int,void*) { }
451 virtual void glRotatef(float,float,float,float) {}
452 //virtual void glEnableClientState(int) { }
453 //virtual void glDisableClientState(int) { }
454 virtual void glColor3f(float,float,float) { }
455 virtual void glCallList(int) { }
456 virtual void glEndList() { }
457 virtual void glEnd() { }
458 virtual void glVertex3f(float,float,float) { }
459 virtual void glNormal3f(float,float,float) { }
460 virtual void glTexCoord2f(float,float) { }
461 virtual void glVertexAttrib1s(int loc, short s) {}
462 virtual void glVertexAttrib1f(int loc, float s) {}
463 virtual void glBegin(int) { }
464 virtual void glNewList(int i, int k) { }
465 virtual int glGenLists(int) { return 0; }
466 virtual void glDeleteLists(int,int) {}
467
468 virtual void glDebugMessageCallback(void (*)(unsigned int source,
469 unsigned int type,
470 unsigned int id,
471 unsigned int severity,
472 int length,
473 const char *message,
474 const void *userParam),
475 const void *userParam)=0;
476 virtual void glDebugMessageControl(unsigned int source,
477 unsigned int type,
478 unsigned int severity,
479 int count,
480 const unsigned int *ids,
481 int enabled)=0;
482};
483
485{
486 virtual void init()=0;
487 virtual void cleanup()=0;
488};
489
491{
492 virtual void init()=0;
493 virtual void cleanup()=0;
494};
495
497{
498public:
499 virtual void init()=0;
500 virtual void cleanup()=0;
501 virtual void emscripten_set_main_loop_arg(void (*)(void*), void*, int, int)=0;
502 virtual void emscripten_async_wget_data(void *buf2, void *data, void (*cb_sucess)(void*), void (*cb_fail)(void*))=0;
504 virtual void emscripten_async_call(void (*)(void*), void *data, int val)=0;
505 virtual void emscripten_set_click_callback(char *c, int a, bool true_, void (*)())=0;
506 virtual void emscripten_set_touchend_callback(char *c, int a, bool true_, void (*)())=0;
508 virtual void *emscripten_webgl_create_context(int i, void *attr)=0;
509 virtual void emscripten_webgl_make_context_current(void *ctx)=0;
510};
512{
513 virtual void init()=0;
514 virtual void cleanup()=0;
515 virtual void emscripten_vr_init(void (*)(void*), void*)=0;
516 virtual void emscripten_vr_submit_frame(int disp)=0;
517 virtual void emscripten_vr_get_frame_data(int disp, void *data)=0;
518 virtual bool emscripten_vr_display_presenting(int disp)=0;
519 virtual void emscripten_vr_set_display_render_loop_arg(int disp, void (*)(void*), void* data)=0;
520 virtual void emscripten_vr_exit_present(int disp)=0;
521 virtual void emscripten_vr_cancel_display_render_loop(int disp)=0;
522 virtual void emscripten_vr_request_present(int disp, void *init, int, void (*cb)(void*), void *data)=0;
523 virtual bool emscripten_vr_ready()=0;
524 virtual int emscripten_vr_count_displays()=0;
525 virtual int emscripten_vr_get_display_handle(int i)=0;
526 virtual char *emscripten_vr_get_display_name( int d ) =0;
527 virtual int emscripten_vr_get_display_capabilities( int d, void *caps )=0;
528 virtual int emscripten_vr_display_connected( int d) =0;
529 virtual void emscripten_vr_get_eye_parameters(int d, int left, void *ptr)=0;
530};
531
533{
534 virtual void init()=0;
535 virtual void cleanup()=0;
536 virtual void popen(char *name, char *flags);
537};
538
540{
541 virtual void init()=0;
542 virtual void cleanup()=0;
543
544};
545
546enum
547 {
548 Low_SDL_NONE = 0x5500,
577 };
578
579#define Low_SDL_FINGERDOWN 0x700
580#define Low_SDL_FINGERUP 0x701
581#define Low_SDL_FINGERMOTION 0x702
582#define Low_SDL_MOUSEWHEEL 0x403
583#define Low_SDL_DROPFILE 0x1000
584#define Low_SDL_WINDOWEVENT 0x200
585#define Low_SDL_JOYAXISMOTION 0x600
586#define Low_SDL_JOYBALLMOTION 0x601
587#define Low_SDL_JOYBUTTONDOWN 0x603
588#define Low_SDL_JOYBUTTONUP 0x604
589#define Low_SDL_MOUSEBUTTONDOWN 0x401
590#define Low_SDL_MOUSEBUTTONUP 0x402
591#define Low_SDL_KEYUP 0x301
592#define Low_SDL_KEYDOWN 0x300
593
594#define Low_SDL_WINDOWEVENT_EXPOSED 3
595
596#define Low_SDL_BUTTON(x) (1 << ((x)-1))
597#define Low_KMOD_CTRL (0x40|0x80)
598
599struct wl_display;
600struct wl_surface;
601struct wl_shell_surface;
602
604{
605 wl_display *display=0;
606 wl_surface *surface=0;
607 wl_shell_surface *shell_surface=0;
608};
609
611{
612 int w=0,h=0;
613};
614
616{
617 int sym=-1;
618};
625{
626 int y=0;
627};
629{
630 int button=-1;
631};
633{
634 const char *file=0;
635};
637{
638 float x = 0.0f;
639 float y = 0.0f;
640};
642{
643 int event=-1;
644 int data1=-1, data2=-1;
645};
646
648{
649 int ball=-1;
650 int xrel=-1;
651 int yrel=-1;
652};
654{
655 int value=-1;
656 int axis=-1;
657};
659{
660 int button=-1;
661};
662
676
677struct Low_SDL_Cursor { void *ptr; };
678
679struct Low_SDL_Surface { void *ptr; int w; int h; void* pixels; int pitch; };
680struct Low_SDL_Window { void *ptr; };
681typedef void* Low_SDL_GLContext;
682typedef unsigned int Low_SDL_Keymod;
684{
685 void *data=0;
686};
687//typedef void* Low_SDL_RWops;
688
690{
691 void *ptr=0;
692};
693
694typedef void (*Low_SDL_AudioCallback)(void*, unsigned char*, int);
695
697{
698 int freq=0;
699 int format=0;
700 unsigned char channels=0;
701 unsigned char silence=0;
702 unsigned short samples=0;
703 unsigned int size=0;
705 void *userdata=0;
706};
707
709{
710public:
711 virtual ~SDLLowApi();
712 virtual void init()=0;
713 virtual void cleanup()=0;
714 virtual void SDL_Init(int flags)=0;
715 virtual void SDL_GetCurrentDisplayMode(int index, Low_SDL_DisplayMode *mode)=0;
716 virtual const char *SDL_GetCurrentVideoDriver()=0;
718 virtual void SDL_GL_SetAttribute(int flag, int val)=0;
719 virtual void SDL_SetHint(const char *flag, const char *str)=0;
720 virtual void* SDL_GL_GetProcAddress(char *name)=0;
721 virtual void SDL_Quit()=0;
722 virtual void SDL_ConvertSurface(Low_SDL_Surface *surf, void *format, int val)=0;
723 virtual void SDL_FreeSurface(Low_SDL_Surface *surf)=0;
724 virtual void SDL_LockSurface(Low_SDL_Surface *surf)=0;
725 virtual void SDL_UnlockSurface(Low_SDL_Surface *surf)=0;
726 virtual void SDL_ShowCursor(bool b)=0;
727 virtual Low_SDL_Cursor* SDL_CreateCursor(const unsigned char *data,
728 const unsigned char *mask,
729 int w, int h,
730 int hot_x, int hot_y)=0;
731 virtual void SDL_SetCursor(Low_SDL_Cursor *cursor)=0;
732 virtual void SDL_FreeCursor(Low_SDL_Cursor *cursor)=0;
733 virtual int SDL_PollEvent(Low_SDL_Event *event)=0;
734 virtual unsigned int SDL_GetTicks()=0;
735 virtual unsigned long long SDL_GetPerformanceCounter()=0;
736 virtual unsigned long long SDL_GetPerformanceFrequency()=0;
737 virtual void SDL_Delay(int ms)=0;
739 virtual Low_SDL_Window* SDL_CreateWindow(const char *title, int x, int y, int width, int height, unsigned int flags2)=0;
741 virtual void SDL_SetWindowFullscreen(Low_SDL_Window *window, int val)=0;
742 virtual int SDL_GL_MakeCurrent(Low_SDL_Window *window, Low_SDL_GLContext context)=0;
743 virtual void SDL_GL_SetSwapInterval(int val)=0;
744 virtual void SDL_GetWindowSize(Low_SDL_Window *window, int *w, int *h)=0;
745 //virtual void SDL_GL_SwapBuffers()=0;
746 virtual void SDL_GL_SwapWindow(Low_SDL_Window *window)=0;
747 virtual void SDL_PumpEvents()=0;
749 virtual void SDL_DestroyWindow(Low_SDL_Window *window)=0;
750 virtual void SDL_SetWindowTitle(Low_SDL_Window *window, const char *title)=0;
751 virtual unsigned int SDL_GetMouseState(int *x, int *y)=0;
752 virtual unsigned int SDL_GetModState()=0;
753 virtual int SDL_NumJoysticks()=0;
755 virtual void SDL_JoystickEventState(int i)=0;
756 virtual unsigned int SDL_JoystickGetButton(Low_SDL_Joystick *joy, int i)=0;
757 virtual Low_SDL_RWops* SDL_RWFromFile(const char *file, const char *mode)=0;
758 virtual Low_SDL_RWops* SDL_RWFromMem(void *buffer, int size)=0;
760 virtual const char *SDL_GetError()=0;
761 virtual void SDL_SetWindowSize(Low_SDL_Window *window, int w, int h)=0;
762 virtual void SDL_SetWindowPosition(Low_SDL_Window *window, int x, int y)=0;
763 virtual void SDL_GetWindowPosition(Low_SDL_Window *window, int *x, int *y)=0;
764 virtual char *SDL_GetClipboardText()=0;
765 virtual int SDL_SetClipboardText(const char *text)=0;
766 virtual int SDL_OpenAudio(Low_SDL_AudioSpec *desired,
767 Low_SDL_AudioSpec *obtained)=0;
768 virtual void SDL_PauseAudio(int pause_on)=0;
769};
770
772{
773 void *ptr=0;
774};
776{
777 void *ptr=0;
778};
779enum {
785};
786
788{
789public:
790 virtual void init()=0;
791 virtual void cleanup()=0;
793 virtual int Mix_OpenAudio(int rate, int flags, int val, int hup)=0;
794 virtual int Mix_PlayChannel(int channel, Low_Mix_Chunk *mix_chunk, int val)=0;
795 virtual Low_Mix_Chunk *Mix_QuickLoad_RAW(unsigned char *mem, int len)=0;
796 virtual void Mix_Init(int flags)=0;
797 virtual Low_Mix_Music *Mix_LoadMUS(const char *filename)=0;
798 virtual void Mix_PlayMusic(Low_Mix_Music *mus, int val)=0;
799 virtual int Mix_GetNumMusicDecoders()=0;
800 virtual void Mix_GetMusicDecoder(int i)=0;
801 virtual void Mix_AllocateChannels(int i)=0;
802 virtual void Mix_HaltChannel(int channel)=0;
803};
804
806{
807 virtual void init()=0;
808 virtual void cleanup()=0;
809};
810
825
826IMPORT extern LowApi *g_low;
827
828enum { EStandard, EWeb };
829void initialize_low(int flags);
830
831#endif
LowApi * g_low
Definition GameApi_low.cc:1684
void matrix(BoxableFaceCollection &coll, Matrix m, FaceStore &s)
Definition Functions.cc:56
#define IMPORT
Definition GameApi.hh:332
void Low_GLvoid
Definition GameApi_low.hh:43
float Low_GLfloat
Definition GameApi_low.hh:45
@ EStandard
Definition GameApi_low.hh:828
@ EWeb
Definition GameApi_low.hh:828
int Low_GLsizei
Definition GameApi_low.hh:46
void initialize_low(int flags)
Definition GameApi_low.cc:1687
@ Low_GL_STENCIL_BUFFER_BIT
Definition GameApi_low.hh:218
@ Low_GL_DEPTH_BUFFER_BIT
Definition GameApi_low.hh:217
@ Low_GL_COLOR_BUFFER_BIT
Definition GameApi_low.hh:216
@ Low_SDL_GL_DOUBLEBUFFER
Definition GameApi_low.hh:558
@ Low_SDL_GL_MULTISAMPLEBUFFERS
Definition GameApi_low.hh:565
@ Low_SAMPLE_FREQ
Definition GameApi_low.hh:573
@ Low_SDL_GL_GREEN_SIZE
Definition GameApi_low.hh:562
@ Low_SDL_GL_CONTEXT_PROFILE_ES
Definition GameApi_low.hh:567
@ Low_SDL_GL_CONTEXT_DEBUG_FLAG
Definition GameApi_low.hh:572
@ Low_SDL_WINDOW_SHOWN
Definition GameApi_low.hh:550
@ Low_SDL_GL_ALPHA_SIZE
Definition GameApi_low.hh:560
@ Low_SDL_WINDOW_OPENGL_SHOWN
Definition GameApi_low.hh:552
@ Low_SAMPLE_BUF_SIZE
Definition GameApi_low.hh:575
@ Low_SDL_GL_RED_SIZE
Definition GameApi_low.hh:563
@ Low_SDL_GL_MULTISAMPLESAMPLES
Definition GameApi_low.hh:570
@ Low_SDL_ENABLE
Definition GameApi_low.hh:566
@ Low_SDL_INIT_VIDEO_NOPARACHUTE_JOYSTICK
Definition GameApi_low.hh:564
@ Low_SDL_GL_BLUE_SIZE
Definition GameApi_low.hh:561
@ Low_SDL_WINDOW_FULLSCREEN
Definition GameApi_low.hh:576
@ Low_SDL_WINDOWPOS_CENTERED
Definition GameApi_low.hh:549
@ Low_SDL_GL_DEPTH_SIZE
Definition GameApi_low.hh:559
@ Low_SDL_GL_CONTEXT_PROFILE_MASK
Definition GameApi_low.hh:553
@ Low_SDL_WINDOWPOS_CENTERED_DISPLAY
Definition GameApi_low.hh:568
@ Low_SDL_GL_STENCIL_SIZE
Definition GameApi_low.hh:557
@ Low_SDL_GL_CONTEXT_MINOR_VERSION
Definition GameApi_low.hh:555
@ Low_SDL_NONE
Definition GameApi_low.hh:548
@ Low_SDL_WINDOW_OPENGL_SHOWN_RESIZEABLE
Definition GameApi_low.hh:551
@ Low_AUDIO_F32LSB
Definition GameApi_low.hh:574
@ Low_SDL_GL_CONTEXT_MAJOR_VERSION
Definition GameApi_low.hh:556
@ Low_SDL_GL_CONTEXT_PROFILE_CORE
Definition GameApi_low.hh:554
@ Low_SDL_GL_CONTEXT_FLAGS
Definition GameApi_low.hh:571
@ Low_SDL_GL_SHARE_WITH_CURRENT_CONTEXT
Definition GameApi_low.hh:569
@ Low_MIX_NONE
Definition GameApi_low.hh:780
@ Low_MIX_DEFAULT_FORMAT
Definition GameApi_low.hh:783
@ Low_MIX_INIT_OGG
Definition GameApi_low.hh:782
@ Low_AUDIO_U8
Definition GameApi_low.hh:784
@ Low_MIX_INIT_MP3
Definition GameApi_low.hh:781
signed char Low_GLbyte
Definition GameApi_low.hh:49
void * Low_SDL_GLContext
Definition GameApi_low.hh:681
void(* Low_SDL_AudioCallback)(void *, unsigned char *, int)
Definition GameApi_low.hh:694
@ Low_GL_TEXTURE_CUBE_MAP
Definition GameApi_low.hh:88
@ Low_GL_TEXTURE_ENV_MOVE
Definition GameApi_low.hh:143
@ Low_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
Definition GameApi_low.hh:155
@ Low_GL_TEXTURE17
Definition GameApi_low.hh:81
@ Low_GL_ONE_MINUS_CONSTANT_COLOR
Definition GameApi_low.hh:123
@ Low_GL_TEXTURE4
Definition GameApi_low.hh:68
@ Low_GL_RENDERBUFFER
Definition GameApi_low.hh:98
@ Low_GL_LINK_STATUS
Definition GameApi_low.hh:207
@ Low_GL_TEXTURE11
Definition GameApi_low.hh:75
@ Low_GL_COMPILE
Definition GameApi_low.hh:200
@ Low_GL_TEXTURE9
Definition GameApi_low.hh:73
@ Low_GL_CONSTANT_COLOR
Definition GameApi_low.hh:122
@ Low_GL_LINES_ADJACENCY_EXT
Definition GameApi_low.hh:164
@ Low_GL_TEXTURE2
Definition GameApi_low.hh:66
@ Low_GL_ALWAYS
Definition GameApi_low.hh:129
@ Low_GL_GEOMETRY_SHADER
Definition GameApi_low.hh:160
@ Low_GL_LINE_STRIP
Definition GameApi_low.hh:166
@ Low_GL_GEOMETRY_VERTICES_OUT_EXT
Definition GameApi_low.hh:168
@ Low_GL_TEXTURE_COORD_ARRAY
Definition GameApi_low.hh:197
@ Low_GL_GEOMETRY_INPUT_TYPE_EXT
Definition GameApi_low.hh:167
@ Low_GL_DST_COLOR
Definition GameApi_low.hh:117
@ Low_GL_TEXTURE8
Definition GameApi_low.hh:72
@ Low_GL_DYNAMIC_DRAW
Definition GameApi_low.hh:63
@ Low_GL_VIEWPORT
Definition GameApi_low.hh:110
@ Low_GL_STREAM_DRAW
Definition GameApi_low.hh:179
@ Low_GL_TEXTURE_BINDING_2D
Definition GameApi_low.hh:101
@ Low_GL_STATIC_DRAW
Definition GameApi_low.hh:62
@ Low_GL_TEXTURE15
Definition GameApi_low.hh:79
@ Low_GL_RGBA
Definition GameApi_low.hh:102
@ Low_GL_CCW
Definition GameApi_low.hh:206
@ Low_GL_DEBUG_OUTPUT_SYNCHRONOUS
Definition GameApi_low.hh:211
@ Low_GL_TRIANGLES_ADJACENCY_EXT
Definition GameApi_low.hh:165
@ Low_GL_SRC_ALPHA
Definition GameApi_low.hh:111
@ Low_GL_COLOR_ARRAY
Definition GameApi_low.hh:196
@ Low_GL_STENCIL_TEST
Definition GameApi_low.hh:136
@ Low_GL_UNSIGNED_SHORT
Definition GameApi_low.hh:186
@ Low_GL_TEXTURE_CUBE_MAP_POSITIVE_X
Definition GameApi_low.hh:150
@ Low_GL_CULL_FACE
Definition GameApi_low.hh:201
@ Low_GL_FALSE
Definition GameApi_low.hh:56
@ Low_GL_TEXTURE_WRAP_S
Definition GameApi_low.hh:92
@ Low_GL_INT
Definition GameApi_low.hh:55
@ Low_GL_TEXTURE1
Definition GameApi_low.hh:65
@ Low_GL_ONE
Definition GameApi_low.hh:114
@ Low_GL_NOTEQUAL
Definition GameApi_low.hh:132
@ Low_GL_FRONT
Definition GameApi_low.hh:175
@ Low_GL_KEEP
Definition GameApi_low.hh:130
@ Low_GL_DEBUG_OUTPUT
Definition GameApi_low.hh:210
@ Low_GL_RENDERER
Definition GameApi_low.hh:203
@ Low_GL_CLAMP_TO_EDGE
Definition GameApi_low.hh:93
@ Low_GL_ARRAY_BUFFER
Definition GameApi_low.hh:53
@ Low_GL_DEPTH_COMPONENT16
Definition GameApi_low.hh:107
@ Low_GL_BYTE
Definition GameApi_low.hh:187
@ Low_GL_TEXTURE_MIN_FILTER
Definition GameApi_low.hh:90
@ Low_GL_WRITE_ONLY
Definition GameApi_low.hh:180
@ Low_GL_GEQUAL
Definition GameApi_low.hh:142
@ Low_GL_TEXTURE_CUBE_MAP_POSITIVE_Z
Definition GameApi_low.hh:154
@ Low_GL_DST_ALPHA
Definition GameApi_low.hh:120
@ Low_GL_FRAMEBUFFER
Definition GameApi_low.hh:99
@ Low_GL_MODELVIEW
Definition GameApi_low.hh:126
@ Low_GL_PIXEL_UNPACK_BUFFER
Definition GameApi_low.hh:178
@ Low_GL_ELEMENT_ARRAY_BUFFER
Definition GameApi_low.hh:185
@ Low_GL_DEPTH_COMPONENT
Definition GameApi_low.hh:172
@ Low_GL_FRAMEBUFFER_SRGB
Definition GameApi_low.hh:213
@ Low_GL_ONE_MINUS_SRC_COLOR
Definition GameApi_low.hh:116
@ Low_GL_TEXTURE_WRAP_R
Definition GameApi_low.hh:156
@ Low_GL_TEXTURE0
Definition GameApi_low.hh:64
@ Low_GL_LEQUAL
Definition GameApi_low.hh:137
@ Low_GL_TEXTURE_2D_ARRAY
Definition GameApi_low.hh:87
@ Low_GL_TRIANGLES
Definition GameApi_low.hh:57
@ Low_GL_TEXTURE_CUBE_MAP_POSITIVE_Y
Definition GameApi_low.hh:152
@ Low_GL_PIXEL_PACK_BUFFER
Definition GameApi_low.hh:177
@ Low_GL_TRIANGLE_STRIP
Definition GameApi_low.hh:58
@ Low_GL_TEXTURE10
Definition GameApi_low.hh:74
@ Low_GL_FILL
Definition GameApi_low.hh:135
@ Low_GL_TEXTURE_CUBE_MAP_NEGATIVE_X
Definition GameApi_low.hh:151
@ Low_GL_ONE_MINUS_SRC_ALPHA
Definition GameApi_low.hh:112
@ Low_GL_DEPTH_TEST
Definition GameApi_low.hh:61
@ Low_GL_RED
Definition GameApi_low.hh:97
@ Low_GL_TRUE
Definition GameApi_low.hh:100
@ Low_GL_ONE_MINUS_DST_COLOR
Definition GameApi_low.hh:118
@ Low_GL_TEXTURE7
Definition GameApi_low.hh:71
@ Low_GL_RGBA32F
Definition GameApi_low.hh:184
@ Low_GL_VENDOR
Definition GameApi_low.hh:202
@ Low_GL_LINEAR_MIPMAP_LINEAR
Definition GameApi_low.hh:171
@ Low_GL_VERTEX_ARRAY
Definition GameApi_low.hh:194
@ Low_GL_TEXTURE_ENV
Definition GameApi_low.hh:127
@ Low_GL_CW
Definition GameApi_low.hh:205
@ Low_GL_FLOAT
Definition GameApi_low.hh:54
@ Low_GL_REPLACE
Definition GameApi_low.hh:131
@ Low_GL_TEXTURE3
Definition GameApi_low.hh:67
@ Low_GL_TEXTURE5
Definition GameApi_low.hh:69
@ Low_GL_VERTEX_SHADER
Definition GameApi_low.hh:161
@ Low_GL_QUADS
Definition GameApi_low.hh:60
@ Low_GL_TEXTURE16
Definition GameApi_low.hh:80
@ Low_GL_SRGB8_ALPHA8
Definition GameApi_low.hh:190
@ Low_GL_READ_ONLY
Definition GameApi_low.hh:181
@ Low_GL_BLEND
Definition GameApi_low.hh:128
@ Low_GL_TEXTURE18
Definition GameApi_low.hh:82
@ Low_GL_DEPTH_COMPONENT32F
Definition GameApi_low.hh:182
@ Low_GL_SCISSOR_TEST
Definition GameApi_low.hh:104
@ Low_GL_VERSION
Definition GameApi_low.hh:204
@ Low_GL_BACK
Definition GameApi_low.hh:176
@ Low_GL_NEAREST_MIPMAP_LINEAR
Definition GameApi_low.hh:189
@ Low_GL_REPEAT
Definition GameApi_low.hh:157
@ Low_GL_NORMAL_ARRAY
Definition GameApi_low.hh:195
@ Low_GL_RGB
Definition GameApi_low.hh:103
@ Low_GL_LINEAR
Definition GameApi_low.hh:89
@ Low_GL_RGBA8
Definition GameApi_low.hh:158
@ Low_GL_TEXTURE_WRAP_T
Definition GameApi_low.hh:94
@ Low_GL_ONE_MINUS_DST_ALPHA
Definition GameApi_low.hh:121
@ Low_GL_DEPTH_ATTACHMENT
Definition GameApi_low.hh:108
@ Low_GL_TEXTURE_2D
Definition GameApi_low.hh:86
@ Low_GL_CONTEXT_FLAGS
Definition GameApi_low.hh:209
@ Low_GL_EQUAL
Definition GameApi_low.hh:138
@ Low_GL_GREATER
Definition GameApi_low.hh:141
@ Low_GL_MULTISAMPLE
Definition GameApi_low.hh:159
@ Low_GL_CONSTANT_ALPHA
Definition GameApi_low.hh:124
@ Low_GL_TEXTURE_ENV_MODE
Definition GameApi_low.hh:147
@ Low_GL_PERSPECTIVE_CORRECTION_HINT
Definition GameApi_low.hh:95
@ Low_GL_TEXTURE_HEIGHT
Definition GameApi_low.hh:149
@ Low_GL_TEXTURE12
Definition GameApi_low.hh:76
@ Low_GL_NICEST
Definition GameApi_low.hh:96
@ Low_GL_NO_ERROR
Definition GameApi_low.hh:169
@ Low_GL_LINES
Definition GameApi_low.hh:145
@ Low_GL_UNSIGNED_INT
Definition GameApi_low.hh:173
@ Low_GL_TEXTURE_MAG_FILTER
Definition GameApi_low.hh:91
@ Low_GL_FRAMEBUFFER_COMPLETE
Definition GameApi_low.hh:105
@ Low_GL_SRC_COLOR
Definition GameApi_low.hh:115
@ Low_GL_FRONT_AND_BACK
Definition GameApi_low.hh:133
@ Low_GL_TEXTURE19
Definition GameApi_low.hh:83
@ Low_GL_COMPILE_STATUS
Definition GameApi_low.hh:163
@ Low_GL_TEXTURE14
Definition GameApi_low.hh:78
@ Low_GL_NONE
Definition GameApi_low.hh:183
@ Low_GL_LIGHTING
Definition GameApi_low.hh:125
@ Low_GL_DOUBLE
Definition GameApi_low.hh:188
@ Low_GL_ZERO
Definition GameApi_low.hh:113
@ Low_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
Definition GameApi_low.hh:153
@ Low_GL_GEOMETRY_OUTPUT_TYPE_EXT
Definition GameApi_low.hh:170
@ Low_GL_UNSIGNED_BYTE
Definition GameApi_low.hh:59
@ Low_GL_NEAREST
Definition GameApi_low.hh:106
@ Low_GL_POINTS
Definition GameApi_low.hh:146
@ Low_GL_TEXTURE20
Definition GameApi_low.hh:84
@ Low_GL_LINE_SMOOTH
Definition GameApi_low.hh:144
@ Low_GL_TEXTURE6
Definition GameApi_low.hh:70
@ Low_GL_SHORT
Definition GameApi_low.hh:199
@ Low_GL_FRAGMENT_SHADER
Definition GameApi_low.hh:162
@ Low_GL_POLYGON
Definition GameApi_low.hh:198
@ Low_GL_READ_BUFFER
Definition GameApi_low.hh:208
@ Low_GL_TEXTURE_WIDTH
Definition GameApi_low.hh:148
@ Low_GL_TEXTURE13
Definition GameApi_low.hh:77
@ Low_GL_DONT_CARE
Definition GameApi_low.hh:212
@ Low_GL_LINE
Definition GameApi_low.hh:134
@ Low_GL_ALPHA_TEST
Definition GameApi_low.hh:174
@ Low_GL_COLOR_ATTACHMENT0
Definition GameApi_low.hh:109
@ Low_GL_LESS
Definition GameApi_low.hh:140
short Low_GLshort
Definition GameApi_low.hh:50
int Low_GLint
Definition GameApi_low.hh:47
unsigned int Low_SDL_Keymod
Definition GameApi_low.hh:682
unsigned int Low_GLuint
Definition GameApi_low.hh:42
unsigned int Low_GLenum
Definition GameApi_low.hh:44
void info(std::string info)
Definition check.cc:24
Definition GameApi_low.hh:497
virtual void emscripten_set_main_loop_arg(void(*)(void *), void *, int, int)=0
virtual void emscripten_set_touchend_callback(char *c, int a, bool true_, void(*)())=0
virtual void emscripten_async_wget_data(void *buf2, void *data, void(*cb_sucess)(void *), void(*cb_fail)(void *))=0
virtual void emscripten_webgl_init_context_attributes(void *attr)=0
virtual void init()=0
virtual void emscripten_webgl_make_context_current(void *ctx)=0
virtual void emscripten_async_call(void(*)(void *), void *data, int val)=0
virtual void * emscripten_webgl_create_context(int i, void *attr)=0
virtual void emscripten_set_click_callback(char *c, int a, bool true_, void(*)())=0
virtual void cleanup()=0
virtual bool emscripten_has_threading_support()=0
Definition GameApi_low.hh:512
Definition GameApi_low.hh:533
Definition GameApi_low.hh:485
Definition GameApi_low.hh:540
Definition GameApi_low.hh:491
Definition GameApi_low.hh:299
virtual void glDeleteTextures(int val, const unsigned int *tex)=0
virtual void glStencilOp(int keep, int keep2, int repl)=0
virtual void glCompileShader(int h)=0
virtual void glVertexAttrib1s(int loc, short s)
Definition GameApi_low.hh:461
virtual void glEnd()
Definition GameApi_low.hh:457
virtual void glEnableClientState(int a)=0
virtual void init()=0
virtual void glRotatef(float, float, float, float)
Definition GameApi_low.hh:451
virtual void glDetachShader(int p, int h)=0
virtual void glUniform2f(int loc, float val, float val2)=0
virtual void glFrontFace(int mode)=0
virtual void glDeleteVertexArrays(int count, unsigned int *vao)=0
virtual void glEndList()
Definition GameApi_low.hh:456
virtual void glTexImage2D(int ID, int, int, unsigned int, unsigned int, int, int, int, void *ptr)=0
virtual void glBindVertexArray(int vao)=0
virtual void glVertexAttribIPointer(int, int, int gl_float, int boolean, const void *ptr)=0
virtual void glUniform1f(int loc, float val)=0
virtual void glDrawBuffers(int n, const unsigned int *bufs)=0
virtual void glDrawElements(int tri, int a, int type, void *indices)=0
virtual void glUniformMatrix4fv(int loc, unsigned int count, int boolean, const float *matrix)=0
virtual void glDrawArrays(int tri, int, unsigned int)=0
virtual void glHint(int hint, int value)=0
virtual int glCreateProgram()=0
virtual void glVertex3f(float, float, float)
Definition GameApi_low.hh:458
virtual void glGetTexImage(int a, int, int rgba, int unsign_byte, void *ptr)=0
virtual void glDrawBuffer(int s)=0
virtual void glStencilMask(int a)=0
virtual void glRenderbufferStorage(int a, int d, int sx, int sy)=0
virtual int glGetAttribLocation(int p, const char *data)=0
virtual void glBindTexture(int ID, int tex)=0
virtual void glEnable(int val)=0
virtual void glDeleteRenderBuffers(int i, unsigned int *rbo)=0
virtual void glColor3f(float, float, float)
Definition GameApi_low.hh:454
virtual void glVertexAttrib1f(int loc, float s)
Definition GameApi_low.hh:462
virtual void glDepthFunc(int i)=0
virtual void glFramebufferRenderbuffer(int a, int d, int r, unsigned int tex)=0
virtual void glBindFragDataLocation(int p, int num, const char *data)=0
virtual void glShaderSource(int h, int c, const char **strings, int *lengths)=0
virtual void glPushMatrix()=0
virtual int glGetUniformLocation(int p, const char *data)=0
virtual void glTexEnvi(int a, int mode, int rep)=0
virtual void glBufferSubData(int a, int, int, const void *)=0
virtual void glLoadIdentity()=0
virtual void cleanup()=0
virtual int glGenLists(int)
Definition GameApi_low.hh:465
virtual void glGenTextures(int val, unsigned int *tex)=0
virtual void glFramebufferTexture2D(int i, int atth, int tex2d, int tex, int ptr)=0
virtual void glNormal3f(float, float, float)
Definition GameApi_low.hh:459
virtual void glUniform3fv(int loc, int count, float *arr)=0
virtual void glViewport(int x, int y, unsigned int w, unsigned int h)=0
virtual void glTranslatef(float, float, float)=0
virtual void glTexCoord2f(float, float)
Definition GameApi_low.hh:460
virtual int glCheckFramebufferStatus(int id)=0
virtual void glGetFloatv(int val, float *params)=0
virtual void glLinkProgram(int p)=0
virtual void glReadBuffer(int a)=0
virtual void * glMapBuffer(int a, int b)=0
virtual void glCallList(int)
Definition GameApi_low.hh:455
virtual void glStencilFunc(int notequal, int, int)=0
virtual void glFinish()=0
virtual void glGetProgramInfoLog(unsigned int p, int num, int *len, char *buf)=0
virtual void glGetIntegerv(int p, int *ptr)=0
virtual void glTexSubImage3D(int arr, int, int, int, int, int, int, int, int rgba, int unsig_byte, void *buffer)=0
virtual void glMatrixLoadIdentityEXT(int i)=0
virtual void glAlphaFunc(int i, float val)=0
virtual void glUniform1fv(int loc, int count, float *array)=0
virtual void glUseProgram(int p)=0
virtual void glCullFace(int mode)=0
virtual void glTexStorage3D(int arr, int, int flag, int w, int h, int layer_count)=0
virtual void glUnmapBuffer(int a)=0
virtual void glGetShaderInfoLog(unsigned int h, int val, int *length, char *buf)=0
virtual void glDeleteFrameBuffers(int i, unsigned int *fbo)=0
virtual void glClearStencil(int val)=0
virtual void glBindRenderbuffer(int a, int fbo_id)=0
virtual void glDisableVertexAttribArray(int a)=0
virtual void glColor4f(float r, float g, float b, float a)=0
virtual void glClearColor(float r, float g, float b, float a)=0
virtual void glProgramParameteriEXT(int p, int geom, int inputtype)=0
virtual void glBindAttribLocation(int p, int num, const char *data)=0
virtual void glGetShaderiv(int handle, int gl_compile_status, int *ptr)=0
virtual void glTexSubImage2D(int ID, int, int, int, unsigned int, unsigned int, int, int, void *ptr)=0
virtual void glTexCoordPointer(int, int, int, void *)
Definition GameApi_low.hh:447
virtual void glDisableClientState(int)
Definition GameApi_low.hh:446
virtual void glDrawArraysInstanced(int tri, int, unsigned int, unsigned int)=0
virtual void glDeleteLists(int, int)
Definition GameApi_low.hh:466
virtual void glDepthMask(int a)=0
virtual void glPolygonMode(int front_and_back, int gl_line)=0
virtual void glGetTexLevelParameteriv(int a, int, int w, int *ptr)=0
virtual void glMultMatrixf(float *mat)=0
virtual unsigned int glCreateShader(int shader)=0
virtual void glGenVertexArrays(int i, unsigned int *arr)=0
virtual void glPopMatrix()=0
virtual void glColor4ub(int r, int g, int b, int a)=0
virtual void glDisable(int val)=0
virtual void glDrawElementsInstanced(int tri, int a, int type, void *indices, int size)=0
virtual void glBlendFunc(int val, int val2)=0
virtual void glBindFramebuffer(int a, int fbo_id)=0
virtual void glDeleteProgram(int p)=0
virtual void glVertexAttribPointer(int, int, int gl_float, int boolean, unsigned int, const void *ptr)=0
virtual void glScissor(float x, float y, float w, float h)=0
virtual void glBindBuffer(int a, unsigned int data)=0
virtual void glVertexAttribDivisor(int, int)=0
virtual void glGenFramebuffers(int i, unsigned int *fbo_id)=0
virtual void glColorPointer(int, int, int, void *)
Definition GameApi_low.hh:448
virtual void glActiveTexture(int a)=0
virtual void glBufferData(int a, int size, const void *ptr, int static_draw)=0
virtual void glNormalPointer(int, int, void *)
Definition GameApi_low.hh:450
virtual void glReadPixels(int x, int y, int w, int h, int rgba, int mode, void *ptr)=0
virtual void glEnableVertexAttribArray(int a)=0
virtual void glUniform1i(int loc, int val)=0
virtual void glBegin(int)
Definition GameApi_low.hh:463
virtual void glGenBuffers(int i, unsigned int *buffers)=0
virtual void glUniform4f(int loc, float val, float val2, float val3, float val4)=0
virtual void glGetUniformfv(int p, int loc, float *arr)=0
virtual void glDeleteShader(int h)=0
virtual void glGenerateMipmap(int p)=0
virtual int glGetError()=0
virtual void glClientActiveTexture(int a)=0
virtual void glDebugMessageCallback(void(*)(unsigned int source, unsigned int type, unsigned int id, unsigned int severity, int length, const char *message, const void *userParam), const void *userParam)=0
virtual void glGenRenderbuffers(int i, unsigned int *rbo_id)=0
virtual void glClear(int bits)=0
virtual void glUniform3f(int loc, float val, float val2, float val3)=0
virtual const unsigned char * glGetString(int name)=0
virtual void glLineWidth(float i)=0
virtual void glMatrixMode(int i)=0
virtual void glVertexPointer(int, int, int, void *)
Definition GameApi_low.hh:449
virtual void glAttachShader(int p, int h)=0
virtual void glDeleteBuffers(int count, const unsigned int *buffers)=0
virtual void glTexParameteri(int ID, int, int)=0
virtual void glDebugMessageControl(unsigned int source, unsigned int type, unsigned int severity, int count, const unsigned int *ids, int enabled)=0
virtual void glCopyTexImage2D(int ID, int, int, int, int, int, int, int ptr)=0
virtual void glUniform1iv(int loc, int count, int *array)=0
virtual void glNewList(int i, int k)
Definition GameApi_low.hh:464
Definition GameApi_low.hh:806
Definition GameApi_low.hh:709
virtual int SDL_GL_MakeCurrent(Low_SDL_Window *window, Low_SDL_GLContext context)=0
virtual Low_SDL_Joystick * SDL_JoystickOpen(int i)=0
virtual void SDL_PauseAudio(int pause_on)=0
virtual Low_SDL_RWops * SDL_RWFromMem(void *buffer, int size)=0
virtual void SDL_GetCurrentDisplayMode(int index, Low_SDL_DisplayMode *mode)=0
virtual void SDL_SetWindowFullscreen(Low_SDL_Window *window, int val)=0
virtual void SDL_FreeSurface(Low_SDL_Surface *surf)=0
virtual int SDL_NumJoysticks()=0
virtual void SDL_Delay(int ms)=0
virtual void cleanup()=0
virtual void SDL_SetWindowPosition(Low_SDL_Window *window, int x, int y)=0
virtual bool SDL_GetWindowWMInfo(Low_SDL_Window *window, Low_SDL_SysWMinfo *info)=0
virtual void * SDL_GL_GetProcAddress(char *name)=0
virtual unsigned int SDL_JoystickGetButton(Low_SDL_Joystick *joy, int i)=0
virtual void SDL_SetHint(const char *flag, const char *str)=0
virtual Low_SDL_GLContext SDL_GL_CreateContext(Low_SDL_Window *window)=0
virtual void SDL_SetCursor(Low_SDL_Cursor *cursor)=0
virtual void SDL_Init(int flags)=0
virtual const char * SDL_GetError()=0
virtual unsigned int SDL_GetMouseState(int *x, int *y)=0
virtual void SDL_SetWindowSize(Low_SDL_Window *window, int w, int h)=0
virtual int SDL_PollEvent(Low_SDL_Event *event)=0
virtual void SDL_PumpEvents()=0
virtual void SDL_DestroyWindow(Low_SDL_Window *window)=0
virtual void SDL_ConvertSurface(Low_SDL_Surface *surf, void *format, int val)=0
virtual void SDL_JoystickEventState(int i)=0
virtual void SDL_GL_SwapWindow(Low_SDL_Window *window)=0
virtual unsigned int SDL_GetTicks()=0
virtual Low_SDL_RWops * SDL_RWFromFile(const char *file, const char *mode)=0
virtual char * SDL_GetClipboardText()=0
virtual Low_SDL_Surface * SDL_GetWindowSurface(Low_SDL_Window *win)=0
virtual ~SDLLowApi()
Definition GameApi_low.cc:1301
virtual unsigned long long SDL_GetPerformanceFrequency()=0
virtual void SDL_Quit()=0
virtual void SDL_GL_SetAttribute(int flag, int val)=0
virtual void SDL_GetWindowSize(Low_SDL_Window *window, int *w, int *h)=0
virtual void SDL_GL_SetSwapInterval(int val)=0
virtual int SDL_SetClipboardText(const char *text)=0
virtual Low_SDL_Window * SDL_CreateWindow(const char *title, int x, int y, int width, int height, unsigned int flags2)=0
virtual unsigned int SDL_GetModState()=0
virtual void SDL_GL_DeleteContext(Low_SDL_GLContext ctx)=0
virtual void SDL_SetWindowTitle(Low_SDL_Window *window, const char *title)=0
virtual void SDL_UnlockSurface(Low_SDL_Surface *surf)=0
virtual void SDL_GetWindowPosition(Low_SDL_Window *window, int *x, int *y)=0
virtual void SDL_LockSurface(Low_SDL_Surface *surf)=0
virtual void SDL_ShowCursor(bool b)=0
virtual Low_SDL_Cursor * SDL_CreateCursor(const unsigned char *data, const unsigned char *mask, int w, int h, int hot_x, int hot_y)=0
virtual unsigned long long SDL_GetPerformanceCounter()=0
virtual void init()=0
virtual const char * SDL_GetCurrentVideoDriver()=0
virtual void SDL_UpdateWindowSurface(Low_SDL_Window *window)=0
virtual void SDL_FreeCursor(Low_SDL_Cursor *cursor)=0
virtual int SDL_OpenAudio(Low_SDL_AudioSpec *desired, Low_SDL_AudioSpec *obtained)=0
Definition GameApi_low.hh:788
virtual void cleanup()=0
virtual void Mix_Init(int flags)=0
virtual int Mix_PlayChannel(int channel, Low_Mix_Chunk *mix_chunk, int val)=0
virtual void init()=0
virtual Low_Mix_Music * Mix_LoadMUS(const char *filename)=0
virtual Low_Mix_Chunk * Mix_LoadWAV_RW(Low_SDL_RWops *buf, int s)=0
virtual Low_Mix_Chunk * Mix_QuickLoad_RAW(unsigned char *mem, int len)=0
virtual void Mix_PlayMusic(Low_Mix_Music *mus, int val)=0
virtual int Mix_GetNumMusicDecoders()=0
virtual void Mix_HaltChannel(int channel)=0
virtual int Mix_OpenAudio(int rate, int flags, int val, int hup)=0
virtual void Mix_AllocateChannels(int i)=0
virtual void Mix_GetMusicDecoder(int i)=0
d
Definition meshpage.php:3895
iVBORw0KGgoAAAANSUhEUgAAANcAAAB5CAMAAACdtUQZAAAA51BMVEX</div ></div >< div style="padding: 0px 0px; width: 1324px;">< div style="height: 400px; width: 1324px;"></div >< div itemscope itemtype="https: </div><div itemscope itemtype="https:</div >< div itemscope itemtype="https: </div></div><p><div style="padding:0px 0px;width:1324px;"><div></div><div itemscope itemtype="https:< ul >< li >< b > Application name
8AkrcAgqgAs9wqQ0ey2tkAo8gAuuQfeI4hPUH09fXHy8z4+fng4uNKXF/Lz9BzfoAcgpkQMTUAKjAbOT4Qr9AXhJ8Rl7ktMCwTosA...
Definition meshpage.php:1610
lazy data
Definition meshpage.php:1583
str
Definition meshpage.php:1778
instead of< li > Displaying models works via URL t expect full length movie as the output of this process< li > Different animation models are very limited basically just translate rotate</ul >< h2 > What to do if your hosting location has no php</h2 >< ul >< li > comment out or remove display php lines at the beginning< li > you will lose threads too< li > every zip file distributed by meshpage org has one of those display php files with this issue</ul >< h2 > What should I do to serve the files via http</h2 > I get some random triangles that do not belong to the model</h2 > The engine works correctly The obj file supports quads and polygons But some external tools that create obj files insert random polygons to the file to discourage rendering of polygons We consider polygon rendering is important and our engine should support it by default If you have we have disable_polygons() feature in the engine to get rid of the trash. But real solution is to change the tool you use to create the .obj file/check the .obj file that it doesn 't contain random(invisible) polygons that do not render in competing 3d engines. Our engine does not have the performance problems normally associated with polygons given that triangle quad polygon type change does not cause additional draw commands to the opengl rendering< p > GLTF standard organisation made significant mistake when specifying GLTF file format
Definition meshpage.php:1092
line height
Definition meshpage.php:3536
n< br > font size
Definition meshpage.php:3536
Definition GameApi.h:53
Definition GameApi_low.hh:812
SDLMixerLowApi * sdl_mixer
Definition GameApi_low.hh:821
SDLImageLowApi * sdl_image
Definition GameApi_low.hh:820
OpenglLowApi * ogl
Definition GameApi_low.hh:814
LowApi()
Definition GameApi_low.hh:813
EmscriptenVRLowApi * ems_vr
Definition GameApi_low.hh:823
SDLLowApi * sdl
Definition GameApi_low.hh:819
FileSystemLowApi * fs
Definition GameApi_low.hh:817
EmscriptenLowApi * ems
Definition GameApi_low.hh:816
ImageLoadLowApi * img
Definition GameApi_low.hh:818
OpenVRLowApi * ovr
Definition GameApi_low.hh:822
FontLowApi * fnt
Definition GameApi_low.hh:815
Definition GameApi_low.hh:772
void * ptr
Definition GameApi_low.hh:773
Definition GameApi_low.hh:776
void * ptr
Definition GameApi_low.hh:777
Definition GameApi_low.hh:697
unsigned char silence
Definition GameApi_low.hh:701
void * userdata
Definition GameApi_low.hh:705
int format
Definition GameApi_low.hh:699
unsigned short samples
Definition GameApi_low.hh:702
unsigned char channels
Definition GameApi_low.hh:700
unsigned int size
Definition GameApi_low.hh:703
Low_SDL_AudioCallback callback
Definition GameApi_low.hh:704
int freq
Definition GameApi_low.hh:698
Definition GameApi_low.hh:677
void * ptr
Definition GameApi_low.hh:677
Definition GameApi_low.hh:611
int w
Definition GameApi_low.hh:612
int h
Definition GameApi_low.hh:612
Definition GameApi_low.hh:633
const char * file
Definition GameApi_low.hh:634
Definition GameApi_low.hh:616
int sym
Definition GameApi_low.hh:617
Definition GameApi_low.hh:620
Low_SDL_Event_KeySym keysym
Definition GameApi_low.hh:621
int repeat
Definition GameApi_low.hh:622
Definition GameApi_low.hh:664
Low_SDL_DropEvent drop
Definition GameApi_low.hh:669
Low_SDL_JoyAxis jaxis
Definition GameApi_low.hh:672
int type
Definition GameApi_low.hh:665
Low_SDL_MouseButtonEvent button
Definition GameApi_low.hh:674
Low_SDL_TouchFingerEvent tfinger
Definition GameApi_low.hh:668
Low_SDL_JoyBall jball
Definition GameApi_low.hh:671
Low_SDL_JoyButton jbutton
Definition GameApi_low.hh:673
Low_SDL_WindowEvent window
Definition GameApi_low.hh:670
Low_SDL_MouseWheelEvent wheel
Definition GameApi_low.hh:667
Low_SDL_Event_Key key
Definition GameApi_low.hh:666
Definition GameApi_low.hh:654
int axis
Definition GameApi_low.hh:656
int value
Definition GameApi_low.hh:655
Definition GameApi_low.hh:648
int yrel
Definition GameApi_low.hh:651
int xrel
Definition GameApi_low.hh:650
int ball
Definition GameApi_low.hh:649
Definition GameApi_low.hh:659
int button
Definition GameApi_low.hh:660
Definition GameApi_low.hh:684
void * data
Definition GameApi_low.hh:685
Definition GameApi_low.hh:629
int button
Definition GameApi_low.hh:630
Definition GameApi_low.hh:625
int y
Definition GameApi_low.hh:626
Definition GameApi_low.hh:690
void * ptr
Definition GameApi_low.hh:691
Definition GameApi_low.hh:679
void * pixels
Definition GameApi_low.hh:679
int h
Definition GameApi_low.hh:679
int w
Definition GameApi_low.hh:679
int pitch
Definition GameApi_low.hh:679
void * ptr
Definition GameApi_low.hh:679
Definition GameApi_low.hh:604
wl_display * display
Definition GameApi_low.hh:605
wl_shell_surface * shell_surface
Definition GameApi_low.hh:607
wl_surface * surface
Definition GameApi_low.hh:606
Definition GameApi_low.hh:637
float y
Definition GameApi_low.hh:639
float x
Definition GameApi_low.hh:638
Definition GameApi_low.hh:642
int data1
Definition GameApi_low.hh:644
int data2
Definition GameApi_low.hh:644
Definition GameApi_low.hh:680
void * ptr
Definition GameApi_low.hh:680
num
Definition view.php:2821