Commit Graph

946 Commits

Author SHA1 Message Date
Rémi Verschelde 9b2686c333
Merge pull request #84289 from bruvzg/icu741
ICU4C: Update to version 74.1
2024-01-03 15:41:59 +01:00
Rémi Verschelde 2d90ebd3e4
Merge pull request #86623 from capnm/231229_horvg_from_v0.11.2_to_0.11.6
ThorVG: update from v0.11.2 to v0.11.6
2024-01-03 10:13:26 +01:00
Martin Capitanio 74ed6d63bf ThorVG: update from v0.11.2 to v0.11.6
https://github.com/thorvg/thorvg/releases/tag/v0.11.6

Godot related:
    + [Renderer] Improved the internal structure for compact
      scene-hierarchy traversing.
    + [SwEngine] Improved trigonometric & image scaler performance.
    + [SwEngine] Fixed a loss of image pixels during image down-scaling.
    + [Renderer/Engine] Improved safety measures.
    + [SwEngine] Resolved a bug causing strokes to be improperly
      invisible due to clipping.
      thorvg/thorvg#1785
    + [Renderer] Rectified the precision of rounded rectangle corners.
      thorvg/thorvg#1824
    + [Portability] Resolved compiler shadowing warnings.
      thorvg/thorvg#1811

    Fixes godotengine#85465 Clipped strokes from outside the canvas.
    Fixes godotengine#86012 Rounded rectangles in SVG files rendering incorrectly.
2023-12-31 16:14:44 +01:00
Kacper Gibas 3e91264582 Fix `linuxbsd_headers/README.md` 2023-12-30 15:04:28 +01:00
Yuri Sizov 3a8524dd92
Merge pull request #83452 from RandomShaper/rd_common
Split `RenderingDevice` into API-agnostic and `RenderingDeviceDriver` parts
2023-12-20 20:09:18 +01:00
Pedro J. Estébanez 12a519bae2 Split RenderingDevice into API-agnostic and RenderingDeviceDriver parts
Credit and thanks to @bruzvg for multiple build fixes, update of 3rd-party items and MinGW support.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-12-20 19:18:08 +01:00
BlueCube3310 50d33aac6c Implement ETC2_R and ETC2_RG compression to `etcpak` 2023-12-19 17:49:05 +01:00
BlueCube3310 e87fadfad0 Mention etcpak changes in thirdparty/README.md 2023-12-17 10:05:16 +01:00
Yuri Sizov 671f59f9be Merge pull request #85842 from BlueCube3310/rgtc-compression
Improve normal map VRAM Compression with RGTC
2023-12-16 17:49:51 +01:00
Rémi Verschelde 41365c6c8b
Merge pull request #70315 from RandomShaper/d3d12_mesa
Direct3D 12 Rendering Driver (Mesa NIR approach)
2023-12-12 21:58:57 +01:00
Pedro J. Estébanez 2f47c57385 Add Direct3D 12 RenderingDevice implementation 2023-12-12 19:10:04 +01:00
Rémi Verschelde 5352490cc9
Merge pull request #84384 from zeux/meshopt-update
meshoptimizer: Update to v0.20 (with a reduced patch)
2023-12-12 10:39:28 +01:00
Arseny Kapoulkine 1f95053aeb Update thirdparty licenses & copyright files per review 2023-12-11 22:35:28 -08:00
BlueCube3310 433a2a6ea2 Fix squish RGTC_R decompression corruption 2023-12-07 13:26:34 +01:00
BlueCube3310 5837e1fe3f Improve normal map VRAM Compression with RGTC 2023-12-06 15:28:18 +01:00
Rémi Verschelde c8dee05bf0
minizip: Backport patch to fix CVE-2023-45853 2023-11-29 15:16:26 +01:00
Pedro J. Estébanez 205066ad3a Avoid conflict between mingw-std-threads and Clang's own 2023-11-22 14:56:38 +01:00
Pedro J. Estébanez fe4850c0d0 Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
Andreia Gaita 8fad157dbb r128: Update to include latest fix for intrinsics being incorrect included.
https://github.com/fahickman/r128/pull/15 is needed to build on platforms
that define R128_STDC_ONLY
2023-11-06 18:09:20 +01:00
Arseny Kapoulkine be2b0fcddc Update thirdparty/meshoptimizer with distance-only error metric
This change replicates the distance-only metric patch which is now much
smaller and cleaner, as upstream simplifier already tracks distance and
attribute quadrics separately - it just doesn't store both errors in the
collapse structures.

The old two patches were removed as they are no longer needed.
2023-11-02 14:12:35 -07:00
Arseny Kapoulkine c5f73a1783 Update thirdparty/meshoptimizer to v0.20
Note: this change completely overwrites the meshoptimizer library source
(from git SHA c21d3be6ddf627f8ca852ba4b6db9903b0557858)
without including any patches; a distance error metric patch is still
needed and will be reapplied in the next commit.

The changes elsewhere are due to a signature change for
meshopt_simplifyWithAttributes.
2023-11-02 14:10:39 -07:00
bruvzg 5e55c6c611
ICU4C: Update to version 74.1 2023-11-01 08:56:12 +02:00
Rémi Verschelde 868392faed
Merge pull request #84042 from akien-mga/mbedtls-backport-windows-entropy-bcrypt
mbedtls: Backport Windows fix to use bcrypt for entropy
2023-10-31 20:15:06 +01:00
bruvzg 07c3d56e45
HarfBuzz: Update to version 8.2.2 2023-10-27 23:21:25 +03:00
Rémi Verschelde b9d008de3d
mbedtls: Backport Windows fix to use bcrypt for entropy
We had a slightly older version of it for UWP, as the wincrypt API isn't allowed there.
We removed this with UWP in #81416, but since this was enabled inconditionally before,
this actually changed behavior for Windows compared to Godot 4.1 and earlier.

This change is also needed to properly supported Windows Store.
2023-10-27 10:25:50 +02:00
Rémi Verschelde f0b6677906
openxr: Sync with upstream 1.0.31, don't build obsolete dispatch table 2023-10-26 10:01:48 +02:00
Rémi Verschelde adc4566b1e
Merge pull request #83829 from akien-mga/openxr-revert-1.0.28-fix-mingw-crash
openxr: Revert to 1.0.28, newer versions crash on Windows/Mingw-GCC
2023-10-24 10:54:38 +02:00
Rémi Verschelde 34adb2abdb
Merge pull request #82580 from akien-mga/brotli-1.1.0
brotli: Sync with upstream 1.1.0
2023-10-24 10:53:52 +02:00
Rémi Verschelde 2079bbabfd
openxr: Revert to 1.0.28, newer versions crash on Windows/Mingw-GCC
Reverts #82582.
Works around #83674.

Users tested 1.0.29, 1.0.30, and 1.0.31, which all triggered the same issue,
with both mingw-gcc from Fedora 36 and Fedora 39.
2023-10-23 11:10:31 +02:00
Fabio Alessandrelli 5333365593 mbedTLS: Update to version 2.18.5 2023-10-21 14:34:58 +02:00
Martin Capitanio 2ed51e3bc2 ThorVG: update to v0.11.2
https://github.com/thorvg/thorvg/releases/tag/v0.11.2

Godot related:
+ [JPG] Fixed a regression bug that previously disrupted image decoding.
+ [SwEngine] Resolved a default alpha blending bug.

Fixes #83611 alpha blending.
2023-10-20 07:55:51 +02:00
Rémi Verschelde 94810115fe
openxr: Sync with upstream 1.0.30 2023-10-17 15:46:01 +02:00
Martin Capitanio 0983022e0c ThorVG: Update to v0.11.1
https://github.com/thorvg/thorvg/releases/tag/v0.11.1

Godot related:
+ [SwEngine] Enhanced the quality of the dash line corners.
+ [SVG] Fixed a regression bug related to maskContentUnit,
	userSpaceOnUse/objectBoundingBox.

Fixes #82982 icons.
Fixes #83198 svg ← png/jpg.
2023-10-16 13:48:22 +02:00
Rémi Verschelde dff6752ac8
Cleanup various repository documentation files
- Reformat logo license as a plain text file.
- Fix outdated links or references to SFC or Visual Script.
- Tweak contents of `CONTRIBUTING.md` to highlight contributor docs more
  prominently, and make it easier to parse.
- Tweak formatting and contents in `thirdparty/README.md` for consistency.
2023-10-10 13:58:13 +02:00
A Thousand Ships f18aa00e85 Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-10-08 17:23:33 +02:00
Rémi Verschelde 0402205ce6
brotli: Sync with upstream 1.1.0
https://github.com/google/brotli/releases/tag/v1.1.0
2023-09-30 12:52:40 +02:00
Martin Capitanio aab650f2ef ThorVG: update to v0.11.0 release.
See https://github.com/thorvg/thorvg/releases/tag/v0.11.0

+ Infrastructure
    Repository folder structure was make it more intuitive and coherent.
        "thorvg/src/lib" -> "thorvg/src/common"
            (providing essential common functionalities
                used internally among the renderer and sub-modules)
        "thorvg/src/lib" -> "thorvg/src/renderer"
            (for vector drawing features)

+ SVG related
    Fix stroke regression https://github.com/thorvg/thorvg/issues/1670
    Support stroke dash offset function https://github.com/thorvg/thorvg/issues/1591#issuecomment-1681319321
    Support Focal property in Radial Gradient https://github.com/thorvg/thorvg/issues/1558
2023-09-29 19:50:19 +02:00
Yuri Sizov aa82cccc41 Merge pull request #81659 from DarioSamo/nlm-denoiser
Replace OIDN denoiser in Lightmapper with a JNLM denoiser compute shader.
2023-09-27 19:08:01 +02:00
Rémi Verschelde 81949c2cd2
thorvg: Update to 0.10.7
Fixes #81618.
2023-09-26 22:43:44 +02:00
A Thousand Ships 517e9f8aef [Modules] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-09-26 16:44:52 +02:00
Rémi Verschelde b45933931b
Merge pull request #81219 from akien-mga/vulkan-sdk-1.3.261.1
vulkan: Update all components to Vulkan SDK 1.3.261.1
2023-09-26 08:18:23 +02:00
Dario ab65effed0 Remove denoise module and thirdparty OIDN.
This is replaced by a much lighter weight and faster JNLM denoiser. OIDN is still much more accurate, and may be provided as an optional backend in the future, but the JNLM denoiser seems good enough for most use cases and removing OIDN reduces the build system complexity, binary size, and build times very significantly.
2023-09-25 14:53:45 -03:00
smix8 0ee7e3102b Add 2D navigation mesh baking
Adds 2D navigation mesh baking.
2023-09-25 19:48:14 +02:00
Dario 057367bf4f Add FidelityFX Super Resolution 2.2 (FSR 2.2.1) support.
Introduces support for FSR2 as a new upscaler option available from the project settings. Also introduces an specific render list for surfaces that require motion and the ability to derive motion vectors from depth buffer and camera motion.
2023-09-25 10:37:47 -03:00
bruvzg 1887a9df19
[macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +03:00
DeeJayLSP 56cfeda7d2 libwebp: Sync with upstream 1.3.2 2023-09-14 15:56:42 -03:00
Rémi Verschelde 8de6405288
UWP: Remove platform port, needs to be redone from scratch for 4.x
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.

So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
2023-09-07 15:01:59 +02:00
Rémi Verschelde d63c1a3953
mbedtls: Fix MSVC ARM build after 2.28.3 enabled AES-NI intrinsics 2023-09-07 10:59:26 +02:00
Yuri Sizov 59d3a36fbe Merge pull request #81327 from bruvzg/hb811
HarfBuzz: Update to version 8.1.1
2023-09-05 15:14:33 +02:00
bruvzg afbba19f5d
HarfBuzz: Update to version 8.1.1 2023-09-05 08:27:29 +03:00
bruvzg ab33613a13
Update and properly list versions of the built-in fonts. 2023-09-05 08:17:24 +03:00
Rémi Verschelde a47729d16b
Merge pull request #81111 from akien-mga/zlib-1.3
zlib/minizip: Update to version 1.3
2023-09-01 16:02:11 +02:00
Rémi Verschelde 728dbeab69
vulkan: Update all components to Vulkan SDK 1.3.261.1
Updates to volk, vulkan headers, `vk_enum_string_helper.h`, VMA,
glslang, spirv-reflect.

VMA doesn't tag SDK releases specifically, and still hasn't had a tagged
release since 3.0.1, but the Vulkan SDK now seems to ship a recent master
commit, so we do the same.
2023-09-01 11:23:48 +02:00
Rémi Verschelde e0e1f2e4a2
zlib/minizip: Update to version 1.3
Upstreams the fix from #73310, so we can remove that patch.
Remove `infback.c` which we stopped compiling after #79273.

The `OF` macro was also removed so I can drop the patch where I yell
at Gentoo developers.
2023-08-29 11:02:34 +02:00
Rémi Verschelde 54c4c8dfa5
FreeType: Update to version 2.13.2
Remove freetype's copy of zlib again, as we don't use it.
2023-08-29 10:42:26 +02:00
Rémi Verschelde 969a35ae2b
SCons: Make ktx module require basis_universal
Fixes #80786.
2023-08-19 16:49:29 +02:00
acazuc a00cf02241 Add support for KTX & KTX2 image format
Add support glTF KHR_texture_basisu extension
2023-08-19 10:27:29 +02:00
Martin Capitanio ac9e259d3e Update ThorVG to v0.10.0
- Release Notes: https://github.com/thorvg/thorvg/releases/tag/v0.10.0
- API change ARGB8888_STRAIGHT -> ARGB8888S
- SVG-SCsub: Enable static ThorVG object linking
- SVG-SCsub: avoid building unused ThorVG parts
- update-thorvg.sh: add v0.10.0 and copy only the Godot relevant code
2023-08-09 17:15:59 +02:00
Rémi Verschelde 310553f2a3
Merge pull request #80384 from akien-mga/tinyexr-1.0.7
tinyexr: Sync with upstream 1.0.7
2023-08-08 17:00:22 +02:00
Rémi Verschelde 8984be0042
Merge pull request #80383 from akien-mga/libwebp-1.3.1
libwebp: Sync with upstream 1.3.1
2023-08-08 16:59:58 +02:00
Rémi Verschelde b70e2af3b7
tinyexr: Sync with upstream 1.0.7 2023-08-07 18:25:37 +02:00
Rémi Verschelde 2529ad6a64
libwebp: Sync with upstream 1.3.1
https://chromium.googlesource.com/webm/libwebp/+/1.3.1/NEWS
2023-08-07 18:12:39 +02:00
Rémi Verschelde 74f21cb666
miniupnpc: Update to version 2.2.5
No change for the files we ship, so just bumping the version number.
2023-08-07 17:51:28 +02:00
Rémi Verschelde a528197a00
Merge pull request #80263 from akien-mga/mbedtls-2.28.4
mbedtls: Update to upstream version 2.28.4
2023-08-07 14:52:22 +02:00
Rémi Verschelde 1f6340bc46
mbedtls: Update to upstream version 2.28.4 2023-08-07 14:39:49 +02:00
Rémi Verschelde 0baca62734
libpng: Update to upstream 1.6.40 2023-08-04 17:04:49 +02:00
Rémi Verschelde 2c9b7fc7a8
libpng: Enable intrinsics on x86/SSE2, ppc64/VSX, and all arm/NEON 2023-08-04 14:57:21 +02:00
Fabio Alessandrelli 35b70681e7 [ENet] Update to upstream master. 2023-07-20 12:20:14 +02:00
Yuri Sizov a55e714b56 Merge pull request #79273 from bruvzg/ft2131
FreeType: Update to version 2.13.1
2023-07-12 21:03:07 +02:00
Yuri Sizov 30e951603c Merge pull request #79272 from bruvzg/icu732
ICU4C: Update to version 73.2
2023-07-12 21:03:02 +02:00
Yuri Sizov da88468c7c Merge pull request #79260 from bruvzg/hb800
HarfBuzz: Update to version 8.0.0
2023-07-12 21:02:57 +02:00
Yuri Sizov 8a19e21b6c Merge pull request #78335 from akien-mga/openxr-1.0.27
openxr: Sync with upstream 1.0.28
2023-07-12 17:16:18 +02:00
Yuri Sizov 2c8d61cd9b Merge pull request #73310 from RedworkDE/zip-empty
Fix `ZIPReader` failing to open empty zip files
2023-07-12 17:15:32 +02:00
Rémi Verschelde d756169881
openxr: Sync with upstream 1.0.28 2023-07-11 09:13:16 +02:00
bruvzg 008d3de1e9
FreeType: Update to version 2.13.1 2023-07-10 12:04:02 +03:00
bruvzg 1061912c7f
ICU4C: Update to version 73.2 2023-07-10 11:37:51 +03:00
bruvzg ad83a3194c
HarfBuzz: Update to version 8.0.0 2023-07-10 00:51:41 +03:00
Rémi Verschelde d0c1dd16ee
Revert "Update RVO2 to git 2022.09"
This reverts commit c920881105.

Fixes #78826.
2023-06-29 12:50:49 +02:00
Rémi Verschelde c79183817d
Revert "minimp3: Add a .cpp file to simplify building the single-header implementation"
This reverts commit 6fc0912137.
2023-06-19 13:34:56 +02:00
Rémi Verschelde 6fc0912137
minimp3: Add a .cpp file to simplify building the single-header implementation
Single-header libraries like this require passing a bunch of defines _once_
before including the header, but not multiple times. This can make it tricky
in user code to know when to request the implementation, if the header needs
to be included in multiple files.

So properly compiling a .cpp file for the implementation solves this, and
also enables us to properly disable warnings on thirdparty implementation code.
2023-06-15 13:50:27 +02:00
Rémi Verschelde 375156a637
Merge pull request #78099 from DeeJayLSP/rvo2023
Update RVO2 to git 2022.09
2023-06-14 09:25:10 +02:00
DeeJayLSP c920881105 Update RVO2 to git 2022.09 2023-06-13 21:13:21 -03:00
Álex Román Núñez 938a837056 Disable NVIDIA's threaded optimization on Windows 2023-06-13 11:47:40 +02:00
Rémi Verschelde e289cf7085
pcre2: Update to upstream version 10.42 (take two)
Changelog: https://github.com/PCRE2Project/pcre2/blob/pcre2-10.42/ChangeLog

This fixes support for RISC-V architectures in the sljit library, so we
enable the module's compilation for `rv64` too.
2023-06-12 15:12:15 +02:00
Rémi Verschelde 72b59325cf
Merge pull request #77960 from akien-mga/tinyexr-1.0.5
tinyexr: Sync with upstream 1.0.5
2023-06-07 16:07:06 +02:00
Rémi Verschelde 3c25dfe0e4
msdfgen: Sync with upstream 1.10 2023-06-07 15:55:29 +02:00
Rémi Verschelde 56d85149e5
tinyexr: Sync with upstream 1.0.5 2023-06-07 15:33:34 +02:00
Rémi Verschelde 1d6b28f867
Merge pull request #77898 from DeeJayLSP/vulkan-250
Update Vulkan and related libraries to 1.3.250.0
2023-06-07 13:31:57 +02:00
Rémi Verschelde 10676e78e3
Add missing stdint.h includes for GCC 13+
Fixes #77927.
2023-06-07 11:36:55 +02:00
DeeJayLSP 504e002224 Update certs (2023.06 revision) 2023-06-06 20:29:01 -03:00
DeeJayLSP 1b642d283c Update Vulkan and related libraries to 1.3.250.0 2023-06-06 12:40:04 -03:00
bitsawer ca55c455ad tinyexr: Sync with upstream 1.0.4 2023-06-05 12:15:30 +03:00
Rémi Verschelde 09d3dc86c0
Merge pull request #77379 from bruvzg/update_ts_libs
Update HarfBuzz, ICU and FreeType
2023-05-23 19:15:08 +02:00
Rémi Verschelde 56a15a552d
Merge pull request #77350 from akien-mga/glad-2.0.4
glad: Re-generate files with glad 2.0.4
2023-05-23 19:14:55 +02:00
Rémi Verschelde 86d3f43063
Merge pull request #77348 from akien-mga/brotli-202302
brotli: Sync with upstream commit ed1995b6b
2023-05-23 19:14:51 +02:00
Rémi Verschelde 4d0ab5332b
Merge pull request #77346 from akien-mga/recastnavigation-1.6.0
recast: Update to upstream version 1.6.0
2023-05-23 19:14:47 +02:00
Rémi Verschelde b50023ce6b
Merge pull request #77345 from akien-mga/wslay-202208
wslay: Sync with upstream 0e7d106ff
2023-05-23 19:14:44 +02:00
Rémi Verschelde 7f0488899e
Merge pull request #77344 from akien-mga/zstd-1.5.5
zstd: Update to upstream version 1.5.5
2023-05-23 19:14:41 +02:00
bruvzg b64df2bf74
Update HarfBuzz, ICU and FreeType
HarfBuzz: Update to version 7.3.0
ICU4C: Update to version 73.1
FreeType: Update to version 2.13.0
2023-05-23 03:26:16 +03:00
Rémi Verschelde b137695b4c
glad: Re-generate files with glad 2.0.4
No change, just making explicit that we're up to date with upstream.
2023-05-22 15:22:34 +02:00