22667 Commits

Author SHA1 Message Date
Sam Edwards
04cb128140 cftalk: Remove this
It was an incomplete experiment for distributing rendering pipelines over
a LAN of computers all working in concert.

Who knows, it may return someday. Until then, it's best not to keep it
around.
2018-02-22 15:18:34 -07:00
Sam Edwards
f8e321d155 bam: Start more strongly checking pointer types in complete_pointers
This just starts with PandaNode, and uses DCAST_INTO_R instead of DCAST
to catch bad bams. BamWriter should never produce bam output that will
trigger this; I found this with a fuzzer.

I'm unsure about the tradeoff between bam loading performance and
robustness in the face of bad bams. It certainly makes a lot of sense
in debug builds, but we might want to consider a compile flag that
forces bam-related asserts always on even in release builds.
2018-02-22 04:57:29 -07:00
Sam Edwards
293465a516 bam: Add sanity-check against object IDs appearing twice
Found this by fuzzing; not concerned about updating the writer as
the writer itself should never do this. This is just to protect
against segfaults in the face of corrupt or malicious bams.
2018-02-22 03:13:33 -07:00
Sam Edwards
47a9aa4a80 bam: Simplify the resolve_*_pointers loops in BamReader
This should also be a slight performance boost since breaking out
of the loop upon discovering an incomplete child object means we don't
bother resolving everything else just to discard it all.
2018-02-22 02:03:33 -07:00
rdb
e0569815b5 tests: add test for prc page and one for light color temperature 2018-02-21 15:56:45 +01:00
deflected
6c7894f68d terrain: set ShaderTerrainMesh heightfield wrap mode to clamp 2018-02-21 15:27:15 +01:00
deflected
9afdb78d94 bullet: make thread-safe by adding global lock mechanism
Also addresses some memory leaks.
2018-02-21 15:04:47 +01:00
Sam Edwards
7aedc21510 tests: Update audio test to recognize missing sounds as NullAudioSound 2018-02-20 00:55:49 -07:00
Sam Edwards
50b3b87ad5 openal: Explicitly signal a needed cleanup from require_sound_data 2018-02-20 00:55:49 -07:00
Sam Edwards
f970bc3229 openal: Don't return OpenALAudioSounds that fail to initialize
Also don't register them in _all_sounds, where they won't remove themselves
due to having already called cleanup() on themselves.

Additionally stops a sound in a cleaned-up state from being passed to the
app and played.
2018-02-20 00:55:49 -07:00
Sam Edwards
bc88566906 tests: Add xfail test for loading a missing audio file 2018-02-19 19:15:08 -07:00
Sam Edwards
68b1ecfd32 parser-inc: Add stub for FFTW3 header 2018-02-17 23:31:08 -07:00
Sam Edwards
ad7669e12a mathutil: Update FFTCompressor for FFTW3
This has been due for a while. The last FFTW 2.x release was in 1999.

Note that this does change some of the loops; this has two benefits:
1) The halfcomplex storage order is now explained with a comment.
2) It fixed the special case "don't break a run of bytes for a zero" which
   was never triggering due to the value not being *exactly* 0.0.

I have tested these changes against older FFT-compressed animation .bams
and no noticeable decompression changes are present, so a .bam version
bump is not necessary.
2018-02-17 22:32:38 -07:00
rdb
5c90f64182 text: fix is_whitespace() assertion when invalid chars are included 2018-02-17 20:50:18 +01:00
rdb
95eee0cab2 android: load prc files from assets. Move assets to /android_asset 2018-02-17 20:09:24 +01:00
rdb
8dea93bf38 android: fix touch/stylus taps triggering mouse1 for compatibility 2018-02-17 18:42:39 +01:00
rdb
6bd1976892 android: support writing png/jpg/webp via android.graphics.Bitmap 2018-02-17 18:40:08 +01:00
rdb
854d736882 pgraph: fix alignment error in 32-bit Windows with Eigen
Fixes #251
2018-02-17 18:30:58 +01:00
Sam Edwards
ab7dbebf3f general: Remove lingering references to Helix
Support for Helix has been dropped long ago; it's very unlikely to return.
See also de4280ea209d567eedfa08084da0dea761ad5917.
2018-02-14 17:26:35 -07:00
rdb
15dd70f254 deploy-ng: fix regression in Python 2 introduced by 8f919b7 2018-02-13 11:23:06 +01:00
Mitchell Stokes
846dc9c97b deploy-ng: Add hidden imports for keyring.backends 2018-02-12 22:21:44 -08:00
Mitchell Stokes
0c3c6c36bf deploy-ng: Fix loading submodules for hidden imports
Fixes #242
2018-02-12 22:21:14 -08:00
Mitchell Stokes
8f919b7e40 deploy-ng: Fix to handle utf-8 Python source files on all systems
NOTE: This only works for Python 3
2018-02-12 17:52:45 -08:00
rdb
c41b694eb3 makepanda: detect public system libraries when building on Android 2018-02-11 00:56:25 +01:00
rdb
b4ad0a69a0 makepanda: automatic dependency scanning for Java sources 2018-02-11 00:55:04 +01:00
rdb
730279531a makepanda: build on Intel Android machines 2018-02-10 12:13:05 +01:00
rdb
bdb74b1e30 makepanda: add code to build an Android package with --installer 2018-02-10 12:01:34 +01:00
Sam Edwards
e15cea4331 general: Remove more unnecessary +x UNIX modes 2018-02-07 11:29:48 -07:00
rdb
c15c05f642 android: enable resume key events 2018-02-06 22:44:53 +01:00
rdb
d269f7c6c3 android: allow stdout/stderr capture using extra field on intent
This allows launching the Panda apk from termux and getting command-line output back to termux.
2018-02-06 22:42:40 +01:00
rdb
ae0f82911b android: allow launching pview by opening models (using Intents)
Also add code to show notification toasts.
Also enable model cache by default (pointing to app cache dir)
2018-02-06 22:36:21 +01:00
rdb
10789f6936 android: fix issue loading some image files 2018-02-06 22:33:57 +01:00
rdb
c1fccd311b android: properly support multiple Java threads 2018-02-06 22:32:22 +01:00
rdb
2dba9357bb makepanda: update Android cross-compile for clang and NDK r16
Tested on Windows.
2018-02-06 19:24:50 +01:00
Sam Edwards
8a7b47d501 audio: Fix memory leak in OpenAL 2018-02-04 23:06:34 -07:00
Mitchell Stokes
73fd10281b deploy-ng: Add build directory to exclude patterns 2018-02-04 19:16:58 -08:00
Sam Edwards
fb6c92cf08 express: Move all vector_* types to dtoolutil 2018-02-04 17:12:03 -07:00
Sam Edwards
fbe373dfdc general: Fix includes 2018-02-04 17:11:55 -07:00
Sam Edwards
0d079e2b80 general: Remove execute modes from ordinary text files 2018-02-04 17:11:43 -07:00
rdb
09bd662919 Merge branch 'master' of github.com:panda3d/panda3d into input-overhaul 2018-02-04 11:37:09 +01:00
rdb
c1fd2e46de input: more device support on macOS (incl. SpaceNavigator) 2018-02-04 11:32:59 +01:00
rdb
6ada306184 input: split out macOS implementation of device manager 2018-02-04 11:00:43 +01:00
rdb
9e6d0d91ad input: fixes for older Android API levels (thanks to pmp-p) 2018-02-04 10:58:36 +01:00
deflected
50dafd087d bullet: Fixed calculating of Box dimensions
- Fixed wrong claculation of box dimensions, when
        creating BoxShape from solids

Signed-off-by: deflected <deflected@users.noreply.github.com>
2018-02-02 23:19:47 +01:00
deflected
ce79656141 bullet: Fixed crash when rendering bulletDebugNode
- Fixed crash when rendering bulletDebugNode without calls
        to doPhysics. This is caused by _debug_world pointing to
        invalid memory, while _debug_stale is true when bulletDebugNode
        is initialized.

Signed-off-by: deflected <deflected@users.noreply.github.com>
2018-02-02 23:19:39 +01:00
nosyliam
b562aba4e0 Support static linking with FMOD
Closes #241
2018-02-02 23:19:23 +01:00
rdb
18afcdbd0a android: handle right mouse button, more external keyboard keys 2018-01-29 20:09:58 +01:00
rdb
0fa8980be2 android: fix activity lifecycle issues (froze upon quit or resume)
It seems Android doesn't want an application to just quit on its own accord; after main() returns we need to kindly request Android to finish the activity and keep handling events until Android destroys the app.
2018-01-29 20:08:29 +01:00
rdb
e04cb17a30 makepanda: change Android build model
We no longer copy libs to a separate libs dir to entertain Ant (which is no longer the build system of choice on Android).  Also, rather than copying the Java sources to built/src, we now compile them and put the classes in built/classes.

Furthermore, executables are really compiled as executables now (rather than as libraries) to allow building and running Panda in termux.
2018-01-29 20:01:30 +01:00
rdb
7c1dd4050b android: change assets mount dir, point binary path to .apk
The binary path we get from /proc/self/exe isn't very useful; the path to the .apk is barely more useful but it still doesn't make a whole lot of sense.  It might make more sense to set it to the path of the native .so that is being loaded by NativeActivity.
2018-01-29 19:44:39 +01:00