# HG changeset patch # User Sam Lantinga # Date 1060354874 0 # Node ID f91ded895274cec51480df50a44a77c20fd69c73 # Parent adbed8d7a9910b520e3a803aa5fbcf3a0adf25fc *** empty log message *** diff -r adbed8d7a991 -r f91ded895274 src/video/quartz/SDL_QuartzVideo.m --- a/src/video/quartz/SDL_QuartzVideo.m Wed Aug 06 21:54:32 2003 +0000 +++ b/src/video/quartz/SDL_QuartzVideo.m Fri Aug 08 15:01:14 2003 +0000 @@ -1468,6 +1468,31 @@ return 0; } + /* + * Wisdom from Apple engineer in reference to UT2003's OpenGL performance: + * "You are blowing a couple of the internal OpenGL function caches. This + * appears to be happening in the VAO case. You can tell OpenGL to up + * the cache size by issuing the following calls right after you create + * the OpenGL context. The default cache size is 16." --ryan. + */ + + #ifndef GLI_ARRAY_FUNC_CACHE_MAX + #define GLI_ARRAY_FUNC_CACHE_MAX 284 + #endif + + #ifndef GLI_SUBMIT_FUNC_CACHE_MAX + #define GLI_SUBMIT_FUNC_CACHE_MAX 280 + #endif + + { + long cache_max = 64; + CGLContextObj ctx = [ gl_context cglContext ]; + CGLSetParameter (ctx, GLI_SUBMIT_FUNC_CACHE_MAX, &cache_max); + CGLSetParameter (ctx, GLI_ARRAY_FUNC_CACHE_MAX, &cache_max); + } + + /* End Wisdom from Apple Engineer section. --ryan. */ + /* Convince SDL that the GL "driver" is loaded */ this->gl_config.driver_loaded = 1;