Commit graph

23 commits

Author SHA1 Message Date
Scott Nations
bc7e48247e Enabled use of client-side memory in vertex, element, indirect, and count buffer
Added support for glArrayElement(EXT|) to the immediate mode layer.
    Support NUM_EXTENSIONS in glGet(Integer|Float|Double|Boolean|Integer64)v(EXT|)
    Added interception for glGetStringi and glGetIntergerv
    Improve loading of GLES and EGL libraries on Android
    Various bug fixes...
    Merged pull requests:
     #131  NaCL Pepper now uses GLES2 prefix for ES2.0 functions, rather than gl
     #130  Copyright bump to 2014
     #129  NaCL-related build tweaks for regaltest, nacl example and pnacl.
     #128  GLEW refresh
     #126  boost::print fix for mapping 'long' and 'long long' to 32-bit or 64-bit for length purposes
     #125  Resolve clang compilation error: lookup of 'Depth' in member access expression is ambiguous
     #124  Add Makefile support for gcc-4.4, gcc-4.6 and clang toolchains on Linux.
     #116  Make it compile with Visual Studio 2013 (VC12)
2014-08-07 12:24:42 -05:00
Scott Nations
8dda434953 Now using glsloptimizer to parse and rewrite shaders.
Major enhancements to the state web server.
Added state-based shader instancing to avoid recompiles.
Fixed issue #113 - Possible bug with REGAL_STATISTICS
Corrected handling of GL_POINT_SIZE_MAX state in RegalState.
Refreshed apitrace, civetweb, libpng, and GLEW from upstream.
2014-03-27 10:14:36 -05:00
Nigel Stewart
35538fa417 Update apitrace from upstream
Add GL 4.4 support to apitrace
Filtering layer refinements for ES 2.0 on Tegra
Copyright consistency for src/regal - linear.h
glGetBooleanv support added to Emu::Iff
2013-11-02 14:01:46 -05:00
Nigel Stewart
53fc58e83f Improved completeness of logging - more parameters.
Improved enum to string conversion for logging purposes.
Filtering tweaks for ES 2.0.
2013-10-26 21:09:01 -05:00
Nigel Stewart
22e2bc95ce Merge snations branch 2013-08-23 09:44:42 -05:00
Nigel Stewart
41f9b271b0 Consolidation of environment variable queries at runtime.
ARB_texture_cube_map and EXT_texture_cube_map for ES 2.0
IFF emulation improvements
Emscripten build improvements
Update zlib to version 1.2.8
Update libpng to version 1.6.3
Update mongoose to version 3.8
2013-08-09 16:54:25 -05:00
Scott Nations
d4065e8033 New version of RegalPpca based on RegalClientState.h 2013-08-05 20:46:49 -05:00
Nigel Stewart
917b7726b7 Add GL_R and GL_RG formats from ARB_texture_rg and EXT_texture_rg
ARB_multitexture emulation for ES 2.0
2013-07-10 14:21:57 -05:00
Nigel Stewart
6d683dd297 ARB_draw_buffers emulation for ES 2.0
glReadBuffer emulation for ES 2.0
JSON support for hint emulation layer.
2013-06-29 18:56:47 -05:00
Nigel Stewart
29115d6b88 Extend emulation dispatch to hinting.
GLEW refresh (w.r.t opengl.org)
Some GL API harmonization with apitrace.
Add Regal support for GL_SGIX_ycrcb
Further GL_REGAL_enable support for glEnable/glDisable of dispatch layers.
DSA emulation moved to downstream of Regal::Emu::Iff
Trace dispatch fixes for WGL
Support for REGAL_TRACE_FILE setting, and JSON property.
Tidy-up of Regal::Emu::Filt
2013-06-25 14:22:53 -05:00
Nigel Stewart
1c72872ed1 Enable GL_CLAMP on ES2.0/3.0 and core GL contexts by remapping to equivalent GL_CLAMP_TO_EDGE
Add emulation support for glInterleavedArrays().
Add emulation support for DSA VertexArray*OffsetEXT routines.
RegalUtil.h namespace macros moved to RegalNamespace.h
2013-06-20 12:26:56 -05:00
Nigel Stewart
0c089bf5bc DispatcherGlobal added for global (GLX/WGL/EGL) API dispatch layering.
Work-in-progress: apitrace dispatch layer for Regal, not enabled yet.
Added All.sln for VC10 purposes.
2013-06-05 23:06:03 -05:00
Nigel Stewart
21ad75c27b Revamp TLS (thread local storage) for storing more than context pointer per thread.
Add RegalPlugin private API for plugin dispatch layers to call back into Regal.
Resolve snappy library Windows compilation warnings.
Improvements for filtering emulation.
Support EXT_framebuffer_object on ES 2
2013-05-26 14:19:58 -05:00
Nigel Stewart
a2368ee9ed Update ES 2.0 extensions.
Cube map support for texture caching.
Improved ES 2.0 API filtering.
Fix for MAX_TEXTURE_SIZE and SUBPIXEL_BITS queries.
Improved logging for glSamplerParmeter calls.
2013-05-16 18:11:30 -05:00
Nigel Stewart
11e4f18fa1 More Regal::Emu::Ppa (push/pop attrib) support.
GL_EXT_blend_color, GL_EXT_blend_subtract and GL_NV_blend_square emulation for ES 2.0.
ARB_shader_subroutine completeness for NV_gpu_program5 purposes.
Better log nesting for begin/end, push/pop log pairs.
Regal.cpp codegen tidy-up: reduce casting for default return values.
Regal context sharing for WGL too.
Log the return values of global functions (WGL, etc) in the driver logging stream.
Regal::Marker needs two versions of toString, depending on the relevant extension being emulated.
2013-04-19 17:19:30 -05:00
Cass Everitt
ba3bb78e03 fixes to make Space Junk work with both core and compat profiles 2013-03-13 22:08:00 -05:00
Nigel Stewart
932ed14443 Add Regal::scoped_ptr and Regal::scoped_array
Improved Mac OS X force core context.
Add Error dispatch breakpoint to Regal::break scope.
Improved core context support.
2013-03-05 08:03:49 -06:00
Nigel Stewart
1ab8165ef4 Further emulation API filtering for core contexts.
Add Regal::Break::Filter for debugger breakpoints on filtered functions.
Mac XCode project updates.
Windows VC10 project updates.
2013-03-01 15:07:31 -06:00
Nigel Stewart
8fc3965ed5 Initial pass-through ES1 support.
Regal::Emu::So optimizations.
2013-02-21 17:54:27 -06:00
Nigel Stewart
caf381f0d9 Resolve gcc compiler warnings
Initial REGAL_SYS_ES1, REGAL_SYS_ES2 and REGAL_SYS_GL for compile-time support for ES 1.x, ES 2.x or deskop back-end GL support.
2013-02-15 18:29:30 -06:00
Nigel Stewart
9f92aa94e7 Restructure scripts directory - scripts/api for database and Api code
Extend GL database to list per-extension information
EmuFilter layer - selective ES 2.0 filtering
Increase the strictness of emulation regex matching - must be unique
Initial implementation of JSON output
2013-02-12 14:22:00 -06:00
Nigel Stewart
fcf8e606de For Makefile build, specify MODE=debug for debug-mode build.
Fixup: exit glFrameTerminatorGREMEDY appropriately whether Regal::Frame is in use, or not.
Use -O1 for linux-arm Makefile build, to workaround goofy assembler error.
Fixes for Regal extensions handling.
eglGetProcAddress fix.
Improved EGL logging.
2012-11-29 11:03:15 -06:00
Nigel Stewart
994fa02b69 Replace the use of RegalEmuScopedActivate with generic Push<int>.
Add EmuFilter for preventing glClientActiveTexture calls into ES 2.0 specifically.
Updates for XCode and Visual Studio builds.
2012-09-24 14:52:26 -05:00