mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-29 08:15:18 -04:00
Merge branch 'release/1.10.x'
This commit is contained in:
commit
b405df72fa
@ -136,7 +136,7 @@ macOS
|
||||
-----
|
||||
|
||||
On macOS, you will need to download a set of precompiled thirdparty packages in order to
|
||||
compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.8/panda3d-1.10.8-tools-mac.tar.gz).
|
||||
compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.9/panda3d-1.10.9-tools-mac.tar.gz).
|
||||
|
||||
After placing the thirdparty directory inside the panda3d source directory,
|
||||
you may build Panda3D using a command like the following:
|
||||
|
@ -1,3 +1,98 @@
|
||||
------------------------ RELEASE 1.10.9 -----------------------
|
||||
|
||||
This is a bugfix release which addresses some severe issues on macOS, as well as
|
||||
a broad range of issues on other platforms, and adds some minor features.
|
||||
|
||||
Shaders
|
||||
* Some macOS builds were erroneously not built with Cg shader support (#1119)
|
||||
* Show error for unrecognized p3d_TextureXYZ GLSL shader inputs
|
||||
* Fix Cg shader bug when using multiple GraphicsStateGuardian objects (#1117)
|
||||
* New filled wireframe mode that respects vertex shaders (#1124)
|
||||
* Fix undefined behavior when using non-nearest filtering on isampler/usampler
|
||||
* Harmless shader linking warnings on macOS are now suppressed
|
||||
|
||||
Windowing
|
||||
* Fix mouse confinement activating on Windows for non-foreground window (#1115)
|
||||
* Fix occasional failure with switching to fullscreen on macOS (#1039)
|
||||
* Fix parented window being offset if undecorated flag isn't set on Windows
|
||||
|
||||
Rendering
|
||||
* Better support for headless OpenGL on Linux via EGL-based fallback (#1086)
|
||||
* EGL implementation can now fall back to alternative EGL devices
|
||||
* Fix ability to create multisample FBO when using EGL (#1089)
|
||||
* Fix copy-RAM and copy-texture modes for multisample-enabled buffers (#1129)
|
||||
* FilterManager now respects depth-bits specified in Config.prc
|
||||
* Auto-convert vertex data down from 64-bit float to 32-bit in OpenGL ES
|
||||
|
||||
Texturing
|
||||
* Add missing 16-bpc and 32-bpc integer texture formats
|
||||
* Support `Texture::set_ram_image_as()` for 3D and multiview textures (#1095)
|
||||
* TexturePeeker now supports cube maps (#1098)
|
||||
* TexturePeeker now supports integer texture formats
|
||||
|
||||
GUI / Text
|
||||
* Workarounds for disappearing text and GUI items in multithreaded pipeline
|
||||
* Fix generated accent marks for some fonts appearing flipped
|
||||
* Included static fonts now include dotless i glyph
|
||||
* Fix DirectOptionMenu issues when changing items from item callback (#1125)
|
||||
|
||||
Python API
|
||||
* Fix some Python 3 compatibility issues
|
||||
* Improvements to `direct.stdpy.pickle` pickle, esp. for Python 3
|
||||
* Fix `direct.stdpy.pickle` sometimes duplicating Panda objects
|
||||
* Add pickle support to various Panda classes
|
||||
* AsyncFuture can now store an arbitrary Python object as result
|
||||
* AsyncFuture.gather() now schedules coroutines on current task chain
|
||||
* Coroutine exceptions are no longer suppressed in optimized builds
|
||||
* Add ability to `await` all interval objects inside a coroutine (#909)
|
||||
* Fix garbled data when doing `base.win.properties.size` et al.
|
||||
* Fix Filename division operator in Python 3
|
||||
* Add Pythonic property syntax to various Panda classes
|
||||
* Add optional `delay=` argument to `taskMgr.add()`
|
||||
* Fix CollisionHandler's again_patterns property
|
||||
|
||||
Physics / Collisions
|
||||
* Fix missing import in nodePath.subdivideCollisions() (#1084)
|
||||
* Support pickling of CollisionTraverser and CollisionHandler objects (#1090)
|
||||
* Improve CollisionBox debug visualization
|
||||
* Fix broken GlobalForceGroup module
|
||||
* Fix writing representation of AngularVectorForce
|
||||
* Better handling for some edge cases in PhysicalNode
|
||||
* Support bam serialization of BulletGhostNode objects (#1099)
|
||||
|
||||
Deployment
|
||||
* Fix app immediately exiting on Windows if log_filename is not set
|
||||
* Allow generating log files with date/time in filename (#1103)
|
||||
* Automatically removes aux-display Config.prc lines for excluded plug-ins
|
||||
* No longer defaults to FMOD audio on macOS unless FMOD is explicitly bundled
|
||||
* Fix every app pulling in pep517 and numpy when building on some Linux distros
|
||||
* Fix building with pytz and pandas requirements
|
||||
* Some deterministic build support with PYTHONHASHSEED=0 and SOURCE_DATE_EPOCH
|
||||
* Fix harmless warnings about missing dependencies
|
||||
* Fix libbz2, libreadline and liblzma libraries being erroneously excluded
|
||||
|
||||
Build / C++
|
||||
* Some macOS builds were erroneously not built with Cg shader support (#1119)
|
||||
* Fix code signatures being missing from arm64 wheels on macOS (#1123)
|
||||
* Windows builds now include missing DirectX 9 DLL (#1034)
|
||||
* Windows installer no longer pops up message box in silent mode (#1088)
|
||||
* Fix compatibility of Panda headers with C++17 and C++20 compilers
|
||||
* Support reproducible builds when SOURCE_DATE_EPOCH is set
|
||||
* Interrogate supports `__truediv__` and `__floordiv__` special methods
|
||||
* makepanda now looks for linux-libs-arm64 thirdparty directory in aarch64 build
|
||||
|
||||
Miscellaneous
|
||||
* Assorted memory leaks fixed
|
||||
* Disable `vorbis-seek-lap`, which caused popping in ogg sounds (#1108)
|
||||
* Fix crash when playing video using older FFMpeg versions (#1085)
|
||||
* Fix flattening/egg loader bug messing up line strip geometry (#1122)
|
||||
* Fix egg lexer state not being cleaned up after error
|
||||
* multify respects SOURCE_DATE_EPOCH (but -T0 should be preferred)
|
||||
* Fix egg loader hanging when encountering unterminated quote or C-style comment
|
||||
* VirtualFileSystem::read_file() is now implemented for HTTP mounts
|
||||
* Fix regression causing crash in DIRECT tools
|
||||
* Fix repeatedly clicking object in DIRECT tools cause explosion of scaling node
|
||||
|
||||
------------------------ RELEASE 1.10.8 -----------------------
|
||||
|
||||
Recommended maintenance release.
|
||||
|
@ -1355,11 +1355,34 @@ reset() {
|
||||
_supports_packed_dabc = false;
|
||||
_supports_packed_ufloat = false;
|
||||
#else
|
||||
_supports_packed_dabc = is_at_least_gl_version(3, 2) ||
|
||||
_supports_packed_dabc = (is_at_least_gl_version(3, 2) ||
|
||||
has_extension("GL_ARB_vertex_array_bgra") ||
|
||||
has_extension("GL_EXT_vertex_array_bgra");
|
||||
has_extension("GL_EXT_vertex_array_bgra")) && gl_support_vertex_array_bgra;
|
||||
|
||||
_supports_packed_ufloat = is_at_least_gl_version(4, 4) ||
|
||||
has_extension("GL_ARB_vertex_type_10f_11f_11f_rev");
|
||||
|
||||
if (_supports_packed_dabc) {
|
||||
int number = 0;
|
||||
if (_gl_renderer.compare(0, 14, "AMD Radeon RX ") == 0) {
|
||||
number = atoi(_gl_renderer.c_str() + 14);
|
||||
}
|
||||
else if (_gl_renderer.compare(0, 10, "Radeon RX ") == 0) {
|
||||
number = atoi(_gl_renderer.c_str() + 10);
|
||||
}
|
||||
|
||||
// This is buggy for RDNA cards. Verified on 5700 XT, reportedly also
|
||||
// occurs on the entire 5*00 and 6*00 line.
|
||||
if (number >= 5000 && number < 8000) {
|
||||
_supports_packed_dabc = false;
|
||||
|
||||
if (GLCAT.is_debug()) {
|
||||
GLCAT.debug()
|
||||
<< "Detected AMD Radeon RX " << number
|
||||
<< ", disabling use of GL_BGRA vertex attributes\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef OPENGLES
|
||||
|
@ -304,6 +304,12 @@ ConfigVariableBool gl_support_shadow_filter
|
||||
"cards suffered from a broken implementation of the "
|
||||
"shadow map filtering features."));
|
||||
|
||||
ConfigVariableBool gl_support_vertex_array_bgra
|
||||
("gl-support-vertex-array-bgra", true,
|
||||
PRC_DESC("Disable this if you suspect a bug in the driver implementation "
|
||||
"of GL_BGRA vertex arrays. The Radeon RX 5700 XT is an example "
|
||||
"of a card known to suffer from bugs with this feature."));
|
||||
|
||||
ConfigVariableBool gl_force_image_bindings_writeonly
|
||||
("gl-force-image-bindings-writeonly", false,
|
||||
PRC_DESC("Forces all image inputs (not textures!) to be bound as writeonly, "
|
||||
|
@ -81,6 +81,7 @@ extern ConfigVariableBool gl_fixed_vertex_attrib_locations;
|
||||
extern ConfigVariableBool gl_support_primitive_restart_index;
|
||||
extern ConfigVariableBool gl_support_sampler_objects;
|
||||
extern ConfigVariableBool gl_support_shadow_filter;
|
||||
extern ConfigVariableBool gl_support_vertex_array_bgra;
|
||||
extern ConfigVariableBool gl_force_image_bindings_writeonly;
|
||||
extern ConfigVariableEnum<CoordinateSystem> gl_coordinate_system;
|
||||
|
||||
|
@ -14,7 +14,9 @@
|
||||
#include "physicalNode.h"
|
||||
#include "physicsManager.h"
|
||||
|
||||
#ifdef PHAVE_ATOMIC
|
||||
#include <atomic>
|
||||
#endif
|
||||
|
||||
// static stuff.
|
||||
static std::atomic_flag warned_copy_physical_node = ATOMIC_FLAG_INIT;
|
||||
|
Loading…
x
Reference in New Issue
Block a user