rdb
d48695cb2e
glgsg: fix occasional WeakPointerTo dereference
2018-06-14 22:51:35 +02:00
rdb
9fad3dba60
general: remove macros for compatibility with non-C++11 compilers
...
Now that we require MSVC 2015, we no longer need all this nonsense, so we can write cleaner code.
2018-05-23 23:33:05 +02:00
rdb
fa1c480508
general: clean up use of override keyword
2017-07-03 12:56:23 +02:00
rdb
6f8b379bda
Big patch full of performance improvements
...
This particularly benefits applications with a lot of nodes.
2017-04-03 01:41:23 +02:00
rdb
34068dc0c1
Implement support for SSBOs
2016-12-13 21:22:17 +01:00
rdb
723c1de520
Fix various emscripten compile issues
2016-04-28 21:15:46 +02:00
rdb
e73a89705b
Improve OpenGL ES support, add OpenGL ES 3 support
2016-04-04 17:00:27 +02:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
rdb
08c29313b2
Reduce redundant state changes, add gl-fixed-vertex-attrib-locations
2015-12-22 20:22:24 +01:00
rdb
927a5bd48b
More efficiently manage which vertex arrays are enabled/disabled
2015-12-21 21:23:20 +01:00
rdb
1628238222
Fix circular reference in shader context preventing shader states from being cleared
2015-11-28 17:52:03 +01:00
rdb
68f762aa20
Fix leak of prepared contexts, prevent deleting GL resources in wrong context in multi-GSG applications
2015-11-08 00:01:45 +01:00
rdb
e4c3301bd0
Shader context input state tracking system, for more efficiently updating shader inputs
2015-07-28 16:33:34 +02:00
rdb
5e219f6438
Add support for uniform int osg_FrameNumber in GLSL
2015-07-17 21:34:29 +02:00
rdb
da6140a8cc
Changes to GLSL input handling that further assist in efforts to port from Cg to GLSL
2015-07-14 21:04:50 +01:00
rdb
419eadb859
Support hardware skinning in GLSL
2015-06-21 20:28:31 +02:00
rdb
e2dfc935a1
Various refactoring, esp. of GLSL input system
2015-05-21 14:16:45 +02:00
rdb
90ad6f00bf
Change p3d_Color behavior to take ColorAttrib into account; assign white if missing
2015-05-02 15:48:21 +02:00
rdb
0343c4f186
GLSL robustness and issue fixes:
...
* Int params were not being implicitly converted to float properly
* p3d_TextureN now accepts other sampler types
* More error checking for parameter types
* p3d_ColorScale et al also allows vec3 instead of vec4 now
2015-04-14 15:48:48 +02:00
rdb
16e7831566
Remove executable permissions from files that don't need them
2015-04-05 15:41:49 +02:00
rdb
cda7c1f171
OpenGL ES 2 optimizations and better support
2015-04-04 21:58:29 +02:00
rdb
059f67d1b5
Improve GLSL error reporting, fix GLSL ES shader loading
2015-04-04 20:57:04 +02:00
rdb
3aefaff8b1
Show source filename in GLSL error logs
2015-02-01 19:25:51 +01:00
rdb
efa258ebf3
Memory barriers, immutable texture storage, bindless textures, fixes for multisample FBOs, code cleanup, etc.
2014-07-15 08:46:58 +00:00
rdb
ce6f243019
Clean up glShaderContext, separate GLSL shader context from Cg shader context
2014-06-29 08:28:16 +00:00
rdb
39a321d0ba
Compute shader support under OpenGL :-)
2014-06-19 21:29:35 +00:00
rdb
e4747ebf50
Extremely experimental support for GL_ARB_shader_image_load_store
2014-06-15 12:57:58 +00:00
rdb
04bbf28a71
Oops, forgot to check in header file as well.
2014-02-16 10:22:11 +00:00
rdb
c7976e945d
Fix various GLSL bugs: attributes, p3d_Color range, and missing MatrixInverseTranspose stuff
2012-12-20 16:01:41 +00:00
Zhao Huang
3d05d84d87
Added support for shorthand shaderinput lexicons like mspos_camshadow and
...
trans_model_to_clip_of_camshadow to GLSL.
2012-11-13 02:45:44 +00:00
David Rose
e9053ff910
support GLSL tessellation shaders
2012-04-27 20:29:47 +00:00
rdb
4b4ccee24a
Don't even try to build Cg support when building for OpenGL ES, which is unsupported by the Cg Toolkit anyway.
...
The code tried to include cg/cgGL.h in the case that HAVE_CG was defined, but internally cgGL.h included GL/gl.h, so I got header file conflicts between OpenGL and OpenGL ES.
2010-12-18 23:29:00 +00:00
rdb
30a2c57cb3
Fix an issue with programs being destroyed and then reused by different copies of the same shader. Also, added better error reporting system for Cg errors.
2009-09-19 09:55:05 +00:00
rdb
5f4fe3bc32
Fix some compiler warnings
2009-09-12 10:45:49 +00:00
rdb
ebf6291663
Fix build errors for mainstream OpenGL
2009-07-02 15:19:37 +00:00
rdb
66349ecaba
This is another big commit - chief new features are:
...
* Working OpenGL ES 2.x support. Yay!
* The shader code now supports separate vertex/fragment/geometry shaders.
* The GLSL code supports passing vertex attrib arrays.
2009-07-02 15:01:36 +00:00
rdb
d8fe8dda6a
Build for OpenGL ES (2)
2009-07-01 10:13:51 +00:00
rdb
ab2737ac1a
Fix crash when cleaning up GLSL shader
2009-06-29 13:48:43 +00:00
rdb
100400f425
Add support for GLSL shaders
2009-06-26 13:11:24 +00:00
David Rose
58c13de4ca
integrate changes from Schell Games (plus some tab character fixes)
2009-06-01 21:51:15 +00:00
David Rose
fb9c56432a
we are now using the modified BSD license
2008-05-28 18:37:20 +00:00
Josh Yelon
1d954d5104
Improvements to Shader Generator
2008-01-28 17:28:09 +00:00
Josh Yelon
d8e6dc13a3
Modifications to eliminate class ShaderExpansion
2007-12-13 20:56:29 +00:00
Josh Yelon
32a6c8fd95
Fixes some bugs in cg parameter handling
2007-08-02 22:02:10 +00:00
David Rose
68c9ef5207
don't prune nonresident geometry in cull--wait until draw
2007-06-07 21:45:33 +00:00
David Rose
1fdb425b88
merge shader_overhaul from jyelon
2007-03-15 21:04:31 +00:00
Josh Yelon
cde115a055
Got hardware shadows in Cg working, for real this time
2006-04-06 16:44:38 +00:00
David Rose
8a78fffd8f
multithreading optimizations, tau profiler, related changes
2006-04-05 19:36:05 +00:00
Josh Yelon
ba74d9a772
Eliminated Cg references in gobj/shaderContext
2006-02-28 22:06:49 +00:00
Josh Yelon
129cef9f62
Major overhaul to shader subsystem
2006-02-27 21:52:36 +00:00