Commit Graph

22853 Commits

Author SHA1 Message Date
Sam Edwards b20c6e801c CMake: Add an export_packages() function to export PKG::*
This is needed to support install(EXPORT)
2018-12-27 17:20:25 -07:00
Sam Edwards c50bf63aee CMake: Fix showbase build error on macOS 2018-12-11 18:28:12 -07:00
Sam Edwards 7d6386f2de CMake: Change some stray "Panda" install components with "Core" 2018-12-11 17:27:37 -07:00
Sam Edwards 99fee1a64d CMake: Assign COMPONENT and EXPORT to all targets 2018-12-06 17:48:44 -07:00
Sam Edwards 8b6a2cfd09 CMake: Update add_python_module to support COMPONENT 2018-12-06 17:48:03 -07:00
Sam Edwards 9fffb5605a CMake: Update Python install macros to accept COMPONENT and EXPORT 2018-12-06 17:47:19 -07:00
Sam Edwards b3e257746e CMake: Oops, fix where `panda3d` Python package goes 2018-12-05 19:51:04 -07:00
Sam Edwards 58dd889165 CMake: Simplify Interrogate.cmake's add_python_module() keyword handling 2018-12-05 18:56:29 -07:00
Sam Edwards 368cdc2802 CMake: Move pandac.* generation to be part of direct 2018-12-01 14:43:41 -07:00
Sam Edwards df805bd02b Merge branch 'master' into cmake 2018-11-28 21:54:58 -07:00
Sam Edwards e49306fec9 CMake: Wrap target names in $<TARGET_NAME:...>
This helps CMake's export generator understand the expression.
2018-11-28 16:13:05 -07:00
Sam Edwards 8df53698f4 CMake: Add missing .h/.I files that weren't getting installed 2018-11-28 16:13:05 -07:00
Sam Edwards 940ef456ff CMake: Only link PRIVATEly against libraries not installed 2018-11-28 14:06:05 -07:00
Sam Edwards 1f029b1cd3 CMake: Fix pandagles(2) component lists 2018-11-28 14:05:32 -07:00
Sam Edwards 9be6b6b314 CMake: Work around bug in CMake 3.0.2
CMake versions that old insist that source files
in the binary directory be specified absolutely
or do not contain `..`, so we do the former.
2018-11-28 14:05:32 -07:00
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 594e6b394b chan: add various property interfaces to animation system 2018-11-28 16:46:49 +01:00
rdb 69f8f8b7b7 ffmpeg: remove call deprecated in ffmpeg's libavformat 58.9.100 2018-11-28 16:22:27 +01:00
rdb 85cb742f79 ffmpeg: drain avcodec contexts on close, fixes leak
Fixes #398
2018-11-28 16:14:45 +01:00
rdb 32df05b528 Fix crash when unmounting/closing multifile while streams are open
It's not really reasonable to expect a user to find every occurrence of a cached resource that might be using an open stream and remove it or crash otherwise.

This is fixed by keeping the multifile stream open as long as any substreams are still pointing to it, using a simplified reference counting (care is taken not to fully make StreamWrapper reference-counted, since it's not in express and existing uses should not be broken).

Fixes #449
Also see #428
2018-11-27 21:19:38 +01:00
rdb 7ed9655e06 openal: fix leak of sound data when uncache_sound on stream
This is an addendum to cd2ea97b1f (fix for #428) which did
not properly delete the SoundData when uncaching sounds that were loaded as streams.
2018-11-27 21:11:57 +01:00
rdb 5dd0db300b flac: fix leak; properly close stream upon closing FlacAudioCursor 2018-11-27 20:59:51 +01:00
rdb da079c5ffe glxdisplay: remove lock in dtor, which causes crash on shutdown 2018-11-27 17:10:40 +01:00
rdb c427357db9 pnmimage: fix PixelSpec coercion, add PixelSpec unit test 2018-11-27 17:09:40 +01:00
rdb 272f13023e glgsg: unbind buffers after draw callback
Some libraries (eg. Kivy) leave their buffers bound, so this takes care of that.
2018-11-25 16:46:38 +01:00
rdb 7c0a77af78 display: disable depth test before DisplayRegion draw callback
Having depth test disabled is the default OpenGL state, and callbacks may quite reasonably expect to see the default state.  Kivy seems to expect this, for one.
2018-11-24 22:45:41 +01:00
rdb 544ef137ee x11display: fix crash with multithreading and NVIDIA driver 2018-11-24 22:44:55 +01:00
rdb e32388c2f8 interrogate: fix crash reading static property 2018-11-24 22:44:09 +01:00
rdb 3f91615a22 glgsg: reset color write mask before calling draw callback 2018-11-23 00:23:52 +01:00
rdb bafb0ac3db x11display: add x-init-threads var to call XInitThreads()
This is off by default, but could be used if you stumble upon a race condition issue with X11 and threading.
2018-11-23 00:22:27 +01:00
rdb 8ad0cb6b57 glgsg: add support for p3d_FragData fragment output
This is necessary for GLSL 1.30 which deprecates gl_FragData but does not yet support layout(location=) specifiers

Also fix some function pointer checks for pre-GL 3.0

Fixes #455
2018-11-22 23:55:54 +01:00
rdb 0a1b6df648 glxdisplay: grab X11 lock around various GLX calls 2018-11-22 23:14:29 +01:00
rdb 254cea63bb display: fix assertion in threaded pipeline 2018-11-22 23:13:58 +01:00
rdb d093cbbb90 grutil: apply FPS meter improvements to scene graph analyzer too
This fixes the aspect ratio scaling issue in particular.

Fixes #456
2018-11-22 23:05:59 +01:00
rdb 356b604627 makepanda: link with IrrXML when using static assimp library
Same fix as #432 but for Linux
2018-11-20 14:50:40 +01:00
rdb 02979fa106 makepanda: use pkg-config for locating assimp 2018-11-20 14:49:44 +01:00
rdb ec4b0825e9 glgsg: restore more OpenGL state after draw callback 2018-11-20 12:41:43 +01:00
rdb 53cec96c07 Fix draw calls being listed under Primitive Setup in PStats, etc.
Previously, all draw calls would be grouped under "Primitive Setup", rather than under the appropriate bin collector.  This commit fixes that and adds a few other useful collectors as well.
2018-11-20 12:41:30 +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
rdb b1eec5fae0 CommonFilters: give passes a unique name for debugging/PStats 2018-11-20 00:39:47 +01:00
rdb d902ea5ce4 display: don't render window if all its DRs are inactive
This is an optimization, which will skip begin_frame/end_frame for a buffer that isn't going to have anything rendered to it.  Affects the RenderPipeline.
2018-11-20 00:39:44 +01:00
rdb e759a1b605 display: give DisplayRegions a more recognisable name in PStats 2018-11-19 21:01:43 +01:00
rdb 8f73f95e79 display: make PStats clear collectors per-window 2018-11-19 20:02:38 +01:00
Sam Edwards f59c6bb2bf CMake: Make FindODE link against libccd when present
This fixes building against the macOS/Homebrew version of ODE.
2018-11-15 02:24:28 -07:00
Sam Edwards 7f8d7366dc CMake: Update for upstream Interrogate changes
- "igateruntime" is no longer a thing
- interrogate_module embeds a preamble; we have to provide it
- WindowProperties now has an extension
2018-11-12 19:16:28 -07:00
Sam Edwards c3d52eeee1 express: Fix compiler error with HAVE_TAR 2018-11-12 17:24:15 -07:00
Sam Edwards 1ae736f881 CMake: Detect and build support for Assimp 2018-11-12 15:49:08 -07:00
Sam Edwards 226dc69af2 CMake: Remove references to deleted files in ode 2018-11-12 15:44:14 -07:00
Sam Edwards 6b26889e7e Merge branch 'master' into cmake 2018-11-12 15:41:42 -07:00
rdb 0e7302e86a tests: add a few basic unit tests for WindowProperties class 2018-11-12 18:14:48 +01:00