Commit Graph

91 Commits

Author SHA1 Message Date
rdb c59a039fa8 pgraph: fix RenderState/TransformState count in PStats exploding
This was a regression in 1.10.6 that caused PStats to misreport the amount of RenderState/TransformStates in the application.
2020-04-25 23:39:03 +02:00
rdb 19e1b1d877 pgraph: add version of RenderState::get_attrib(_def) taking a CPT 2018-06-14 22:51:12 +02:00
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
rdb e0245d2777 First step towards eliminating `using namespace std;` (#335) 2018-06-03 20:32:23 +02:00
rdb 3077316782 general: use proper deleted funcs instead of stubs with asserts
This gives better compile-time diagnostics and saves on code, while also better communicating intent.
2018-05-23 23:35:27 +02:00
rdb 410049fd4b Improvements for ShaderGenerator-based programs:
* Disable state munger, which isn't needed
 * Reflect updates to TextureStage properties (Fixes #178)
 * Also respect combine mode and rgb scale changes
 * Allow rehashing and clearing generated shader cache

State munger is now disabled whenever any shader is applied.  Panda assumes that any custom shader will apply color scale by itself.
2017-10-18 11:16:29 +02:00
rdb 6ecfcb1fd3 Store munged states more efficiently, without weak key maps 2017-10-17 23:21:38 +02:00
rdb 8078fa2b38 More efficiently store SimpleHashMap with empty values 2017-10-17 23:04:16 +02:00
rdb bf190f7306 interrogate: support MAKE_MAP_PROPERTY 2017-10-09 00:02:46 +02:00
rdb f79fbf25c3 ShaderGenerator: big overhaul, don't generate more shaders than needed 2017-07-10 21:55:27 +02:00
rdb 925ce854d0 general: make DO_MEMORY_USAGE setting not change ABI compatibility 2017-07-10 19:50:09 +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
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 18ad6d1543 Replace many int params with size_t params where appropriate, and work towards fixing type conversion warnings 2015-10-07 18:58:26 +02:00
rdb 0c4c8484ba Merge remote-tracking branch 'origin/release/1.9.x' 2015-08-20 21:28:25 +02:00
rdb 7fa0d3c60a Fix bug #1457688: libRocket elements show solid white in tinydisplay 2015-08-20 18:58:13 +02:00
rdb f33e450823 A lot of performance changes, particularly wrt dcasts and state management 2015-07-27 16:32:57 +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 b4bfe7010c A few convenience methods that allow for cleaner code in GSGs 2015-03-31 13:57:02 +02:00
rdb 7ba0469148 Shader generation should be done in cull, not in draw 2015-01-23 15:03:50 +01:00
rdb af15797a25 Many, many performance optimizations and enhancements 2015-01-07 19:30:01 +01:00
rdb 0473fa7ead Simplify oddly redundant StencilAttrib implementation.
Also add RenderState::compare_mask().
2014-12-03 22:44:07 +01:00
rdb 566feda34d Commit patch by cfsworks to move pgraph stuff to extensions 2014-04-04 09:23:58 +00:00
David Rose 2a3ad0d4e5 Add RenderState::get_auto_shader_state() 2011-11-07 00:08:04 +00:00
David Rose 229cf67ae5 Finishing migration of RenderState and RenderAttrib to SimpleHashMap and garbage_collect() models, working towards threaded pipelining 2011-09-04 15:47:45 +00:00
David Rose aefe3d35c2 merge dev_bam_2009 to trunk 2009-06-10 17:54:40 +00:00
rdb 159026571b Added shadow mapping support to Panda 2009-06-02 09:24:03 +00:00
David Rose e41d03482f fix TransformState leak 2009-03-11 00:21:01 +00:00
David Rose 2db915af4d fix compose 2008-11-22 01:20:16 +00:00
David Rose 26754b86ca merge dev_slots_2008: slot-based RenderState implementation 2008-11-19 01:21:44 +00:00
David Rose d4c2c9858d SIMPLE_THREADS_NO_MUTEX -> LightMutex 2008-10-08 23:23:40 +00:00
David Rose 4d59f04134 scissor MouseWatcherRegions too 2008-08-01 22:48:42 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
David Rose fc46272823 fix set_attrib() with override 2008-03-04 22:33:16 +00:00
David Rose 02b2d76274 more flatten bugs: fix color-scale support 2008-03-01 00:05:03 +00:00
Josh Yelon 1d44682463 Much progress implementing shader generator 2008-01-25 03:35:12 +00:00
David Rose e75c8695dd resolve dependency issue 2007-12-17 21:23:38 +00:00
Josh Yelon 5d0c234484 Added ShaderGenerator 2007-12-16 05:45:35 +00:00
Josh Yelon d8e6dc13a3 Modifications to eliminate class ShaderExpansion 2007-12-13 20:56:29 +00:00
David Rose 1287bcf8fa better performance analysis 2007-07-24 19:04:33 +00:00
Zachary Pavlov 220d33e006 okay, this is going to be a big commit. The basic idea here is to add transparent defines to allow for directory based dlls later. This will let us build tau again. ugggg 2007-07-20 23:02:51 +00:00
David Rose 68cd3322a9 better thread protection in reference counts, esp. TransformState etc. 2007-07-14 21:32:48 +00:00
David Rose 732bbafaa9 define NodePath::premunge_scene() and supporting implementation 2007-05-21 16:05:22 +00:00
Darren Ranalli 2a6b1cb479 added audioVolumeAttrib 2006-12-21 23:40:22 +00:00
David Rose b81fdf5f9d revisiting hashtables 2006-09-01 22:27:21 +00:00
David Rose fade04905d more mutex protection; more current_thread passing 2006-04-28 16:17:55 +00:00
David Rose 9e986fce40 make PStats more thread-friendly 2006-04-09 20:17:26 +00:00
David Rose 8a78fffd8f multithreading optimizations, tau profiler, related changes 2006-04-05 19:36:05 +00:00
David Rose 8567173ece more threading issues 2006-01-16 15:42:28 +00:00
Josh Yelon 2095d8c44f New shader system 2005-09-25 04:06:31 +00:00