22725 Commits

Author SHA1 Message Date
rdb
585ba2d647 Prepare input API for multipointer support 2018-11-30 20:54:37 +01:00
rdb
447316c706 samples: fixes for gamepad samples 2018-11-30 20:54:37 +01:00
rdb
29170278e9 device: a few InputDevice API tweaks
find_button() and find_axis() should not error since there is no way to find out whether a button/axis exists or not
2018-11-30 20:54:35 +01:00
rdb
2087d8ee84 device: change InputDevice enums to enum classes 2018-11-30 20:41:06 +01:00
rdb
cc08bacec5 cocoa: fix compilation error 2018-11-30 17:13:35 +01:00
David Staer
aa750f4046 Fix BulletCapsuleShape creation from Panda CollisionTube
Functions get_point_a() and get_point_b() appear to return the top of the cylinder section of the tube, not the tip of the endcap, making subtracting the radius unnecessary.
2018-11-29 23:24:09 +08:00
rdb
d7124d4df4 Merge branch 'master' into deploy-ng 2018-11-29 12:57:49 +01: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 cd2ea97b1ffb65512f5ee8ba0665f46345ef7795 (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
37d2ff64de putil: add id and pressure fields to PointerData 2018-11-25 23:38:07 +01:00
rdb
26fcf131c9 Merge branch 'master' into input-overhaul 2018-11-25 17:10:31 +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
Mitchell Stokes
0c1572ce33 deploy-ng: Fix reference (e.g., texture) paths when using egg2bam
Fixes #277
2018-11-17 14:19:04 -08:00
Sam Edwards
c3d52eeee1 express: Fix compiler error with HAVE_TAR 2018-11-12 17:24:15 -07:00
rdb
ea832efb81 deploy-ng: fix run error with frozen attr module 2018-11-12 18:32:48 +01:00
rdb
3d7fcf2ce9 Merge branch 'master' into deploy-ng 2018-11-12 18:31:43 +01:00
rdb
0e7302e86a tests: add a few basic unit tests for WindowProperties class 2018-11-12 18:14:48 +01:00
rdb
074c5187b0 Adopt new WindowProperties(size=(x, y), ...) short-hand
This is intended as replacement for WindowProperties.size(x, y), which is deprecated since it conflicts with the `size` property.  See #444.
2018-11-12 17:53:53 +01:00
rdb
598664ab80 interrogate: disambiguate case where static method shadows a property
While it becomes possible to do this now, it should not become standard practice, and we should deprecate cases where we already do it by renaming either the static method or the property.

Fixes #444
2018-11-12 16:31:54 +01:00
rdb
d62c2bf132 Remove unfinished native COLLADA loader 2018-11-12 12:02:08 +01:00
Sam Edwards
a9dfd8352e general: Distinguish local/system includes
This changes includes so that local includes are consistently
#include "localFile.h"
while system and third-party includes are consistently
#include <systemFile.h>

This commit mostly converts the former to the latter; the two
exceptions are in android_main.cxx and fmodAudioSound.h, where
the reverse was necessary.
2018-11-10 18:00:10 -07:00
Sam Edwards
29beb0f043 assimp: Update include path
This changes the Assimp include path to point to the
directory containing assimp/ instead of inside assimp/
directly. This is for consistency with how the Assimp
project defines their "include path" and keeps the actual
inclusions themselves unambiguous (since Assimp's headers
have fairly generic filenames).
2018-11-10 18:00:09 -07:00
Sam Edwards
37e265cb63 ode: Delete unused odeHeightFieldGeom.h file 2018-11-10 18:00:07 -07:00
rdb
f629a5df1a cocoa: don't enable sRGB unless it was explicitly requested
Fixes #443
2018-11-09 18:25:07 +01:00
rdb
62ae624a95 makepanda: installer uses registry to add Panda3D to Python path 2018-11-09 18:17:53 +01:00