Commit Graph

614 Commits

Author SHA1 Message Date
Rémi Verschelde 76c6007aa6
Cleanup: Remove executable bit from files which don't need it
Drop unused xpmfix.sh script.
2021-01-19 23:36:42 +01:00
Aaron Franke ddd6fb37e8
Update PolyPartition / Triangulator library 2021-01-12 13:46:16 -05:00
K. S. Ernest (iFire) Lee 59b61a1f64 Scale error in mesh optimizer so it uses absolute scale.
Switch to simplify sloppy for another try.

Update to meshoptimizer e3f53f66e7a35b9b8764bee478589d79e34fa698.
2021-01-11 06:07:54 -08:00
Rémi Verschelde 98ccaa1bad
Merge pull request #45021 from akien-mga/spirv-reflect-c0ce03a
spirv-reflect: Update to upstream commit c0ce03a (Jan 6, 2021)
2021-01-08 14:48:01 +01:00
Rémi Verschelde 7a0a5f0a00
Merge pull request #45020 from akien-mga/pcre-10.36
pcre2: Update to upstream version 10.36
2021-01-08 14:47:47 +01:00
Rémi Verschelde 07e89131c6
spirv-reflect: Update to upstream commit c0ce03a (Jan 6, 2021) 2021-01-08 14:30:44 +01:00
Rémi Verschelde 951ad29c0f
pcre2: Update to upstream version 10.36
Changelog: https://vcs.pcre.org/pcre2/code/tags/pcre2-10.36/ChangeLog?view=markup
2021-01-08 14:10:32 +01:00
Rémi Verschelde 1899bb6254
r128: Update to upstream 1.4.4, fixes warnings 2021-01-08 13:56:21 +01:00
Fabio Alessandrelli 9241aebecd
Merge pull request #45013 from akien-mga/enet-1.3.17
enet: Sync with upstream 1.3.17
2021-01-08 13:55:03 +01:00
Rémi Verschelde c6802a65c6
COPYRIGHT: Update with recent additions, cleanup
Also include public domain assets in `COPYRIGHT.txt` with Unlicence text or
dual-licensing scheme.

And document commit hashes for most thirdparty code in `thirdparty/README.md`
for clarity, and in case there's no tag matching the included version numbers.
2021-01-08 13:37:16 +01:00
Rémi Verschelde d8495d41ca
enet: Sync with upstream 1.3.17 2021-01-08 12:02:03 +01:00
Rémi Verschelde b72ad9d97b
Merge pull request #45012 from akien-mga/zstd-1.4.8
zstd: Update to upstream version 1.4.8
2021-01-08 11:57:20 +01:00
Rémi Verschelde 7917cb12df
doctest: Update to 2.4.4
Make ClassDB test macros enforce their msg to be constructed as String,
since doctest 2.4.2 changes the message passing to vararg.
2021-01-08 11:37:36 +01:00
Rémi Verschelde 3645c9c80c
zstd: Update to upstream version 1.4.8 2021-01-08 11:21:43 +01:00
Rémi Verschelde b5334d14f7
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Rémi Verschelde 6010c49424
Merge pull request #44740 from fire/mesh-opt-collapse
Meshoptimizer Update: Restrict edge collapses to avoid triangle flipping
2020-12-30 16:40:44 +01:00
K. S. Ernest (iFire) Lee 8b69f9c18a Meshoptimizer update library 2020-12-30 06:30:25 -08:00
Rémi Verschelde e495c2cb21
bullet: Sync with upstream 3.08 2020-12-30 13:39:14 +01:00
Marcel Admiraal 5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
bruvzg 86006ce476
HarfBuzz: Update to upstream version 2.7.4 2020-12-27 10:38:37 +02:00
Rémi Verschelde 727faf9b48
Merge pull request #44540 from jacobcoughenour/vulkan-sdk-1.2.126.0
Vulkan: loader, headers, and glslang updated to sdk-1.2.162.0
2020-12-23 01:13:18 +01:00
Gordon MacPherson 5b5fdb0adf remove assimp pending fbx upgrade 2020-12-22 21:31:06 +00:00
jacobcoughenour 66d429576c Vulkan: loader, headers, and glslang updated to sdk-1.2.162.0
Updated glslang and Vulkan headers/loader following the instructions found in thirdparty/README.

glslang was updated to the 'known good' matching Vulkan SDK version 1.2.162.0.  Vulkan headers and loader were updated to the commit tagged with sdk-1.2.162.0.

'vk_mem_alloc.h' and 'vk_mem_alloc.c' are unchanged since there hasn't been a new tagged release since 2.3.0.

Here's the Vulkan release notes for this update:
https://vulkan.lunarg.com/doc/sdk/1.2.162.0/windows/release_notes.html

Reverted and removed the unnecessary fix-mingw-snprintf patch for glslang as well as the mention of it in thirdparty/README.md.
2020-12-21 20:28:49 -05:00
Rémi Verschelde 0923494c78
Merge pull request #44507 from bruvzg/icu_update_68_2
ICU: Update to upstream release 68.2
2020-12-21 12:36:47 +01:00
Rémi Verschelde 229fb888a3
Merge pull request #44505 from akien-mga/mbedtls-2.16.9
mbedtls: Update to upstream version 2.16.9
2020-12-19 13:11:02 +01:00
reduz 7bf90c7888 Improved shadow rendering efficiency
-Do not bind attributes that are not needed
-Improve a bit more how meshoptimizer interacts with Godot
2020-12-18 19:47:32 -03:00
bruvzg bf5ca85d61
ICU: Update to upstream release 68.2 2020-12-18 23:03:46 +02:00
Rémi Verschelde 2872006039
mbedtls: Update to upstream version 2.16.9 2020-12-18 21:43:21 +01:00
reduz d2302f53d6 Implement automatic LOD (Level of Detail)
-Happens on import by default for all models
-Just works (tm)
-Biasing can be later adjusted per node or per viewport (as well as globally)
-Disabled AABB.get_support test because its broken
2020-12-18 15:48:03 +01:00
Rémi Verschelde 3cbf8bde84
bullet: Sync with upstream 3.07 2020-12-18 13:41:11 +01:00
Rémi Verschelde c7b53c03ae
SCons: Add explicit dependencies on thirdparty code in cloned env
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.

So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).

This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
2020-12-18 10:29:34 +01:00
reduz 77a045e902 Rework Mesh handling on scene importing.
-Reworked how meshes are treated by importer by using EditorSceneImporterMesh and EditorSceneImporterMeshNode. Instead of Mesh and MeshInstance, this allows more efficient processing of meshes before they are actually registered in the RenderingServer.
-Integrated MeshOptimizer
-Reworked internals of SurfaceTool to use arrays, making it more performant and easy to run optimizatons on.
2020-12-13 21:29:51 -03:00
Fabio Alessandrelli 3936da7ab4 Fix some easing equations' undefined behaviours.
Spotted via -Wunsequenced.
Easing equations had different behaviours depending on the toolchain
due to its abusing of inline assignments.
2020-12-08 18:21:16 +01:00
Rémi Verschelde d32878bfa8
Merge pull request #43007 from DeleteSystem32/mp3-support
Add MP3 import and playback support
2020-12-07 11:36:03 +01:00
Sacha Waked 7e2b88a7eb Updated open-simplex to have const noise functions
"open-simplex-noise-in-c" now updated to master and "opensimplex" module refactored accordingly
2020-12-04 11:26:05 +01:00
Vincent 704d6de84c add mp3 import and playback support 2020-12-03 17:51:43 +01:00
Adam Brown 23c754360a xatlas: Sync with upstream 5571fc7
Fixes #44017 by changing the `normalize()` function to check for non-negative rather than non-zero via an epsilon check.
2020-12-02 00:17:45 -08:00
bruvzg 99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
bruvzg b9f441e81e
[Complex Text Layouts] Add third-party TextServer dependencies (ICU, HarfBuzz, Graphite). 2020-11-26 13:55:27 +02:00
bruvzg 493da99269
[Complex Text Layouts] Implement TextServer interface. Implement Fallback TextServer. 2020-11-26 13:55:26 +02:00
Rémi Verschelde 932c6ff3fb
Merge pull request #43719 from akien-mga/nanosvg-3e403ec
nanosvg: Sync with upstream 3e403ec
2020-11-20 18:42:43 +01:00
Andrii Doroshenko (Xrayez) 282ac09eef doctest: Update to 2.4.1
Includes a patch for breakpoint inline assembly for macOS.
2020-11-20 13:50:07 +02:00
Rémi Verschelde 1bb6491992
nanosvg: Sync with upstream 3e403ec
Includes some loop condition fixes after fuzzing.

The previously identified regression (#43641) is now fixed upstream.
2020-11-20 12:01:29 +01:00
Rémi Verschelde cd6afc05d1
Revert "nanosvg: Sync with upstream cc6c08d"
This reverts commit f697e7879b.

Part of the update introduced a regression:
https://github.com/memononen/nanosvg/issues/188.

We could include a local revert of the problematic commit but let's just do a
full revert to our previous version, and I'll re-update once the regression
is fixed upstream.

Fixes #43641.
2020-11-18 13:23:17 +01:00
Rémi Verschelde f697e7879b
nanosvg: Sync with upstream cc6c08d
Includes some loop condition fixes after fuzzing.
2020-11-18 08:21:46 +01:00
Pun1sher ec6a4c92fe
Checking for half_image_size[ x & y ] to be non-negative.
This make sure that (1x1) , (1 x X) and (X , 1) pixel images using sub-sampling will get correct half_image_size i.e NON-NEGATIVE.
fix : https://github.com/godotengine/godot/issues/42363
2020-11-10 21:23:08 +05:30
bruvzg 70bdf0ecf2
Update "open-simplex-noise-in-c" to fix undefined signed overflow. 2020-11-09 14:31:12 +02:00
reduz 127458ed17 Reorganized core/ directory, it was too fatty already
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
Yuri Roubinsky 38fb26794b Exposed randi_range to global funcs + renamed rand_range to randf_range 2020-11-06 17:06:26 +03:00
Rémi Verschelde f98db723b9
Merge pull request #43184 from Chaosus/fix_randi_range_biased
Fix biased output of randi_range
2020-10-30 15:00:44 +01:00
Yuri Roubinsky 31faa1f226 Fix biased output of randi_range 2020-10-29 15:41:00 +03:00
Rémi Verschelde 6a951267ae
vulkan: Backport build fix for MinGW-w64 8.0.0
Taken from https://github.com/KhronosGroup/Vulkan-Loader/pull/475.

Supersedes and reverts #43119 since the upstream change removes the need for
that custom define.
2020-10-29 12:47:35 +01:00
Rémi Verschelde 9000db505e
vulkan: Re-add Windows patch to fix static library use
Fixes #43105.
2020-10-26 23:30:47 +01:00
Rémi Verschelde 825ab3b784
Merge pull request #42817 from akien-mga/vulkan-sdk-1.2.154.0
vulkan: Sync loader, headers and glslang to sdk-1.2.154.0
2020-10-26 15:15:19 +01:00
volzhs 42959d54ff Update freetype to 2.10.4 2020-10-22 01:47:48 +09:00
Rémi Verschelde 148ad49c93
vulkan: Sync loader, headers and glslang to sdk-1.2.154.0
Actually sdk-1.2.154.1 for Vulkan-Loader.

glslang is updated to bacaef3237c515e40d1a24722be48c0a0b30f75f which is the
known-good version for Vulkan-ValidationLayers 1.2.154.0.

COPYRIGHT.txt was synced with the current version of the glslang LICENSE.txt,
and `glslang/register_types.cpp` now uses the upstream definition for its
default builtin resource instead of hardcoding it.
2020-10-15 12:29:42 +02:00
Rémi Verschelde 914591c9ae
zstd: Update to upstream version 1.4.5 2020-09-18 21:47:12 +02:00
Rémi Verschelde fa35f53dd2
tinyexr: Sync with upstream 1.0.0 2020-09-09 22:07:24 +02:00
Fabio Alessandrelli a905764e3d Update mbedTLS to version 2.16.8 (+ patch). 2020-09-07 15:47:38 +02:00
Rémi Verschelde 33b2070d2e Remove obsolete GLES2 backend code
This code currently isn't compiled (and cannot compile).

We plan to re-add OpenGL ES-based renderer(s) in Godot 4.0 alongside Vulkan
(probably ES 3.0, possibly also a low-end ES 2.0), but the code will be quite
different so it's not relevant to keep this old Godot 3.2 code.

The `drivers/gles2` code from the `3.2` branch can be used as a reference for
a potential new implementation.
2020-08-13 10:04:53 +02:00
Sergey Minakov 6e0d4e21ff Thirdparty Vulkan: patch VMA to fix assets
Applies VMA master branch patch that removes incorrect asserts:
issue: https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/issues/102
patch: 39aeff7a43
2020-07-25 21:55:05 +02:00
bruvzg 09f301029a
[macOS / ARM64] Remove "-msse2" flag from ARM64 release export template build. Add ARM64 breakpoint inline assembly to "doctest". 2020-07-24 17:54:34 +03:00
RevoluPowered 579342810f t Add unit testing to Godot using DocTest and added to GitHub Actions CI
Implements exit codes into the engine so tests can return their statuses.
Ideally we don't do this, and we use FIXUP logic to 'begin' and 'end' the engine execution for tests specifically.

Since realistically we're initialising the engine here we don't want to do that, since String should not require an engine startup to test a single header.

This lowers the complexity of running the unit tests and even for
physics should be possible to implement such a fix.
2020-07-24 13:05:33 +01:00
Rémi Verschelde 896e7193d8 ENetGodot: Apply clang-format and style guide 2020-07-21 11:48:14 +02:00
Rémi Verschelde 8dffca4196 stb_vorbis: Update to upstream version 1.20
Upstreams our crash fixes from #38422 and #40174.
2020-07-20 11:18:26 +02:00
Fabio Alessandrelli 32fbe37ab4 Reorganize ENet pactches. 2020-07-14 14:10:18 +02:00
Fabio Alessandrelli 7ec5c917d1 Funnel refuse_new_connections to Godot ENet. 2020-07-14 14:10:18 +02:00
Rémi Verschelde 24a01c0d39 stb_vorbis: Add missing error checks in comment reading mallocs
Backported from https://github.com/nothings/stb/pull/989.

Fixes #40164.
2020-07-07 11:47:02 +02:00
Rémi Verschelde c85a51cf87
Merge pull request #40058 from Faless/wslay/1.1.1
Update to wslay 1.1.1 .
2020-07-02 23:25:17 +02:00
Fabio Alessandrelli d988b0d1a3 Update to wslay 1.1.1 .
A minor fix, but let's stay in sync.
2020-07-02 16:00:56 +02:00
Fabio Alessandrelli 8ddf9fe4b0 Update to mbedtls 2.16.7 2020-07-02 15:53:50 +02:00
Rémi Verschelde 38a200f1e3 oidn: Fix build for VS 2017
Backporting this upstream patch:
1e42e6db81

Fixes #39186.
2020-06-06 21:27:32 +02:00
jfons dd79d1ce78 Upgrade OpenImageDenoise to v1.1.0
Upgrade OIDN to 1.1.0, the latest stable version that doesn't need
the ISPC compiler.

Documented the changes made during the removal of TBB and added a patch
file for them.
2020-06-06 19:03:16 +02:00
Rémi Verschelde 59780fd046 xatlas: Sync with upstream 470576d 2020-05-20 13:51:15 +02:00
Rémi Verschelde 9a75425b5b xatlas: Revert style changes made by mistake in #38386 2020-05-20 13:02:04 +02:00
Rémi Verschelde 5ee340ab4c
Merge pull request #38711 from clayjohn/force-float
Force using floats in cubemap coefficient
2020-05-18 16:38:48 +02:00
Pedro J. Estébanez abe03ff1f0 Remove no longer needed patches to jpgd.cpp 2020-05-18 14:38:28 +02:00
Hugo Locurcio d935a4348d
Remove HQ2X and the `Image.expand_2x_hq2x()` method
As of Godot 3.0, HQ2X is no longer used to upscale the editor theme
and icons on hiDPI displays, which limited its effective uses.
HQ2X was also used to upscale the project theme when the "Use Hidpi"
project setting was enabled, but results were often less than ideal.
The new StyleBoxFlat and SVG support also make HQ2X less important
to have as a core feature.

This decreases binary sizes slightly (-150 KB on most platforms,
-212 KB on WebAssembly release).

This partially addresses #12419.
2020-05-16 16:10:50 +02:00
Marcel Admiraal 8efd1ca9f7 Update r128.h to include latest fix for mingw-64 32 bit builds. 2020-05-16 10:30:51 +01:00
Marcel Admiraal 0aac6a2853 Fix #include <windows.h> for case-senstive cross-compilation. 2020-05-15 15:36:44 +01:00
clayjohn 408c4881ae Force using floats in cubemap coefficient 2020-05-12 23:34:01 -07:00
Rémi Verschelde 83b630b8c2 thirdparty: Cleanup after #38386, document provenance and copyright
Also renamed `delaunay.h` to `delaunay_2d.h` to match the class name.
2020-05-11 14:50:06 +02:00
Juan Linietsky 1bea8e1eac New lightmapper
-Added LocalVector (needed it)
-Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too)
-Fixes and changes all around the place
-Added library for 128 bits fixed point (required for Delaunay3D)
2020-05-10 15:59:09 -03:00
Rémi Verschelde 9c1b20eab6 freetype: Update to upstream version 2.10.2 2020-05-09 13:24:14 +02:00
Rémi Verschelde 3806efbaa7 jpgd: Fix detection of SSE2 support with MSVC
The previous code would always use SSE2 intrinsics, which is not valid
on UWP ARM platforms (and likely not on some x86 platforms either).

The patch has been submitted upstream too:
https://github.com/richgel999/jpeg-compressor/pull/13
2020-05-07 13:11:46 +02:00
Marcel Admiraal 75553c4f90 Fix scale calculation in VHACD Volume::Voxelize(). 2020-05-06 13:14:33 +01:00
Rémi Verschelde a928a10e83
Merge pull request #38422 from RandomShaper/fix_stb_vorbis
Fix crash in stb_vorbis.c
2020-05-03 09:52:35 +02:00
Pedro J. Estébanez d259094c3a Fix crash in stb_vorbis.c 2020-05-03 02:22:33 +02:00
Rémi Verschelde 959ffd5979 thirdparty: List release years in README.md
And expand commit hashes to full hashes instead of shortened ones.
2020-05-01 10:50:19 +02:00
Rémi Verschelde 092a1cfb39
Merge pull request #38365 from akien-mga/tinyexr-4dbd05a
tinyexr: Sync with upstream 4dbd05a + enable C++11 threaded loading
2020-04-30 17:58:17 +02:00
Rémi Verschelde 41ac6cfac1
Merge pull request #38364 from akien-mga/recast-57610fa
Recast: Update to upstream commit 57610fa (2019)
2020-04-30 17:57:55 +02:00
Rémi Verschelde f870118323
Merge pull request #38363 from akien-mga/pcre2-10.34
pcre2: Update to upstream version 10.34
2020-04-30 16:36:39 +02:00
Rémi Verschelde 69f5665ceb
Merge pull request #38361 from akien-mga/stb_vorbis-1.19
stb_vorbis: Update to upstream version 1.19
2020-04-30 16:28:49 +02:00
Rémi Verschelde 8e819ae4c1
Merge pull request #38360 from akien-mga/drop-unused-curl_hostcheck
Drop now unused curl_hostcheck.c
2020-04-30 16:26:24 +02:00
Rémi Verschelde 3a80fce8be tinyexr: Sync with upstream 4dbd05a 2020-04-30 15:24:46 +02:00
Rémi Verschelde 6ba546f98b Recast: Update to upstream commit 57610fa (2019) 2020-04-30 15:16:13 +02:00
Rémi Verschelde 824736d271 pcre2: Update to upstream version 10.34
Changelog: https://vcs.pcre.org/pcre2/code/tags/pcre2-10.34/ChangeLog?view=markup
2020-04-30 15:09:03 +02:00
Rémi Verschelde 8ce7dce511 stb_vorbis: Update to upstream version 1.19
1.19 - 2020-02-05 - warnings
1.18 - 2020-02-02 - fix seek bugs; parse header comments; misc
                    warnings etc.
2020-04-30 14:56:33 +02:00
Rémi Verschelde 05cf8b7c63 Drop now unused curl_hostcheck.c
One less thirdparty library to document \o/
2020-04-30 14:35:25 +02:00
Rémi Verschelde 5167c9186a FastLZ: Update to upstream version 0.5.0
Upstream development restarted after 13 years. Changes:

2020-02-02: Version 0.5.0

    Minor speed improvement on the decompressor.
    Prevent memory violation when decompressing corrupted input.

2020-01-10: Version 0.4.0

    Only code & infrastructure clean-up, no new functionality.
2020-04-30 14:25:00 +02:00
Rémi Verschelde d29514acce
Merge pull request #38073 from akien-mga/enet-1.3.15
enet: Update to upstream version 1.3.15
2020-04-30 10:33:39 +02:00
Rémi Verschelde f7e2ff5223
Merge pull request #38253 from nekomatata/bullet-update-2.90
Update to bullet master (2.90)
2020-04-27 16:44:17 +02:00
PouleyKetchoupp 3e7db60d56 Update to bullet master (2.90) 2020-04-27 11:37:47 +02:00
Rémi Verschelde 4d3a18d9ff Windows: Appease capricious MSVC versions with moody headers
Fixes #37799.
Fixes #37986.
2020-04-26 22:27:04 +02:00
Pedro J. Estébanez 1e5a93a416 Fix compilation of jpgd.cpp on MSVC 2017 2020-04-21 21:12:09 +02:00
Rémi Verschelde ebe38044fd enet: Update to upstream version 1.3.15 2020-04-21 12:27:11 +02:00
Rémi Verschelde 1061cf9f66
Merge pull request #38072 from akien-mga/jpgd-fuzzed
jpgd: Upgrade to upstream 2.00, fuzzed with zzuf and afl
2020-04-21 12:27:06 +02:00
Rémi Verschelde c842ddcf76 jpgd: Upgrade to upstream 2.00, fuzzed with zzuf and afl 2020-04-21 11:38:29 +02:00
Rémi Verschelde 6b00357d53 mbedtls: Update to upstream version 2.16.6
Fixes https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-04
2020-04-21 10:37:14 +02:00
PouleyKetchoupp 802bbe87ad Fix extra warnings in Android build 2020-04-10 11:06:11 +02:00
Rémi Verschelde ff14d071cc
Merge pull request #37492 from akien-mga/warnings-clang-displayserverwindows
Fix Clang warnings on Windows
2020-04-01 17:12:58 +02:00
Rémi Verschelde 516b3bb88f Fix Clang warnings on Windows
Fixes #37490.
2020-04-01 16:28:20 +02:00
Rémi Verschelde dbf52c63cc etc2comp: Fix max iterations for RGBA channels
Those checks were *very likely* meant to clamp the max value,
not the min one.

Fixes https://github.com/godotengine/godot/issues/10059#issuecomment-606993001.
2020-04-01 11:23:42 +02:00
Rémi Verschelde 60d486acc8 Fix copyright headers for recently added files 2020-03-28 13:29:29 +01:00
Fabio Alessandrelli 87d50da9fc Fix basis_universal to not include tool main file.
Avoid build error due to duplicate `main` symbol definition.
2020-03-11 16:06:28 +01:00
Rémi Verschelde 8189abd64a mbedtls: Re-add patch to disable VIA padlock
The comment mentioned a conflict with libwebsockets, but we actually
still get this conflict even now that we don't use libwebsockets.
Not sure what component is clashing but we should basically just keep
this patch.

Follow-up to #36823.
2020-03-10 09:15:00 +01:00
Rémi Verschelde 640169da5b
Merge pull request #36943 from akien-mga/mbedtls-reapply-pr1453
mbedtls: Re-apply upstream PR 1453 after #36823
2020-03-09 19:06:57 +01:00
Rémi Verschelde 9a727714ee mbedtls: Re-apply upstream PR 1453 after #36823
For some weird reason 'git apply' does not error out when it does nothing,
so I missed that I did not apply the patch properly in #36823...

This broke the UWP 32-bit x86 build.
2020-03-09 16:03:27 +01:00
Rémi Verschelde d744d3046e vulkan: Re-add option to build Vulkan-Loader statically
Upstream removed the option in KhronosGroup/Vulkan-Loader#260, which
breaks our current use case.
This commit reverts KhronosGroup/Vulkan-Loader#260 is our vendored
loader.

We may need to re-evaluate how we link the loader, but until then,
reverting this PR fixes Windows support after the upgrade to a recent
SDK version in #36932.
2020-03-09 15:25:54 +01:00
Rémi Verschelde da1f80c1f2 Revert "assimp: Sync with upstream 0201fc5"
This reverts commit 78b22393a8.

It caused a regression in FBX import leading to crashes.
Fixes #36908.
2020-03-09 10:42:18 +01:00
Rémi Verschelde 1231c2ecfc glslang: Sync with upstream 4fc7a33 for Vulkan SDK 1.2.131
Fixes #36888.
2020-03-09 09:36:38 +01:00
Rémi Verschelde 214bc9e5a1 Update Vulkan loader and headers to sdk-1.2.131.2
(Headers are actually sdk-1.2.131.1, they did not get a re-release.)

Also synced VMA 2.3.0 again, fixing unwanted clang-formatting of
thirdparty code.
2020-03-09 09:36:37 +01:00
CodeforEvolution 0c37c4021b miniupnpc: Sync with upstream master (4436632) 2020-03-06 16:29:50 -06:00
Rémi Verschelde 78b22393a8 assimp: Sync with upstream 0201fc5 2020-03-06 14:43:31 +01:00
Rémi Verschelde 9d8a9ea826 assimp: Clean and document buildsystem, prepare for unbundling
- Improve the SCsub to allow unbundling and remove unnecessary code.
- Move files around to match upstream source.
- Re-sync with upstream commit 308db73d0b3c2d1870cd3e465eaa283692a4cf23
  to ensure we don't have local modifications.
- Doesn't actually build against current version 5.0.1 due to the lack
  of the new ArmaturePopulate API that Gordon authored. We'll have to
  wait for a public release with that API (5.1?) to enable unbundling.
2020-03-06 14:37:52 +01:00
Rémi Verschelde e435bed847 mbedtls: Update to upstream version 2.16.5
Fixes https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-02

Drop patch to disable VIA padlock since we no longer use libwebsockets,
so there's no conflict anymore.
2020-03-05 16:12:50 +01:00
Mateo Dev .59 1b432147cb glslang: Remove unused revision.template 2020-02-19 05:41:47 -03:00
Rémi Verschelde 27326f8238
Merge pull request #36296 from Faless/dtls/enet_vulkan
DTLS support + optional ENet encryption
2020-02-18 15:01:53 +01:00
Juan Linietsky 3205a92ad8 PoolVector is gone, replaced by Vector
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
Fabio Alessandrelli 119c2a4f70 Custom godot sockets for ENet now support DTLS.
Non-DTLS implementation uses plain NetSocket for performance as before.
2020-02-17 12:03:47 +01:00
Rémi Verschelde b6d684ec65 basis_universal: Update to upstream commit from Jan 4, 2020
BinomialLLC/basis_universal@895ee8ee7e.
2020-02-13 16:09:00 +01:00
bruvzg 4cc439922a
Update VulkanMemoryAllocator to 2.3.0 (Fixes build for 32-bit Windows and Linux). 2020-02-11 19:05:50 +02:00
Rémi Verschelde 8c73e81313
Merge pull request #36102 from bruvzg/rvo2_mingw_fix
[MinGW] Remove unused WinAPI includes/defines from RVO2.
2020-02-11 16:32:26 +01:00
Rémi Verschelde db81928e08 Vulkan: Move thirdparty code out of drivers, style fixes
- `vk_enum_string_helper.h` is a generated file taken from the SDK
  (Vulkan-ValidationLayers).
- `vk_mem_alloc.h` is a library from GPUOpen:
  https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
2020-02-11 14:08:44 +01:00
bruvzg d544baf174
Remove unused WinAPI includes/defines to fix MinGW cross-build. 2020-02-11 14:49:12 +02:00
bruvzg 7bf72ed14e Update Vulkan loader to 1.1.127 2020-02-11 12:05:27 +01:00
Rémi Verschelde 7458a601ce basis_universal: Fix py3 build and document license and provenance
Also drop unneeded files.

Fix build with MinGW. Closes #32384.
2020-02-11 12:02:45 +01:00
Juan Linietsky 4aea9f74e6 Rewritten StreamTexture for better code reuse, added basis universal support 2020-02-11 12:02:36 +01:00
Rémi Verschelde 511f65214f SCons: Streamline Vulkan buildsystem + fixups
- Renamed option to `builtin_vulkan`, since that's the name of the
  library and if we were to add new components, we'd likely use that
  same option.
- Merge `vulkan_loader/SCsub` in `vulkan/SCsub`.
- Accordingly, don't use built-in Vulkan headers when not building
  against the built-in loader library.
- Drop Vulkan registry which we don't appear to need currently.
- Style and permission fixes.
2020-02-11 11:59:04 +01:00
Rémi Verschelde ae3ce08982 VulkanLoader: Make Windows includes lowercase for MinGW
MinGW-w64 ships all Windows SDK headers as lowercase, which prevents
cross-compiling this code from Linux.

Windows filesystems are case insensitive so it should work fine with
lowercase includes.

PR'ed upstream: https://github.com/KhronosGroup/Vulkan-Loader/pull/212
2020-02-11 11:58:54 +01:00
bruvzg eb48be51db Add static Vulkan loader.
Initial Vulkan support for Windows.
Initial Vulkan support for macOS.
2020-02-11 11:57:11 +01:00
Juan Linietsky 60c7498cee Replaced GLSLang reflection by SPIRV-Reflect, eventually allowing to move GLSLang out. 2020-02-11 11:53:29 +01:00
Juan Linietsky fd188ddd51 Initial work on Vulkan:
-Added VulkanContext
-Added an X11 implementation
-Added a rendering device abstraction
-added a Vulkan rendering device abstraction
-Engine does not work, only shows Godot logo (run it from bin/)
2020-02-11 11:53:26 +01:00
Duroxxigar 383c583a0b Documented the new NavigationServer and all its associated nodes (2D and 3D) 2020-02-10 15:24:06 +01:00
Andrea Catania e6be3f68da - Integrated NavigationServer and Navigation2DServer.
- Added Navigation Agents and Obstacles.
- Integrated Collision Avoidance.

This work has been kindly sponsored by IMVU.
2020-02-10 14:38:52 +01:00
Fabio Alessandrelli e85330231c Fix UPNP on windows after #30205.
The problem could be related to different byte ordering when copying
the interface address over the binding address.
2020-02-06 16:26:02 +01:00
Rémi Verschelde 724487b3c1 mbedtls: Update to upstream version 2.16.4
Fixes CVE-2019-18222.

`include/mbedtls/version.h` was modified to include the forgotten
version bump to 2.16.4, fixed upstream by ARMmbed/mbedtls#2992.
2020-01-26 18:19:29 +01:00
volzhs 65f2ab1b61 Update libwebp to 1.1.0 2020-01-17 03:49:31 +09:00
Rémi Verschelde 29e07dfa4e bullet: Sync with upstream 2.89
This allows distro unbundling again for distros that ship Bullet 2.89+.
2020-01-08 18:05:43 +01:00
Fabio Alessandrelli 141da69c84
Merge pull request #34843 from akien-mga/enet-1.3.14
enet: Sync with upstream 1.3.14
2020-01-06 17:30:36 +01:00