Commit Graph

25683 Commits

Author SHA1 Message Date
rdb fdcfaf69b0 interrogate: Optimizate creating Python wrapper instances
Fewer function pointer calls by moving the wrapper creation logic to the downcast function

This also paves the way for some classes to have custom wrapper creation logic
2022-12-15 20:25:48 +01:00
rdb cce46b5edb motiontrail: Set `start_color` and `end_color` in `add_vertex()` 2022-12-15 20:23:55 +01:00
rdb 5912630e01 Merge branch 'release/1.10.x' 2022-12-15 19:59:00 +01:00
rdb 38528b797b downloader: Initialize winsock even if nativenet is compiled out
Fixes HTTPClient when static linking if nativenet is not used and therefore init_network() is compiled out
2022-12-15 19:51:18 +01:00
rdb 8ab37b8804 motiontrail: Add easier way to call `add_vertex()`
Currently, you must pass in a function, which is a little awkward compared to just passing in a position.  Now you can just pass in a vertex position, similar to the C++ interface.
2022-12-15 17:58:46 +01:00
rdb 154223d075 motiontrail: Clean up and document MotionTrail class 2022-12-15 17:58:23 +01:00
rdb f258442b77 CMake: Fix compile error due to missing `-lm` for deploy-stub 2022-12-12 20:03:30 +01:00
rdb e1b4083d6d Merge branch 'release/1.10.x' 2022-12-12 17:19:10 +01:00
rdb cd984732b7 pgraph: Make `bounds_type` property writable 2022-12-10 19:45:29 +01:00
rdb fb14c29525 pstats: Server can handle new protocol version 2.3
It changes the following things:
* Changes the counts in the PStatFrameData from uint16 to uint32, since I was hitting the value limit in some heavy frames with Python profiling enabled - no good reason for this limitation, so this allows removing it later
* Adds a T_expire_thread message, which I can use later to fix #450

These features are not used on the client side, but will be used on master.  Adding these changes here now makes it possible to use a master client with a 1.10.13 version of the server (can be useful if you can't compile Panda on the host).
2022-12-10 19:45:29 +01:00
rdb 3254c6d329 pstats: Optimize PStatFrameData (de-)serialization
This can be slow (hundreds of us, up to multiple ms) with large amounts of data points, this makes it an order of magnitude more efficient
2022-12-10 19:45:29 +01:00
rdb d48e23f234 pstats: Indicate how to disable rate limit 2022-12-10 19:45:26 +01:00
rdb 75b12fe6e2 express: Fix a comment in datagram.cxx
[skip ci]
2022-12-10 19:06:39 +01:00
rdb a9e5d84d27 notify: Fix crash when using set_ostream_ptr from Python
Also allow passing in None

Fixes #1371 (and maybe also #319)
2022-12-09 17:34:27 +01:00
rdb 1375d38725 showbase: Fix assorted issues with GarbageReport:
* Use of removed `types.InstanceType`
* New-style classes are not reported very neatly
* Extreme amount of digits in report due to float division

Fixes #1304
2022-12-09 17:34:27 +01:00
rdb dae26c2e4b cocoadisplay: Fix fullscreen regression on Intel macs
Partially backs out 619050bb32

Fixes #1316 (for good this time hopefully)
2022-12-08 15:20:14 +01:00
rdb 4040e7b390 Merge branch 'release/1.10.x' 2022-12-07 19:04:12 +01:00
rdb 602bd3e023 gobj: Fix Texture render_to_texture flag garbage after CData copy 2022-12-07 19:02:30 +01:00
rdb bdb55c480b cocoadisplay: Fix missing includes 2022-12-07 18:58:54 +01:00
rdb 5751fc6478 cocoadisplay: Fix a whitespace error 2022-12-07 18:58:38 +01:00
rdb 72376e95f1 cocoadisplay: Even better applicationShouldTerminate handling
It seems that performClose doesn't actually work properly for fullscreen windows
2022-12-07 18:34:36 +01:00
rdb fe8ed9dec7 Merge branch 'release/1.10.x' 2022-12-07 17:58:28 +01:00
rdb 02a1e116f9 readme: Minor wording tweaks
Closes #1319

Co-authored-by: IsakTheHacker <67378443+IsakTheHacker@users.noreply.github.com>
2022-12-07 17:56:39 +01:00
rdb 4979a8ba3f cocoadisplay: More graceful application termination behavior
See #1321
2022-12-07 17:52:11 +01:00
LD 5fa3f3eb68 cocoadisplay: Call remove_all_windows() when the application is about to close
Part of #1321
2022-12-07 17:22:23 +01:00
rdb c85cc8f2e8 cocoadisplay: fix unprotected debug/spam prints 2022-12-07 17:20:41 +01:00
rdb 2a65f583d0 cocoadisplay: Small tweak to fullscreen fix 2022-12-07 17:16:18 +01:00
rdb dcdd504e3f ode: Fix warnings when copying OdeTriMeshGeom 2022-12-07 17:15:49 +01:00
rdb 264fe5e057 pstats: Fix clock skew handling when frames arrive out-of-order 2022-12-07 15:01:39 +01:00
rdb 9784d46e95 pstats: Fix off-by-one error in frame number counting
The frame number for CPU frames was one ahead of the real one, which did show up correctly for GPU frames
2022-12-07 14:42:29 +01:00
rdb 5032d41f43 pstats: Set window icon for PStats on Windows
Just using a stock image from imageres.dll for now, but it makes it a easier to spot and distinguish from other Panda3D apps in the task bar.
2022-12-07 14:30:20 +01:00
rdb 5fcc04ba7f distributed: Change `gc-save-all` to 0 by default
Fixes #1407
2022-12-07 13:54:47 +01:00
rdb 507ca7f7ac display: Remove some unused variables 2022-12-07 13:53:44 +01:00
rdb 39744ac7de pstats: Fix save/load incompatibility with double-prec builds 2022-12-07 13:53:12 +01:00
rdb 3dbaf80841 pstats: Fix compile error on Windows with `STDFLOAT_DOUBLE=1`
Fixes #1408
2022-12-07 13:52:11 +01:00
rdb 5f3f2339e6 dist: Drop egg2bam handler, add egg/gltf/glb to bam_model_extensions
See #714
2022-12-06 20:04:45 +01:00
rdb c82f95ad6b Merge branch 'release/1.10.x' 2022-12-06 20:02:35 +01:00
rdb 3f3fd74f86 dist: Use Panda loader system for converting models to .bam
Set bam_model_extensions in order to specify which formats are automatically converted to .bam

Fixes #714
2022-12-06 19:41:00 +01:00
rdb 765d76740d dist: Use manylinux2014_x86_64 for linux_x86_64 alias on Py 3.11 2022-12-06 19:37:38 +01:00
rdb 27d3aed2d3 makepanda: Fix detection issues with newer macOS/XCode versions 2022-12-06 17:30:26 +01:00
rdb 619050bb32 cocoadisplay: Fix fullscreen issues on M1 macs
The OpenGL-on-Metal drivers used on these machines don't support CGLSetFullScreenOnDisplay, so we need to disable it on those machines.  This also applies when running a x86_64 app through Rosetta 2, hence the sysctlbyname check.

Furthermore, we need to set the appropriate shielding level, which need not be `NSMainMenuWindowLevel+1`.

Fixes #1316

Co-authored-by: LD <laurent.deru@gmail.com>
2022-12-06 16:59:55 +01:00
rdb 45ac5029c0 glgsg: Fix compile error with OpenGL ES 1
Introduced by 2c9deaaaf0
2022-12-06 16:53:51 +01:00
rdb 32ebe11b06 dist: Add an option to retain docstrings in compiled Python code
Fixes #1341
2022-12-06 15:21:39 +01:00
rdb ffbfdb22e0 dist: Add `prefer_discrete_gpu` option to force use of dedicated GPU
Currently only implemented on Windows.

Fixes #680
2022-12-06 15:20:57 +01:00
rdb ecbd262ac4 dist: Always use manylinux2014 for Python 3.11+, add manylinux_2_28 2022-12-06 14:43:47 +01:00
rdb 0a8e4e31f8 makepanda: Add handling for manylinux_2_28
Note that this version drops 32-bit intel support
2022-12-06 14:43:06 +01:00
rdb ff9ff688be tform: Fix "without" event generation when mouse leaves window
Fixes #1400
2022-12-06 13:48:23 +01:00
rdb 8a46c3dc64 windisplay: Only release capture when last mouse button is released
This fixes issues with lost up events when dragging out of the window with multiple buttons held

Fixes #1396
2022-12-06 13:36:14 +01:00
rdb 2c9deaaaf0 glgsg: Fix 1 texture stage limit when setting `gl-version 3 2` or higher
Fixes #1404
2022-12-06 12:57:45 +01:00
rdb 95a77e4f75 showbase: Add `do_events()` and `process_event()` snake_case aliases 2022-12-06 12:57:02 +01:00