230 Commits

Author SHA1 Message Date
rdb
e4c3301bd0 Shader context input state tracking system, for more efficiently updating shader inputs 2015-07-28 16:33:34 +02:00
rdb
f33e450823 A lot of performance changes, particularly wrt dcasts and state management 2015-07-27 16:32:57 +02:00
rdb
1bb1cc79f4 Improve reporting of supported extensions and compressed formats 2015-07-19 20:13:55 +02:00
rdb
555844f82a Allow compiling out the fixed-function pipeline and request core context 2015-07-09 16:43:45 +02:00
rdb
220015a234 Drop support for vertex blend/matrix palette in OpenGL, no driver ever supported it (well) 2015-07-09 14:26:24 +02:00
rdb
ef9908c277 More robust Cg support on non-NVIDIA card + automatically enable hardware skinning in Shader Generator 2015-07-07 02:51:48 +02:00
rdb
82e098e578 Move auto-rescale-normal handling out of GSG, support normalizing normals in shader generator 2015-06-13 18:20:18 +02:00
rdb
e2dfc935a1 Various refactoring, esp. of GLSL input system 2015-05-21 14:16:45 +02:00
rdb
18533a29bf Merge branch 'release/1.9.x' 2015-05-18 02:08:27 +02:00
rdb
49e0ff000c Track residency of graphics buffers (both RTT and renderbuffers) 2015-05-18 02:07:35 +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
fdc8918946 Add packed unsigned 11/10/10-bit floating point vertex format 2015-05-02 14:20:51 +02:00
rdb
2ff9083812 Add support for buffer textures 2015-04-16 16:55:29 +02:00
rdb
cda7c1f171 OpenGL ES 2 optimizations and better support 2015-04-04 21:58:29 +02:00
rdb
b323d73622 Reduce redundant state changes and error checks 2015-04-04 21:04:27 +02:00
rdb
3b1bd9ef39 This fixes most issues with Cg's GLSL profiles on non-NVIDIA cards 2015-02-02 16:31:23 +01:00
rdb
a7d1eb90c5 Expose has_extension to query whether OpenGL extension is supported 2015-01-24 21:56:06 +01:00
rdb
77c9e6cf6c Add support for instance arrays via vertex attrib divisors 2015-01-22 17:04:25 +01:00
rdb
0ad0d4ec33 Further optimizations to the cull pipeline.
The only transform still stored in CullableObject is internal transform.

NB: I haven't tested my PipeOcclusionCullTraverser changes.  Please contact me if you encounter problems with it.
2015-01-22 16:22:16 +01:00
rdb
75c1364373 Disable use of GL_NV_primitive_restart due to driver bugs 2015-01-08 11:43:28 +01:00
rdb
3831d44576 Fix issue with resetting ScissorAttrib state
https://www.panda3d.org/forums/viewtopic.php?f=1&t=17505
2015-01-02 22:38:02 +01:00
rdb
01b669ccd8 Implement texture clear, fix immutable tex support 2014-12-21 14:13:49 +01:00
rdb
89031b4e48 Fix mipmapping with sampler state 2014-12-12 20:27:08 +01:00
rdb
95d85819b0 Separate out sampler state from texture, support sampler objects, support LOD min/max/bias 2014-12-12 15:58:45 +01:00
rdb
ce1282c7e3 Fixes for primitive restart index stuff 2014-11-04 14:14:49 +00:00
rdb
fbc3564bf9 More work on Android port 2014-10-08 15:09:25 +00:00
rdb
a25a9e655e Support strip cut indices and (using those) support direct rendering of linestrips in OpenGL 2014-09-25 00:16:44 +00:00
rdb
db0fd516a0 Add GPU profiling capabilities to PStats using OpenGL timer queries 2014-09-24 23:53:37 +00:00
rdb
0e785de0ff Fix crash in do_issue_scissor 2014-09-20 20:51:40 +00:00
rdb
1055c2e0fd Use glClearBufferfv to clear MRTs more efficiently (without having to call glDrawBuffers several times) 2014-08-17 16:41:19 +00:00
rdb
0ef51b8723 Support for integer vertex attributes in GLSL 2014-07-18 15:39:49 +00: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
40c880a1c0 Viewport array support on DisplayRegion. Not 100% sure if I want to end up sticking to this design, but it works. (I may revert this later.) 2014-07-07 19:10:15 +00:00
rdb
0b8d9fd08e Fixes for OpenGL ES 2014-07-03 22:24:34 +00:00
rdb
6e64ff951c Add support for passing int arrays and vectors to GLSL shaders. 2014-07-03 21:54:45 +00:00
rdb
a16b98a468 Disable error checking by default for a substantial performance increase 2014-07-03 17:10:41 +00:00
rdb
a726ccf303 Fixes for image binding 2014-06-29 10:07:38 +00:00
rdb
ce6f243019 Clean up glShaderContext, separate GLSL shader context from Cg shader context 2014-06-29 08:28:16 +00:00
rdb
de5031afde gl-dump-compiled-shaders, pstats collector for compute-dispatch call, a few minor other things 2014-06-26 19:13:52 +00:00
rdb
128f82863e Support OpenGL debugging features (see gl-debug).
Also fixed the GLX code not to call reset() on the temp context but on the real context instead.
2014-06-20 13:17:01 +00:00
rdb
39a321d0ba Compute shader support under OpenGL :-) 2014-06-19 21:29:35 +00:00
rdb
df30721f79 Seamless cube map sampling in OpenGL 2014-06-18 22:29:50 +00:00
rdb
6454ddddc5 Eliminate GLP() macro (so we can write glEnable instead of GLP(Enable) again). 2014-06-18 21:06:05 +00:00
rdb
c33ef307d6 Delete MesaGL renderer, it seems not to be used any more 2014-06-18 14:59:11 +00:00
rdb
e4747ebf50 Extremely experimental support for GL_ARB_shader_image_load_store 2014-06-15 12:57:58 +00:00
rdb
d792c93026 Overhaul stereo FBOs in Panda making it more reliable, fix MRT bugs, disable auto-GLSL profile choosing on AMD, add max_color_targets (not yet implemented) 2014-04-04 08:45:49 +00:00
rdb
fccd9965ee support for using the mat3 type in a shader. make p3d_NormalMatrix a mat3. 2013-09-19 22:44:38 +00:00
rdb
64c598abb1 various fixes for FBOs and image formats, including tobspr's patch for F_r16, F_rg16, F_rgb16 support. 2013-09-17 22:08:31 +00:00
rdb
6113979792 merge from panda3d_1_8_branch: work around conflicting declarations of glShaderSource 2013-08-13 20:35:07 +00:00
rdb
2274f2e651 FBO overhaul: support layered framebuffers (RTM_bind_layered), support render-to-2d-array, better respect FrameBufferProperties, more simple handling of RTP_depth_stencil 2013-08-13 12:44:27 +00:00