nuclear@5: #include "opengl.h" nuclear@5: nuclear@5: #ifdef __unix__ nuclear@8: void vrimp_swap_buffers(void) nuclear@5: { nuclear@5: Display *dpy = glXGetCurrentDisplay(); nuclear@5: Drawable win = glXGetCurrentDrawable(); nuclear@5: glXSwapBuffers(dpy, win); nuclear@5: } nuclear@8: nuclear@8: void (*vrimp_glfunc(const char *name))() nuclear@8: { nuclear@8: return glXGetProcAddress((const unsigned char*)name); nuclear@8: } nuclear@9: #endif /* __unix__ */ nuclear@5: nuclear@5: #ifdef WIN32 nuclear@8: void vrimp_swap_buffers(void) nuclear@5: { nuclear@5: HDC dc = wglGetCurrentDC(); nuclear@5: SwapBuffers(dc); nuclear@5: } nuclear@8: nuclear@8: void (*vrimp_glfunc(const char *name))() nuclear@8: { nuclear@10: return (void (*)())wglGetProcAddress(name); nuclear@8: } nuclear@9: #endif /* WIN32 */ nuclear@9: nuclear@9: #ifdef __APPLE__ nuclear@9: void vrimp_swap_buffers(void) nuclear@9: { nuclear@9: /* TODO: I don't think this can even be done without obj-c and a pointer nuclear@9: * to a GLView class or whatever the fuck it's called... investigate further nuclear@9: */ nuclear@9: } nuclear@9: nuclear@9: nuclear@9: void (*vrimp_glfunc(const char *name))() nuclear@9: { nuclear@9: /* TODO: whatever */ nuclear@9: return 0; nuclear@9: } nuclear@9: #endif /* __APPLE__ */