Commit graph

36 commits

Author SHA1 Message Date
Scott Nations
586b2e12be Add support for OpenGL 4.5 and recent extensions
Update Regal GLEW to 1.11.0, including OpenGL 4.5
Refresh apitrace from upstream
Can now "make framework" under Mac OS
Merged pull requests 134, 135, and 136
2014-08-12 21:32:45 -05:00
Scott Nations
fa2f167e39 Replaced mongoose code with civetweb (https://github.com/bel2125/civetweb)
Refreshed apitrace, GLEW, and FreeGLUT
2014-01-31 10:51:06 -06:00
Scott Nations
07a4ea3d8c GL_REGAL_proc_address extension adding glGetProcAddressREGAL
refresh GLEW and use glGetProcAddressREGAL in GLEW_REGAL mode
improved support of NV_path_rendering entry points
fix for glewinfo when using Regal on OSX
fix Linux build of RegalGLU and RegalGLUT
tiger example works on Linux and OSX now
2014-01-20 15:02:39 -06:00
Scott Nations
7864ed22f0 Resolve compilation error for Android NDK r9b clang toolchain.
refresh GLEW and apitrace
2014-01-08 17:21:52 -06:00
Nigel Stewart
ce35076e59 Apitrace updates, DSA fixes, NV_bindless_texture, NV_draw_texture, AMD_sparse_texture.
Regal gl.py fixups.
Initial build target support for wrangler-mode Regal.
GLEW refresh.
2013-11-22 15:02:03 -06: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
eefa36ce5d Emu::Quads complete and enabled for ES2 and Core contexts
Fix: Properly categorize EGL_VERSION_1_0 enums, and handle EGL_VERSION_1_3 and EGL_VERSION_1_4
Emu::Iff - change Modelview to ModelView to match GL built-ins properly
libpng - ARM and Neon support added from upstream
Android logging - skip logcat if we are logging to a file
GLbitfield logging for glPushClientAttrib
Windows fixup - detect ES2 context and avoid querying desktop context limits
Fixup - Ensure that Init::init() happens before Init::makeCurrent
Query REGAL_SYS_ES2 and REGAL_SYS_GL environment variables - need to choose right .so to load
2013-10-21 14:03:44 -05:00
Nigel Stewart
b6bc25405b Add Emu::Quads emulation layer - work in progress, not enabled yet
Fixups for Regal::ContextInfo context limit query, GL error checking added
Modularized Mac OS X projects - iOS to follow
Add doc/config for example JSON configurations
GL Core context check for GL 3.2 onwards only
Do not strip googletest static library
Need to query provoking vertex convention for Quads emulation purposes
Default to 1024 for maxLength in Regal::Marker
For minimal footprint, optional REGAL_ENUM_TO_STRING at build-time
Respect REGAL_LOG_POINTERS and REGAL_LOG_THREAD in a few more places
2013-10-14 10:23:10 -05:00
Nigel Stewart
d4165ba10b OpenGL and OpenGL ES 2.0 API updates.
Fix for https://github.com/p3/regal/issues/103
GLEW refresh
Apitrace updates from upstream
Further squeezing footprint for REGAL_WRANGLER mode.
2013-10-06 11:41:39 -05:00
Nigel Stewart
3ad6fd770e Revised version of commit b92e6bb26a
Consolidation of various GL context limits into RegalEmu.h and ContextInfo
Improved array bounds checking for emulation
More querable states for GL database
Revision: Resolve Iff fixed-function lighting emulation perf regression.
2013-09-09 12:23:02 -05:00
Nigel Stewart
39a386c369 Revert "Consolidation of various GL context limits into RegalEmu.h and ContextInfo"
Due to performance regression in Emu::Iff

This reverts commit b92e6bb26a.
2013-09-06 12:08:08 -05:00
Nigel Stewart
b92e6bb26a Consolidation of various GL context limits into RegalEmu.h and ContextInfo
Improved array bounds checking for emulation
More querable states for GL database
2013-09-06 09:40:29 -05:00
Nigel Stewart
5157da1820 Emscripten now working for dreamtorus.
Initial scaffolding for GLX emulation on EGL/WGL/CGL.
Ppca refinements.
Add GL_NV_blend_equation_advanced and GL_NV_blend_equation_advanced_coherent support.
RegalX11.cpp added for fake X11 purposes for GLX emulation.
GLEW refresh.
Fixups for REGAL_SYS_EMSCRIPTEN_STATIC mode.
2013-08-23 09:49:09 -05:00
Nigel Stewart
8969282b18 Add GL_ARB_multi_bind
Merge and harmonize src/apitrace with upstream
Merging Emscripten changes from Vladimir Vukicevic, except Makefile
More entry points for RegalDispatchGMock
2013-07-26 10:36:56 -05:00
Nigel Stewart
d1c422ac11 Add OpenGL 4.4 support
Update GLEW to 1.10.0
2013-07-22 13:08:39 -05:00
Nigel Stewart
47bbe699cd Add Regal support for GL_ANGLE_timer_query and GL_INTEL_map_texture
GLEW refresh to Sourceforge top-of-tree
Codegen refinement - sort enums by name for switch statements, etc
ARB_multitexture emulation for ES 2.0
(ARB|EXT)_texture_env_combine and (ARB|EXT)_texture_env_dot3 for ES 2.0
2013-07-17 16:40:10 -05:00
Nigel Stewart
20b5c5379d Extend RegalPlugin to provide name based lookup.
Regal.h touch-ups for harmonizing with apitrace.
API database support for maps of per-platform types.
2013-07-06 00:17:05 -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
be8dc8b892 Emulation support for DSA gl(Enable|Disable)VertexArrayEXT and VertexArrayOffset commands.
Initial implementation of Draw*Elements*BaseVertex* emulation.
IBM_texture_mirrored_repeat extension emulation for ES 2.0.
Use REGAL_CALL for GLDEBUGPROC* function typedefs.
Fix logging of string in glNamedProgramStringARB.
Fix logging of commands with ref and mask.
2013-06-15 08:52:59 -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
1105d274ad Initial implementation of statistics gathering dispath. REGAL_STATISTICS=1
FreeGLUT refresh.
RegalClientState functionally complete.
2013-05-30 07:13:53 -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
22edd515b0 Add GL_NV_draw_texture support.
Add REGAL_SYS_WIN32 for both REGAL_SYS_WGL and REGAL_SYS_PPAPI (not Nacl) scenarios.
More Regal::Emu::Ppa support.
Android logging refinements.
2013-04-23 13:24:35 -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
Nigel Stewart
9f5de483e0 Automatic context sharing for GLX
JSON support for Config::enableTrace
Further push/pop attrib emulation support
2013-04-11 11:42:47 -05:00
Nigel Stewart
912038c46c Add enums for GL_HP_image_transform
Add enums for GL_SGIX_fragment_specular_lighting
Runtime flag for thread locking - work in progress
Platform notes for NaCl builds
Disable extra logging diagnostics for REGAL_SYS_PPAPI=1, for performance reasons
2013-04-01 20:12:20 -05:00
Nigel Stewart
75e75077b5 Add Mutex and ScopedLock classes for threading purposes
CGL API fixups
GL const parameter fixups
LONG and ULONG_PTR for Windows
Add Logging::process option to log process ID
Avoid glGetAttachedShaders in RegalDispatchLog unless driver logging is actually specifically enabled.
For RegalDispatchCode log the texture data to the header rather than source.
2013-03-29 15:45:14 -05:00
Nigel Stewart
7d91dfed26 Regal::helper::getInfoLog for accessing various GL info logs.
Add regaltest test coverage for Regal::helper::size::get
Eliminate global/static data in RegalIff.cpp
GL_VERSION_1_2 enums that GLEW missed out on: GL_MAX_ELEMENTS_VERTICES, GL_MAX_ELEMENTS_INDICES
Add GL_SGIS_detail_texture enums to gl.py
Add GL_ARB_viewport_array enums to gl.py
Regal::Config string variables for code generation dispatch layers.
For RegalDispatchCode - name shader and program return variables, rather than generic o output.
Add extra cast through void* to avoid -Wcast-align warning
Fixups for glShaderSource support in RegalDispatchCode
2013-03-25 22:33:16 -05:00
Nigel Stewart
a3912da6bd Regal::DispatchCode refinements.
Regal::Enum wrapped as struct.
2013-03-22 15:11:41 -05:00
Nigel Stewart
ff41547b92 Extend Regal::Config to have a configFile setting for read/write JSON configuration.
Also can be specified via REGAL_CONFIG_FILE environment variable.
Initial migration of Regal::Json::Output to boost::print::json::output
Update GLEW to sf/github TOT.
2013-03-20 14:12:02 -05:00
Nigel Stewart
5f2f76fe2c Extend Regal::Emu::Iff fixed-function emulation to raster-pos and window-pos.
Extend RegalHelper helper::size::get to desktop enums.
Trim extraneous whitespace.
2013-02-26 17:56:18 -06:00
Nigel Stewart
8fc3965ed5 Initial pass-through ES1 support.
Regal::Emu::So optimizations.
2013-02-21 17:54:27 -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
Renamed from scripts/gl.py (Browse further)