Commit Graph

124 Commits

Author SHA1 Message Date
rdb 97d4e32a06 general: use nassert_raise instead of nassertv(false) et al
Even a brief error message in the assertion is infinitely more useful to a user who is not at home in the source code, especially for assertions that may reasonably be triggered by honest user mistakes.
2018-11-28 17:35:20 +01:00
rdb c18cdcf36e display: add support for debug markers, to help with debugging
This is useful when running Panda in a tool like apitrace, so that the different calls in a frame are ordered in a neat hierarchy.
2018-11-20 12:41:20 +01:00
Sam Edwards 4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06: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
Sam Edwards 9dd37e9dbc general: Add guards to ensure proper BUILDING_ macros defined
This is designed to sanity-check the buildsystem, ensuring that the
expected BUILDING_ macros are defined at the expected time. It
also helps catch cases where the wrong BUILDING_/EXPCL_ macros
are used.
2018-03-25 13:17:52 -06:00
rdb 9638eb47eb Add support for geometry with adjacency information
Example code: https://gist.github.com/rdb/7cebb8941b962c59d5a092048efb3855
2018-03-01 21:20:19 +01: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 48c811e112 cull: remove GeomMunger stored on CullableObject 2017-07-03 11:47:59 +02:00
rdb 53794e8e36 Get rid of unnecessary DisplayRegionBase class 2017-05-24 13:42:01 +02:00
rdb 34068dc0c1 Implement support for SSBOs 2016-12-13 21:22:17 +01:00
rdb b486de2700 Fix rare mutex error at shutdown: "MutexPosixImpl::acquire(): Assertion `result == 0' failed." 2016-05-29 02:03:36 +02:00
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 25451feb87 Improve shadow system, add point light shadows, GLSL shadow inputs 2015-12-07 21:12:07 +01:00
rdb 48808fe269 Add get_supports_hlsl check, fix shader generator for DirectX 9 2015-11-26 01:05:26 +01:00
rdb db3ab953e4 Remove ppremake, genPyCode, and all hacks created to support them 2015-11-09 19:06:49 +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 95d85819b0 Separate out sampler state from texture, support sampler objects, support LOD min/max/bias 2014-12-12 15:58:45 +01:00
rdb 5f8fffccfe Add GSG::get_supports_texture_srgb() 2014-10-08 15:13:26 +00:00
rdb db0fd516a0 Add GPU profiling capabilities to PStats using OpenGL timer queries 2014-09-24 23:53:37 +00:00
rdb 39a321d0ba Compute shader support under OpenGL :-) 2014-06-19 21:29:35 +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
David Rose bb6f151ea7 fix crash with transform-cache 0 2013-03-15 14:27:28 +00:00
David Rose e9053ff910 support GLSL tessellation shaders 2012-04-27 20:29:47 +00:00
David Rose 9a93914d58 properly support a different coordinate system per camera (or lens) 2012-03-14 20:51:58 +00:00
David Rose dfe16c64f6 rename all Panda-built libraries to begin with libp3 or libpanda 2011-12-06 02:39:21 +00:00
David Rose 501470169f stdfloat_double 2011-10-10 05:25:10 +00:00
David Rose 6872488839 stereo/multiview textures 2011-08-08 18:55:26 +00:00
rdb 557abfae5e Fixes for this circular dependency mess 2009-06-02 15:21:36 +00:00
rdb 4e067a74c1 Fix couple of circular dependencies, eliminate ShaderGeneratorBase 2009-06-02 09:57:33 +00:00
David Rose 8d234769ab GraphicsOutputBase 2009-05-28 00:42:53 +00:00
David Rose eee0f7321b fix vertex-buffer problem in callbacks 2009-03-15 00:01:05 +00:00
David Rose 0c90c36fd7 new callback system 2009-03-14 19:31:37 +00:00
David Rose cd48a64f86 StereoDisplayRegion 2009-02-20 20:55:15 +00:00
David Rose 9d0860fffd get_effective_incomplete_render() for cull too 2009-01-30 19:14:49 +00:00
David Rose a398ac7517 fix removing windows, and also gl hack for compressed mipmaps 2009-01-16 01:25:53 +00:00
David Rose b37a30fe63 add support for libsquish 2009-01-12 23:29:55 +00:00
David Rose d4c2c9858d SIMPLE_THREADS_NO_MUTEX -> LightMutex 2008-10-08 23:23:40 +00:00
David Rose 8c2e657f15 Add gsg::update_texture() 2008-08-25 22:58:58 +00:00
David Rose 617a769ef7 more work towards asynchronous texture loads: auto-caching compressed texture versions 2008-08-14 23:50:17 +00:00
David Rose d7e6603118 work-in-progress: asynchronous texture loads 2008-08-13 01:13:09 +00:00
David Rose 7e5c276403 more robust copy-to-texture 2008-08-11 22:19:26 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
David Rose 230d7825d3 fiddly bits 2008-05-03 00:37:47 +00:00
Josh Yelon d8e6dc13a3 Modifications to eliminate class ShaderExpansion 2007-12-13 20:56:29 +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 68c9ef5207 don't prune nonresident geometry in cull--wait until draw 2007-06-07 21:45:33 +00:00
David Rose 8b83a2601a oops 2007-06-04 15:53:41 +00:00
David Rose eadc777341 oops, omitted _lock 2007-05-21 22:53:33 +00:00
David Rose d1795d4bfd build on win32 2007-05-21 22:40:14 +00:00