rdb
193ae8a3a6
pgraph: take advantage of constant initialization for states maps
...
SimpleHashMap has a constexpr default constructor, so there is no static init ordering issue that requires us to allocate the states maps on the heap and then to leak them.
2019-01-07 18:40:30 +01:00
rdb
775e4cecff
pgraph: fix freeze in garbage_collect(), esp. when rate-limit is on
2018-10-17 19:09:36 +02:00
Sam Edwards
b2bfb31114
general: Remove `using std::*` from headers
...
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.
Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards
e2b4353800
general: Replace NULL (and 0 as pointer) with C++11 nullptr
...
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06: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
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
f79fbf25c3
ShaderGenerator: big overhaul, don't generate more shaders than needed
2017-07-10 21:55:27 +02:00
Younguk Kim
e07e5d0203
Fix assert macros that cause a crash in non-debug
2017-07-05 19:49:46 +09:00
rdb
90f96fc1a9
Change SimpleHashMap implementation to improve performance of GC.
...
The new implementation stores elements contiguously and keeps a separate sparse array of indices, similar to the new PyPy and CPython implementations. This vastly improves performance when iterating over the individual elements, such as when garbage collecting states, and decreases memory usage.
2017-06-12 19:58:02 +02:00
rdb
6b882ac767
Fix slow garbage collect after using a lot of states
2017-06-09 20:12:49 +02:00
rdb
81e414030e
Fix RenderState cache leak - gc did not work properly
...
(Thanks to deflected for helping to track this down)
2017-05-13 23:30: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
rdb
18874fa151
Replace PN_int/uint types with stdint.h types, since all compilers we support have them.
...
Plus, we already had code that relied on them being available anyway.
2016-05-11 00:27:58 +02:00
rdb
2bf886fc5b
Add premultiplied alpha mode, for convenience
2016-03-02 17:55:34 +01:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
rdb
bdf91e206d
Remove references to Python.h and py_config.h from Panda headers, to prevent picking up a dependency on Python libraries in third-party modules
2015-11-28 16:33:44 +01:00
rdb
7f7f85794d
Fix various compilation and linker issues across several platforms
2015-10-07 21:09:35 +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
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
369f93951f
fix a memory leak in the garbage-collect-states case
2011-09-08 15:02:34 +00:00
David Rose
3ed8632a68
further bugfixes
2011-09-05 23:53:19 +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
220ba658a0
new, experimental TransformState seems to work better for multithreading
2011-09-04 02:52:41 +00:00
David Rose
c3d8f81581
progress on multithreaded Panda
2011-09-04 00:11:57 +00:00
David Rose
ae77c767c2
fix comment
2010-08-21 00:22:13 +00:00
David Rose
aefe3d35c2
merge dev_bam_2009 to trunk
2009-06-10 17:54:40 +00:00
rdb
4e067a74c1
Fix couple of circular dependencies, eliminate ShaderGeneratorBase
2009-06-02 09:57:33 +00:00
rdb
159026571b
Added shadow mapping support to Panda
2009-06-02 09:24:03 +00:00
David Rose
8f01bbd3d9
compiler warnings
2009-04-18 12:38:09 +00:00
David Rose
e41d03482f
fix TransformState leak
2009-03-11 00:21:01 +00:00
rdb
f1e660373d
Why was _generated_shader not initialized?
2009-02-28 12:11:21 +00:00
David Rose
2db915af4d
fix compose
2008-11-22 01:20:16 +00:00
David Rose
8a04a06b0b
fix adjust_all_priorities
2008-11-21 20:40:10 +00:00
David Rose
26754b86ca
merge dev_slots_2008: slot-based RenderState implementation
2008-11-19 01:21:44 +00:00
David Rose
075710bced
create pgraphnodes directory; move some things there from pgraph
2008-11-06 00:06:39 +00:00
David Rose
d4c2c9858d
SIMPLE_THREADS_NO_MUTEX -> LightMutex
2008-10-08 23:23:40 +00:00
David Rose
15f44d52b1
don't need all that hashtable output
2008-08-08 19:31:37 +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
David Rose
a3999eff61
fix white nametag issue
2008-01-29 01:56:55 +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