summaryrefslogtreecommitdiff
path: root/thirdparty/README.md
AgeCommit message (Collapse)Author
2021-07-11Implement Specialization Constantsreduz
* Added support to our local copy of SpirV Reflect (which does not support it). * Pass them on render or compute pipeline creation. * Not implemented in our shaders yet.
2021-05-31Implement shader cachingreduz
* Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
2021-05-30Meshoptimizer: Sync with upstream commit f5d83e8Johannes Witt
2021-05-22Update with experimental mesh optimizer.K. S. Ernest (iFire) Lee
Normals being optimized has better quality now. Test simplify once and then use a slightly less tolerant error for the target error.
2021-05-21Upgrade Embree to the latest official release.jfons
Since Embree v3.13.0 supports AARCH64, switch back to the official repo instead of using Embree-aarch64. `thirdparty/embree/patches/godot-changes.patch` should now contain an accurate diff of the changes done to the library.
2021-05-17Use a DynamicFont for the default project themeHugo Locurcio
This makes font oversampling work out of the box, while also increasing the supported character set's size. The default font is now larger as well to better fit today's screen resolutions. The OpenSans SemiBold font was chosen for two reasons: - Small file size, yet its character set supports Latin-1 and Cyrillic text. - A heavier font weight looks better in most "game" scenarios and is more readable against mixed-color backgrounds. This is considered a breaking change as it changes the default font's metrics, which will likely affect how Control nodes are laid out in scenes (unless a custom font is in use).
2021-05-07basis_universal: Update to upstream commit from Apr 16, 2021Rémi Verschelde
BinomialLLC/basis_universal@ba1c3e40f1d434ebaf9a167b44e9b11d2bf0f765.
2021-04-23Add Embree-aarch64 thirdparty libraryjfons
2021-04-22ICU: Update to version 69.1, improve ICU data export process.bruvzg
2021-04-19Merge pull request #48002 from Geometror/update-meshoptimizerRémi Verschelde
update meshoptimizer to version 0.16
2021-04-18update meshoptimizer to 0.16Hendrik Brucker
2021-04-16Import: Cleanup and optimize etcpak compression methodRémi Verschelde
Avoid unnecessary allocation of temporary buffers for each mip, and creates only one Image with the compressed data. Also renames variable and reorders code for clarity. Clarify that squish is now only used for decompression. Documented which formats can be decompressed in Image.
2021-04-14etcpak: We only need the compression code, remove rest of etcpak appRémi Verschelde
We do our own image loading, threading, and memory management in Godot already, so the only components we need from etcpak (at least as of now) are the `Compress*` methods defined in `ProcessDxtc.cpp` and `ProcessRGB.cpp`. So we don't need to compile or vendor the rest.
2021-04-13Add `etcpak` library for faster ETC/ETC2/S3TC imports.K. S. Ernest (iFire) Lee
- `etc` module was renamed to `etcpak` and modified to use the new library. - PKM importer is removed in the process, it's obsolete. - Old library `etc2comp` is removed. - S3TC compression no longer done via `squish` (but decompression still is). - Slight modifications to etcpak sources for MinGW compatibility, to fix LLVM `-Wc++11-narrowing` errors, and to allow using vendored or system libpng. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-03-24[Net] Fix miniupnpc UWP build.Fabio Alessandrelli
The patch has already been upstreamed, and custom patching won't be needed during next version update.
2021-03-16HarfBuzz: Update to version 2.8.0bruvzg
2021-03-16miniupnpc: Update to version 2.2.2Rémi Verschelde
2021-03-15[Net] Fix miniupnpc when no interface is specifiedFabio Alessandrelli
This is a tricky one, it used to work, but it was wrong, because in such a scenario instead of passing NULL as required by the API, it would pass a buffer containing the `\0` terminator. This stopped working on a specific miniupnpc version, when they fixed some network endianess issue on Windows, to which we made a workaround, which in turn would probably result in failures when the interface is specified. This commit address the issue properly, by checking the specified interface string size, and correctly passing NULL instead of the empty string when necessary. Also reverts the commit that introduced the bogus workaround: e85330231c729a88d5a478de2bbe4a61e5edeae3 One of those PR when the explaination is much longer then code changes :).
2021-03-12Bump mbedtls to version 2.16.10.Fabio Alessandrelli
2021-01-12Update PolyPartition / Triangulator libraryAaron Franke
2021-01-11Scale error in mesh optimizer so it uses absolute scale.K. S. Ernest (iFire) Lee
Switch to simplify sloppy for another try. Update to meshoptimizer e3f53f66e7a35b9b8764bee478589d79e34fa698.
2021-01-08Merge pull request #45021 from akien-mga/spirv-reflect-c0ce03aRémi Verschelde
spirv-reflect: Update to upstream commit c0ce03a (Jan 6, 2021)
2021-01-08Merge pull request #45020 from akien-mga/pcre-10.36Rémi Verschelde
pcre2: Update to upstream version 10.36
2021-01-08spirv-reflect: Update to upstream commit c0ce03a (Jan 6, 2021)Rémi Verschelde
2021-01-08pcre2: Update to upstream version 10.36Rémi Verschelde
Changelog: https://vcs.pcre.org/pcre2/code/tags/pcre2-10.36/ChangeLog?view=markup
2021-01-08r128: Update to upstream 1.4.4, fixes warningsRémi Verschelde
2021-01-08Merge pull request #45013 from akien-mga/enet-1.3.17Fabio Alessandrelli
enet: Sync with upstream 1.3.17
2021-01-08COPYRIGHT: Update with recent additions, cleanupRémi Verschelde
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-08enet: Sync with upstream 1.3.17Rémi Verschelde
2021-01-08Merge pull request #45012 from akien-mga/zstd-1.4.8Rémi Verschelde
zstd: Update to upstream version 1.4.8
2021-01-08doctest: Update to 2.4.4Rémi Verschelde
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-08zstd: Update to upstream version 1.4.8Rémi Verschelde
2020-12-30Merge pull request #44740 from fire/mesh-opt-collapseRémi Verschelde
Meshoptimizer Update: Restrict edge collapses to avoid triangle flipping
2020-12-30Meshoptimizer update libraryK. S. Ernest (iFire) Lee
2020-12-30bullet: Sync with upstream 3.08Rémi Verschelde
2020-12-27HarfBuzz: Update to upstream version 2.7.4bruvzg
2020-12-23Merge pull request #44540 from jacobcoughenour/vulkan-sdk-1.2.126.0Rémi Verschelde
Vulkan: loader, headers, and glslang updated to sdk-1.2.162.0
2020-12-22remove assimp pending fbx upgradeGordon MacPherson
2020-12-21Vulkan: loader, headers, and glslang updated to sdk-1.2.162.0jacobcoughenour
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-21Merge pull request #44507 from bruvzg/icu_update_68_2Rémi Verschelde
ICU: Update to upstream release 68.2
2020-12-18ICU: Update to upstream release 68.2bruvzg
2020-12-18mbedtls: Update to upstream version 2.16.9Rémi Verschelde
2020-12-18Implement automatic LOD (Level of Detail)reduz
-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-18bullet: Sync with upstream 3.07Rémi Verschelde
2020-12-13Rework Mesh handling on scene importing.reduz
-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-04Updated open-simplex to have const noise functionsSacha Waked
"open-simplex-noise-in-c" now updated to master and "opensimplex" module refactored accordingly
2020-12-02xatlas: Sync with upstream 5571fc7Adam Brown
Fixes #44017 by changing the `normalize()` function to check for non-negative rather than non-zero via an epsilon check.
2020-11-26[Complex Text Layouts] Add third-party TextServer dependencies (ICU, ↵bruvzg
HarfBuzz, Graphite).
2020-11-26[Complex Text Layouts] Implement TextServer interface. Implement Fallback ↵bruvzg
TextServer.
2020-11-20Merge pull request #43719 from akien-mga/nanosvg-3e403ecRémi Verschelde
nanosvg: Sync with upstream 3e403ec