Physics2DDirectSpaceStateSW was applying the result limit to broadphase
collision detection instead of narrow. This is inconsistent with its 3D
variant, as well as the rest of the 2D direct space state functions.
Broadphase is now limited by INTERSECTION_QUERY_MAX like everything else,
and narrow phase is exited early when the result limit has been reached.
(cherry picked from commit 1ba106a71e)
Documents CollisionObject2D mouse_entered, mouse_exited and input_event requiring at least one collision_layer to be set.
(cherry picked from commit da73bcca6f)
We want to add the individual strings to the list
and not add a list object to the list.
Without this patch, sorting failed because "str < list"
is not a valid operation in python.
(cherry picked from commit f312582326)
Otherwise we run into situations where commits to stable branches
induce very long build times, as they have to basically build from
scratch but also invalidate the cache for future commits on the
master branch.
This commit also makes the cache folder branch-specific, but since
it's still limited to 1 GB of total cache size, we don't enable it
for non-master, as we would still run into issues with non-master
build invalidating the master cache.
(cherry picked from commit b021bdbf1f)
The rationale for keeping those shared by default is that they're typical
dependencies found on any Linux system, and it saves compilation time and
binary size to link their dynamically.
But since official builds default to all-builtin, and Debian/Ubuntu still
don't have libpng16 (which we now require) readily available on all their
supported releases, it's simpler to bundle all the things.
This does not change the fact that those dependencies *can* be unbundled
on Linux, it's only the default option changing.
(cherry picked from commit 1769cbc0e2)
For 3.0, also building by default against bundled openssl.
New contributors added to AUTHORS:
@Kanabenki, @KoBeWi
Thanks to all contributors and donors for making Godot possible!
(cherry picked from commit 958c915f60)
See #24965 for details. `sys.path.insert` is hacky, but should work
relatively well for both Python 2 and Python 3. When we eventually
deprecate Python 2 support, we could look into using importlib.
Fixes#24965.
(cherry picked from commit 644b266bae)
From August 1, 2019, Google Play requires that all new apps and app updates
include 64-bit versions, so we enable ARM64 by default.
IINM support for x86 and x86_64 is still be optional, so not enabling them
out of the box.
Part of #25030.
(cherry picked from commit 9e820cdf20)
Like arm64v8, this is only supported by API 21 and later,
so we enforce 21 as min API for x86_64.
Part of #25030.
(cherry picked from commit 7f4ee36469)