Commit graph

982 commits

Author SHA1 Message Date
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
Rémi Verschelde
078527465f
Merge pull request #33566 from akien-mga/xatlas-5b9de84
xatlas: Sync with upstream e12ea82
2020-01-06 14:20:08 +01:00
Rémi Verschelde
c35f461445 enet: Sync with upstream 1.3.14
We still have local modifications necessary for IPv6 support
and using Godot sockets.
2020-01-05 19:19:56 +01:00
Rémi Verschelde
571c713a5e enet: Resync with upstream we forked at, add patch
Before rebasing on the newly released enet 1.3.14, let's resync with the actual
commit we initially imported, which seems to be:
f46fee0acc
2020-01-05 19:15:23 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Rémi Verschelde
84a3d3b981 xatlas: Sync with upstream e12ea82 2019-12-22 11:23:44 +01:00
Rémi Verschelde
f111d1aaed Drop b2d_convexdecomp. no longer necessary.
We now use `thirdparty/misc/triangulator.h` for all physics-related
(collision, navigation) triangulation needs.

Follow-up to #34293.
2019-12-13 23:29:52 +01:00
Rémi Verschelde
19252d48ed vhacd: Patch to fix UWP ARM build
This is a very outdated copy of Bullet's btScalar.h,
we're probably only discovering the tip of the bad
cross-platform compatibility of the unmaintained vhacd.
2019-12-13 17:46:51 +01:00
James Westman
589eb80a90 Fix build on musl-based systems
On some systems, including Alpine Linux, musl is used instead of
glibc. This commit patches the third-party V-HACD module to provide
a macro not provided by musl.

Fixes #31555.
2019-12-10 15:54:32 -06:00
Ignacio Etcheverry
066ae9d83b Mono/C#: Several android fixes
- Added correct config file for android dllmaps.
- Fix __Internal DllImports with a dlopen fallback.
- Add missing P/Invoke functions and internal calls expected by the monodroid BCL and our custom version of the 'Android.Runtime.AndroidEnvironment' class (this last one can be found in the godot-mono-builds repo).
- Make sure to set 'btls' instead of 'legacy' as the default TLS provider on Android.
2019-12-04 19:03:42 +01:00
Rémi Verschelde
46ae64cd60 Revert "Update opus to 1.3.1 and opusfile to 0.11"
This reverts commit e00426c512.

The way we handle platform-specific intrinsics is not good, so the
current state will not compile on armv8. This commit also requires
SSE4.1 support, which is likely not a good idea for portable binaries.

We'll have to redo this with more caution after 3.2 is released, or
we might simply drop opus as we're only using it as dependency for
theora right now.

Fixes #33606.
2019-11-18 09:56:48 +01:00
Rémi Verschelde
974646309b Revert "opus: Packaging fixups after #33311"
This reverts commit 0387657fa4.
2019-11-18 09:56:09 +01:00
Rémi Verschelde
0387657fa4 opus: Packaging fixups after #33311
Removes the custom code for VS2012 support in config.h,
and reduces diff with upstream config.h.

We still have many custom defines for ARM optimizations
which we probably don't use properly, since we don't
compile the included asm code, so a thorough review and
cleanup would be welcome.
2019-11-12 12:58:32 +01:00
Rémi Verschelde
7d836a7cc3
Merge pull request #33565 from akien-mga/vhacd-b07958e
vhacd: Sync with upstream b07958e
2019-11-12 09:57:10 +01:00
Rémi Verschelde
466e867d77
Merge pull request #33563 from akien-mga/tinyexr-656bb61
tinyexr: Sync with upstream 656bb61
2019-11-12 09:53:40 +01:00
Rémi Verschelde
cbc5d9405f
Merge pull request #33562 from akien-mga/nanosvg-25241c5
nanosvg: Sync with upstream c1f6e20
2019-11-12 09:52:47 +01:00
Rémi Verschelde
604891a87d
Merge pull request #33561 from akien-mga/miniupnpc-0ab1d67
miniupnpc: Sync with upstream master (0ab1d67)
2019-11-12 09:49:45 +01:00
Rémi Verschelde
f6e62f1147
Merge pull request #33560 from akien-mga/mbedtls-2.16.3
mbedtls: Update to upstream version 2.16.3
2019-11-12 09:49:38 +01:00
Rémi Verschelde
424d2fcfb4 vhacd: Sync with upstream b07958e
Nothing to see here, it is just a cosmetic sync to confirm
that we have the latest upstream changes.
2019-11-12 09:24:09 +01:00
Rémi Verschelde
6a2c2e5062 tinyexr: Sync with upstream 656bb61 2019-11-12 09:17:05 +01:00
Rémi Verschelde
097b746fdd nanosvg: Sync with upstream c1f6e20
Now formally unmaintained, so probably no further sync to expect
from this repository.
2019-11-12 09:12:11 +01:00
Rémi Verschelde
e2fbfb1ded miniupnpc: Sync with upstream master (0ab1d67) 2019-11-12 09:06:31 +01:00
Rémi Verschelde
a3d77be53b mbedtls: Update to upstream version 2.16.3 2019-11-12 08:56:18 +01:00
Rémi Verschelde
92c3b6c85e glad: Sync with upstream 0.1.33 2019-11-12 08:45:51 +01:00
Rémi Verschelde
ba4c808721
Merge pull request #33311 from SneakyFish5/update-opus
Update opus to 1.3.1 and opusfile to 0.11
2019-11-12 07:55:25 +01:00
Rémi Verschelde
01e24447a5
Merge pull request #33524 from SneakyFish5/update-std-vorbis
Update stb_vorbis to 1.17
2019-11-10 18:08:31 +01:00
Jonathan Mannancheril
97af5569d9 Update stb_vorbis to 1.17 2019-11-10 10:31:24 -06:00
Jonathan Mannancheril
55afd6e784 Update zstd to 1.4.4 2019-11-09 23:20:49 -06:00
unknown
e00426c512 Update opus to 1.3.1 and opusfile to 0.11 2019-11-09 13:06:56 -06:00
RevoluPowered
5fb160c7c6 Updated assimp to 308db73 from https://github.com/assimp/assimp/ 2019-11-05 20:38:26 +00:00
RevoluPowered
0bd877780f FBX Importer Generation 3
Basic skin support

Various fixes

- Fixes bind mount id and mesh index
- Fixed duplicate nodes being created
- Prevented leak when instances being freed during re-import.
- Improved camera and light transform import
- skeleton handling and technical debt removal
- ASSIMP: bone nodes were unlinked from bones by this code
- bone_add working can distinguish between armatutes
- Updated transform to be the correct offset
- Added safety for state.root node errors
- Fixed memory leak with leaf bones
- Implemented children re-parenting for mesh template
- import_animation fixes to basic skeleton data
- Adds some more debug messages
- Fixed Godot import segfault
- Fix build failing on mono
- Clear resources we use which are no longer required after import
- Fixed bone duplication issue
- Working skeleton_bone_map which can lookup armatures properly now.
- Fixed stack being used up when mesh swapped & Fixed bone ID

Additional notes:
We use a mesh template which is a fake node to instance the initial
mesh nodes . This is to ensure the entire tree can be built.

We replace mesh node templates with the real mesh after the
skeleton is available, since this makes it ensure that the fully
built skeleton exists with all bones, all nodes, etc.

The bone stack is a stack which pops when it finds bones,
this overcomes duplicate bones with the same names.

FBX has lots of these because animation armature has bone names like bone001
and another armature will also have bone001
Fixed errors in node path assignment

Simple explanation:
- Every mesh uses a node from the stack
- Node stack was empties before completed
- Every time node not found, stack must be rebuilt to maintain correct armature order :)

Additional fixes:
- Fixes destructor in assimp
- Implements aiNode* mArmature in bone data
- Implements aiNode* mParent in bone data
- Fixes parent ID on bones.

Implemented skeleton assignment in generate_mesh_indicies

This is the only place we can safely do a lookup for the skeleton for the mesh.h
I used a pointer reference so we can pass this back out, since the skeleton assignment happens inside the function.

Added mesh re-parenting to the armature node this is a permanent feature and must be enforced, just like GLTF2 specification.

Fixed import_animation spawning tracks per skin
2019-11-05 17:54:57 +00:00
Rémi Verschelde
68dc6c6c62
Merge pull request #33254 from SneakyFish5/update-zstd
Update zstd to 1.4.3
2019-11-03 18:07:34 +01:00
unknown
61ad365fc9 Update zstd to 1.4.3 2019-11-03 10:37:48 -06:00
Jonathan Mannancheril
e70e894433
Add new file in libogg readme 2019-10-31 17:30:36 -05:00
Jonathan Mannancheril
6eb8c11d32 Update libogg to upstream c8fca6b 2019-10-30 19:03:26 -05:00
volzhs
074d421dca Update libwebp to 1.0.3 2019-10-27 21:29:43 +09:00
Hugo Locurcio
379e1789dd
Remove unused stb_truetype-based DynamicFont implementation
The DynamicFont implementation currently in use is based on
FreeType, which provides much better visual quality.

This old implementation wasn't exposed anywhere, so this shouldn't
break compatibility.

This decreases binary sizes by a few kilobytes.
2019-10-03 01:19:02 +02:00
RevoluPowered
269ba00fd3 Implemented maya stingray support 2019-09-19 16:45:33 +01:00
RevoluPowered
efd6f6dbad Implemented basic texture mapping for PBR material definitions
This reads materials properly from Maya and expands on existing functionality to make this work properly.

aiTextureType_SHININESS no longer used as not appropriate for PBR texture as it is legacy.

This fix will be also present in assimp soon.
2019-09-19 16:45:33 +01:00
Gordon MacPherson
ad214c0356 Assimp FBX Import support
Issues fixed:
- Updated assimp to latest and backported fixes into godot.
- Fixed file scale being ignored from FBX file.
- Fixed bone removal
- Implemented proper armature binding
- Fixed recursion not always going through the entire path
- Implemented assimp global scaling system
- Fixed assimp global scale process to support unit conversion
- Implemented proper fbx scaling
- Fixed asserts caused by missing faces in some models which could crash
- Fixed valid bone removal
- Fixed root node being overwriten by assimp which caused data loss
- Fixed armature construction so that it works with multiple roots
- Implemented basic support for FBX standard materials
- Refactoring to improve code quality and improve function reuse.
- Simplified node creation from assimp scene into subsections: create_light, create_mesh, create_bone.
- Creating meshes is now done after hierarchy is created so that the skeleton is always available.
- Added support to assimp to support file scale in all formats which call SetFileScale.
- Many other fixes provided into assimp.

Known issues:
- FBX pivots from Maya do not currently work. (workaround: for now use blender import and export to remove pivot tracks)
- Hierarchy creates an extra node for each mesh - this was done intentionally but we intended to do a pass to remove these as they're a required node.
- When an animated mesh has not executed any animation the rest pose is wrong.

Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2019-09-01 19:08:34 +01:00
K. S. Ernest Lee
c3c805aff8 Tweak xatlas and import new version b4b5426
* Avoid xatlas crash
* Enable alignment and disable bruteforce for speedups
* Update xatlas to b4b5426
* Delete old patches
2019-08-28 01:12:56 -07:00
follower
84698dfa3d Fix error when building assimp on older Mac OS X version.
Prevents this error when building with Mac OS X 10.9 SDK:

    error: no member named 'atoi' in namespace 'std'; did you mean simply 'atoi'?
2019-08-02 04:19:51 +12:00
Rémi Verschelde
4b7b1b0d4a
Merge pull request #30945 from RevoluPowered/feature/assimp_update
Updated assimp to commit 1d565b0 with iFire
2019-07-30 20:47:34 +02:00
RevoluPowered
243f400ee2 Updated assimp to commit 1d565b0 with iFire
Signed-off-by: RevoluPowered <gordon@gordonite.tech>
Signed-off-by: K. S. Ernest (iFIre) Lee <ernest.lee@chibifire.com>
2019-07-30 18:59:29 +01:00
Rémi Verschelde
5c333270ed jpgd.h: Backport security vulnerabilities fixes from Google Android
Squashed version of https://github.com/richgel999/jpeg-compressor/pull/10
with the line endings fixed (DOS to Unix).

See https://github.com/richgel999/jpeg-compressor/pull/10 and #30952
for details. Relates to CVE-2017-0700.

Fixes #30952.
2019-07-30 12:32:57 +02:00
Rémi Verschelde
b81fa47f38 zstd: Update to upstream version 1.4.1 2019-07-20 20:47:07 +02:00
K. S. Ernest (iFIre) Lee
a04e99ce4d Update xatlas to f65a664.
xatlas is now multicore.
2019-07-16 14:35:56 -07:00
Rémi Verschelde
eb98c5e047
Merge pull request #30129 from fire/xatlas_update
[WIP] Update xatlas to latest upstream commit (1efe581).
2019-07-11 19:44:55 +02:00
Rémi Verschelde
8a1dc8393a
Merge pull request #30515 from akien-mga/tinyexr-a685e33
tinyexr: Sync with upstream a685e33
2019-07-11 13:45:43 +02:00
Rémi Verschelde
41c28aae9a
Merge pull request #30514 from akien-mga/pcre2-10.33
pcre2: Update to upstream version 10.33
2019-07-11 13:45:27 +02:00
Rémi Verschelde
60c6cf9f71
Merge pull request #30513 from akien-mga/stb_vorbis-1.16
stb_vorbis: Update to upstream version 1.16
2019-07-11 13:45:14 +02:00
Rémi Verschelde
36d587fc7f
Merge pull request #30512 from akien-mga/glad-0.1.31
glad: Sync with upstream 0.1.31
2019-07-11 13:45:02 +02:00
Rémi Verschelde
af5c02def8
Merge pull request #30511 from akien-mga/freetype-2.10.1
freetype: Update to upstream version 2.10.1
2019-07-11 13:44:52 +02:00
Rémi Verschelde
3e727bc659 stb_vorbis: Update to upstream version 1.16 2019-07-11 10:37:28 +02:00
Rémi Verschelde
ca71f7d3d0 freetype: Update to upstream version 2.10.1 2019-07-11 10:36:54 +02:00
Rémi Verschelde
2bbcc521b6 glad: Sync with upstream 0.1.31 2019-07-11 10:36:32 +02:00
Rémi Verschelde
518e23424e pcre2: Update to upstream version 10.33 2019-07-11 10:35:39 +02:00
Rémi Verschelde
b5b3aa920b tinyexr: Sync with upstream a685e33 2019-07-11 10:34:40 +02:00
Rémi Verschelde
6321cc8da3 mbedtls: Update to upstream version 2.16.2 2019-07-11 08:32:07 +02:00
K. S. Ernest (iFire) Lee
d81d29dcbf Update xatlas to b7d7bb. 2019-07-09 15:24:10 -07:00
Fabio Alessandrelli
9233edd344 Godot addition to wslay, fixes MSVC build 2019-07-04 15:03:04 +02:00
Fabio Alessandrelli
aae6c075aa Remove libwebsocket. No longer used, yay! 2019-07-04 15:03:04 +02:00
Fabio Alessandrelli
9e303ef71c WebSocket module now uses wslay library.
Both client and server are supported on native builds (as usual).

SSL server is still not supported, but will soon be possible with this
new library.

The API stays the same, we just need to work out potential issues due to
this big library switch.
2019-07-04 15:03:04 +02:00
Rémi Verschelde
e9d624d7ce
Merge pull request #30239 from Faless/crypto/crypto_core
CryptoCore class to access to base crypto utils.
2019-07-02 14:52:43 +02:00
Martin Liska
f48bb8fac8 Fix few GCC9 warnings:
thirdparty/assimp/include/assimp/material.inl: In member function 'aiReturn aiMaterial::Get(const char*, unsigned int, unsigned int, aiColor3D&) const':
thirdparty/assimp/include/assimp/material.inl:176:33: error: implicitly-declared 'aiColor3D& aiColor3D::operator=(const aiColor3D&)' is deprecated [-Werror=deprecated-copy]
  176 |     pOut = aiColor3D(c.r,c.g,c.b);

modules/dds/texture_loader_dds.cpp:167:50: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  167 |  if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("DXT1")) {
      |                                                  ^
[ 28%] modules/dds/texture_loader_dds.cpp:170:57: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  170 |  } else if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("DXT3")) {
      |                                                         ^
modules/dds/texture_loader_dds.cpp:174:57: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  174 |  } else if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("DXT5")) {
      |                                                         ^
modules/dds/texture_loader_dds.cpp:177:57: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  177 |  } else if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("ATI1")) {
      |                                                         ^
modules/dds/texture_loader_dds.cpp:180:57: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  180 |  } else if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("ATI2")) {
      |                                                         ^
modules/dds/texture_loader_dds.cpp:183:57: error: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Werror=sign-compare]
  183 |  } else if (format_flags & DDPF_FOURCC && format_fourcc == PF_FOURCC("A2XY")) {
      |                                                         ^

thirdparty/assimp/include/assimp/material.inl: In member function 'aiReturn aiMaterial::Get(const char*, unsigned int, unsigned int, aiColor3D&) const':
thirdparty/assimp/include/assimp/material.inl:176:33: error: implicitly-declared 'aiColor3D& aiColor3D::operator=(const aiColor3D&)' is deprecated [-Werror=deprecated-copy]
  176 |     pOut = aiColor3D(c.r,c.g,c.b);
2019-07-02 13:35:30 +02:00
Fabio Alessandrelli
564d93ff10 CryptoCore class to access to base crypto utils.
Godot core needs MD5/SHA256/AES/Base64 which used to be provided by
separate libraries.
Since we bundle mbedtls in most cases, and we can easily only include
the needed sources if we so desire, let's use it.

To simplify library changes in the future, and better isolate header
dependencies all functions have been wrapped around inside a class in
`core/math/crypto_base.h`.

If the mbedtls module is disabled, we only bundle the needed source
files independently of the `builtin_mbedtls` option.
If the module is enabled, the `builtin_mbedtls` option works as usual.

Also remove some unused headers from StreamPeerMbedTLS which were
causing build issues.
2019-07-02 12:36:27 +02:00
Fabio Alessandrelli
78907d91f1 Update miniupnpc library to latest master 2019-06-30 17:49:40 +02:00
Rémi Verschelde
99acec63f1 bullet: Sync with current upstream master branch
This updates our local copy to commit 5ec8339b6fc491e3f09a34a4516e82787f053fcc.
We need a recent master commit for some new features that we use in Godot
(see #25543 and #28909).

To avoid warnings generated by Bullet headers included in our own module,
we include those headers with -isystem on GCC and Clang.

Fixes #29503.
2019-06-11 13:19:42 +02:00
Rémi Verschelde
900d90bb61 Git: Explicitly list binary files as such to avoid EOL change
text=auto works well in Git 2.10+ but it's broken in previous versions,
which are still used in production on e.g. Ubuntu 16.04 LTS.

Also fix a couple missed text files with CRLF terminators.
.bat files likely require it to be processed properly on Windows,
but core.autocrlf should take care of converting them on the fly
when checking out on Windows.
2019-05-25 10:43:48 +02:00
Andrii Doroshenko (Xrayez)
9bf48db891 Build Clipper with tools=no and patch it to auto-disable exceptions
Reverts "Build polygon clipper only in tools builds" (see #17319)
which allows to build Clipper with tools disabled (release) and because
of that, Clipper has to be patched to optionally disable exceptions in
order to be built on some platforms.

Patched Clipper 6.4.2 to be compiled with exceptions enabled/disabled.
and ensure that Clipper-specific exception macros are defined: don't use
exceptions by default unless exception handling is detected.

Compilation with exceptions will be determined by various
C++ exceptions defines:

* ` __cpp_exceptions` is part of C++ feature testing macros (since C++98);
* `__EXCEPTIONS` is used by some GNU compilers;
* `_CPPUNWIND` is used by MSVC.

The user can override specific exceptions behavior via corresponding
`*_USER` macros (i.e. compiling for embedded systems).
2019-05-22 13:12:21 +03:00
Rémi Verschelde
b7e737639f Fix non UTF8-encoded thirdparty files 2019-05-22 10:34:57 +02:00
Rémi Verschelde
c38d9180df
Revert "Revert "Implemented terrain raycast acceleration"" 2019-05-16 10:18:48 +02:00
Rémi Verschelde
e0517a12c5
Merge pull request #28518 from clayjohn/GLES2-MSAA
Added MSAA to GLES2 backend
2019-05-13 17:46:11 +02:00
Fabio Alessandrelli
0239d8bd9f
Merge pull request #28453 from Tarik02/enet_socket_set_option
Partially implement enet_socket_set_option
2019-05-07 10:14:52 +02:00
clayjohn
a3d5aec68d added MSAA to GLES backend 2019-05-02 14:24:20 -07:00
Fabio Alessandrelli
be414e4476 Revert "Update libwebsockets to 3.1 (plus UWP patch)"
This reverts commit 90210c4862.
2019-05-01 14:41:47 +02:00
Rémi Verschelde
12cc760538
Merge pull request #26051 from 20kdc/videofix
webm/theora/yuv2rgb/libsimplewebm: Fix colour issues I could find.
2019-04-30 13:38:44 +02:00
Tarik02
63d1a80656 Removed a call to set_blocking_enabled from function enet_socket_create since it is already called from https://github.com/godotengine/godot/blob/master/thirdparty/enet/host.c#L63 2019-04-26 22:27:50 +03:00
Tarik02
bb3089895c Implement function enet_socket_set_option using ENetSocket class's methods.
Implemented options:
 - ENET_SOCKOPT_NONBLOCK
 - ENET_SOCKOPT_BROADCAST
 - ENET_SOCKOPT_REUSEADDR
 - ENET_SOCKOPT_NODELAY
Not implemented options:
 - ENET_SOCKOPT_RCVBUF
 - ENET_SOCKOPT_SNDBUF
 - ENET_SOCKOPT_RCVTIMEO
 - ENET_SOCKOPT_SNDTIMEO
2019-04-26 22:23:52 +03:00
Rémi Verschelde
225b61ab2a libpng: Update to upstream 1.6.37
Fixes CVE-2019-7317.
2019-04-26 10:37:22 +02:00
Rémi Verschelde
458827efc2
Revert "Implemented terrain raycast acceleration" 2019-04-23 13:56:23 +02:00
Hein-Pieter van Braam
4575769115
Merge pull request #25543 from Zylann/optimize_bullet_heightfield_raycast2
Implemented terrain raycast acceleration
2019-04-23 06:25:15 +03:00
Rémi Verschelde
1e67f214c5
Merge pull request #27817 from fire/assimp_d3d98a
Update Assimp to master at d3d98a7ec0c8d38e1952b46dfe53f7e9233dc92d
2019-04-22 12:00:06 +02:00
Rémi Verschelde
5899972049
Merge pull request #27554 from volzhs/freetype-2.10.0
Update freetype to 2.10.0
2019-04-20 20:00:56 +02:00
Rémi Verschelde
8269ed9cdf
Merge pull request #28196 from akien-mga/xatlas-cleanup
xatlas: Document provenance, copyright and custom changes
2019-04-19 12:59:41 +02:00
Rémi Verschelde
44f9a966e0 xatlas: Redo our custom changes, but properly documented 2019-04-19 12:40:01 +02:00
Rémi Verschelde
1e39fee140 xatlas: Revert to unmodified upstream code, add to COPYRIGHT
Imported by @reduz from b8ec29b6b6
Custom changes will be remade properly in the next commit.
2019-04-19 12:39:26 +02:00
Rémi Verschelde
6640f397f1 Drop unused thekla_atlas dependency
Since f12cb82 @reduz dropped the use of the thirdparty thekla_atlas
library, which is replaced by xatlas.

Fixes #28180.
Fixes #28182.
2019-04-19 11:42:58 +02:00
Rémi Verschelde
88cb9bd27f zstd: Update to upstream 1.4.0
One step towards fixing #17374 as most experimental APIs we use are now
part of the stable 1.4.0.
2019-04-18 12:39:11 +02:00
Rémi Verschelde
74ab31b7f7 vhacd: Fix -fpermissive build issue with MinGW
Fixes #27926.
2019-04-11 18:20:33 +02:00
Rémi Verschelde
668439d16a vhacd: Reapply downstream changes to namespace conflicting bullet code
Also adding a patch to easily identify and reapply them.
2019-04-11 18:20:32 +02:00
Rémi Verschelde
531b158897 vhacd: Recommit unmodified upstream code without style changes
Godot-specific changes will then be redone without touching upstream formatting.
Also documented current state in thirdparty/README.md and added LICENSE.

Add vhacd to COPYRIGHT.txt.
2019-04-11 18:11:59 +02:00
Windy Darian
f05af9d492 fix vhacd namespace placing in thirdparty/vhacd/src/btConvexHullComputer.cpp 2019-04-10 23:45:26 -04:00
Juan Linietsky
5823b5d77d Bundled VHACD library for convex decomposition.
Modified both MeshInstance tools as well as importer to use it instead of QuickHull.
2019-04-10 17:47:28 -03:00
K. S. Ernest (iFire) Lee
cc72bc6713 Update Assimp to master at d3d98a7ec0c8d38e1952b46dfe53f7e9233dc92d
* ASCII FBX embedded content
* Improved uv scaling metadata
2019-04-09 07:42:31 -07:00
K. S. Ernest (iFire) Lee
793b0de197 Add Assimp library in thirdparty
From https://github.com/assimp/assimp repo at d2b45377e4b09a1f43be95e45553afcc06b03f4b
2019-04-05 07:17:52 -07:00
volzhs
a6300b454d Update freetype to 2.10.0 2019-03-31 23:20:36 +09:00
Chaosus
6280be46a6 Properly setup seed in RNG 2019-03-27 19:37:25 +03:00
Fabio Alessandrelli
6d64a54d75 Disable WebSocket IPv6 support on OpenBSD.
OpenBSD does not support dual stacking, disabling IPv6 for now.
Will possibly come back if/when we get websocket running using our own
NetSocket class.
2019-03-06 06:34:31 +01:00
Fabio Alessandrelli
e3ddf12693 Add fix to libwebsocket to disable V6ONLY.
This was enabled by default on some systems (e.g. Windows).
2019-03-06 06:29:46 +01:00
Fabio Alessandrelli
90210c4862 Update libwebsockets to 3.1 (plus UWP patch) 2019-03-06 02:02:52 +01:00
Rémi Verschelde
ab11496a92
Merge pull request #26586 from akien-mga/tinyexr-65f9859
tinyexr: Sync with upstream 65f9859
2019-03-04 16:41:04 +01:00
Rémi Verschelde
fcabdf9e83
Merge pull request #26585 from akien-mga/pcre2-10.32
pcre2: Sync with upstream 10.32
2019-03-04 16:14:25 +01:00
Rémi Verschelde
f173f8625d
Merge pull request #26584 from akien-mga/nanosvg-c1f6e20
nanosvg: Sync with upstream c1f6e20
2019-03-04 15:20:44 +01:00
Rémi Verschelde
a1d707f9de
Merge pull request #26583 from akien-mga/stb-truetype-1.21-vorbis-1.15
stb: Update to upstream stb_truetype 1.21 and stb_vorbis 1.15
2019-03-04 15:12:10 +01:00
Rémi Verschelde
a9e48b981d Updates to thirdparty README and COPYRIGHT
Notably, we now track stable Bullet 2.88, so distros can
unbundle it again.
2019-03-04 14:51:16 +01:00
Rémi Verschelde
9ce6588466 tinyexr: Sync with upstream 65f9859 2019-03-04 14:33:42 +01:00
Rémi Verschelde
0455bc64b6 pcre2: Sync with upstream 10.32 2019-03-04 14:25:49 +01:00
Rémi Verschelde
43d6774dcc nanosvg: Sync with upstream c1f6e20 2019-03-04 14:11:26 +01:00
Rémi Verschelde
f102546f34 stb: Update to upstream stb_truetype 1.21 and stb_vorbis 1.15 2019-03-04 14:06:31 +01:00
Rémi Verschelde
d2c57e8431
Merge pull request #26577 from akien-mga/webp-1.0.2
libwebp: Sync with upstream 1.0.2
2019-03-04 13:49:50 +01:00
Rémi Verschelde
6e13002034
Merge pull request #26576 from akien-mga/glad-0.1.29
glad: Sync with upstream 0.1.29
2019-03-04 13:49:22 +01:00
Rémi Verschelde
93f6a065f8 libwebp: Sync with upstream 1.0.2 2019-03-04 13:13:33 +01:00
Chaosus
5a89d08e3f Update libpng (1.6.35 --> 1.6.36) 2019-03-04 14:55:47 +03:00
Rémi Verschelde
e860d69183 glad: Sync with upstream 0.1.29 2019-03-04 12:48:43 +01:00
Rémi Verschelde
b09f3f93af opus: Better sync sources list with upstream buildsystem 2019-02-28 14:27:56 +01:00
Hein-Pieter van Braam
ab276f67b8 Disable all use of avx instructions
For some reason CPU feature detection isn't working on our vendored
libvpx. This breaks Godot on older CPUs (pre-2011).
2019-02-24 23:03:48 +01:00
Hein-Pieter van Braam
e33e0a5ea7 Disable support for VIA Padlock
This code defines a symbol 'unsupported' which is also in a newer
version of libwebsockets. To fix 32bit linux builds just disable
padlock support. Processors that support this are rare and old.
2019-02-24 00:11:35 +00:00
Aina
9e6aefa3ae Enabling ipv6 in libwebsockets 2019-02-23 08:23:24 +01:00
20kdc
b1f5cee7d9 webm/theora/yuv2rgb: Fix YUV conversion issues and add BGRP WEBM handling. (Now clang-format friendly.)
This should fix the various issues with colours in Ogg Theora and WEBM playback.
(A reference project is attached to PR #26051, which this commit should be part of.)

This version of the commit, rather than moving x->RGBA handling into libsimplewebm, uses a colourspace field added to libsimplewebm by a PR there.
Thus, the commit that precedes this should be the synchronization & cleanup commit for that.

Also, this version is now clang-format friendly. I hope.
2019-02-21 22:33:43 +00:00
20kdc
006f6f5ba1 Sync libsimplewebm with fe57fd3 (but not the libwebm sub-lib)
This is to get the colourspace information commit in,
 but it also performs a bit of cleanup regarding the entry in the thirdparty README.

The reason libwebm wasn't synced is because it has a bunch of unmarked changes,
 and it'd be better if the person responsible untangled that as
 they may know what they did and why they did it.

Given this, it might be a good idea to disconnect libwebm from the libsimplewebm code.
2019-02-21 20:43:41 +00:00
Rémi Verschelde
51c9ffaec0 Drop RtAudio driver on Windows
We've been defaulting to WASAPI since 3.0 and it's superior to RtAudio
in all aspects.

Obsoletes and closes #25503.

Also enable WINMIDI on MinGW, this had been missed initially.

Fix os_windows.cpp and crash_handler_windows.cpp which had weird
dependencies on RtAudio.h's includes (ugh).
2019-02-20 13:47:01 +01:00
Fabio Alessandrelli
a056e8dc77 Update mbedtls PR 1453 diff (UWP crypto fixes)
Also remove .orig file which should not have been committed in the first
place
2019-02-20 01:30:39 +01:00
Fabio Alessandrelli
2e495c73d6 Bump mbedTLS to version 2.16 (LTS version) 2019-02-20 01:30:32 +01:00
Marc Gilleron
bd9f92cdf8 Implemented terrain raycast acceleration using Bresenham traversal and 1 level of chunks 2019-02-01 14:57:17 +01:00
Rémi Verschelde
8c67b43ba1 theora: Add upstream patch to fix UB warning
Patch from https://git.xiph.org/?p=theora.git;a=commit;h=0ae66d565e6bead8604d312bc1a4e9dccf245c88
Fixes #25221.
2019-01-23 12:02:36 +01:00
Rémi Verschelde
b21b0ff236 base64.h: Fix return type mismatch
Fixes #25220.
2019-01-22 12:47:11 +01:00
Oussama
22b7c9dfa8 Update Bullet to the latest commit 126b676 2019-01-07 12:30:35 +01:00
Guilherme Felipe
e64391f47b Update zstd to 1.3.8 2019-01-03 22:35:20 -02:00
Hein-Pieter van Braam
e9ee1273de Disable support for VIA Padlock
This code defines a symbol 'unsupported' which is also in a newer
version of libwebsockets. To fix 32bit linux builds just disable
padlock support. Processors that support this are rare and old.
2019-01-01 19:24:21 +01:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Rémi Verschelde
123710123d
Merge pull request #24503 from akien-mga/certs-update-f29
certs: Sync with latest ca-certificates-2018.2.26-2.fc29
2018-12-20 19:13:11 +01:00
Rémi Verschelde
6770357e47 Android: Better identify thirdparty C/C++ code
- The `cpu-features.{c,h}` code was only used by chance by the webm
  (libvpx) code, so I moved it there. It was actually introduced before
  that and wasn't in use, and libvpx just happened to be able to
  compile thanks to it being bundled.
  It could potentially be compiled on the fly from the Android NDK, but
  since we plan to replace the webm module by a GDNative plugin in the
  near future, I went the bundling route.

- `ifaddrs_android.h` is already provided in the Android NDK as
  `ifaddrs.h`, same as on other Unixes. Yet we cannot use it until we
  up the min API level to 24, where `getifaddrs` is first defined.
  I moved the files to `thirdparty/misc` and synced them with upstream
  WebRTC (only indentation changes and removal of `static` qualifiers).

Also removes dropped thirdparty files from COPYRIGHT.txt after changes
in #24105 and #24145.
2018-12-20 13:07:54 +01:00
Rémi Verschelde
e50407d2d2 certs: Sync with latest ca-certificates-2018.2.26-2.fc29 2018-12-20 13:04:39 +01:00
Arjen van Staalduinen
c3c7ac0953 Disable gzip and lzw support for freetype
This resolves #24287 that causes linking issues when using the debug target for platform iOS.
2018-12-18 15:42:25 +01:00
Rémi Verschelde
fa024537a3
Merge pull request #24258 from volzhs/libwebp-1.0.1
Update libwebp to 1.0.1
2018-12-10 14:58:13 +01:00
volzhs
d4133ac844 Update libwebp to 1.0.1 2018-12-10 22:34:39 +09:00
Rémi Verschelde
9105538b45 TinyEXR: Sync with upstream master branch
Fixes #24247.
2018-12-10 08:15:16 +01:00
David Sichma
555c4bcb19 Fix GLES2 Red Green Texture Decompression
Replaced broken decompression code with two calls to DXT5 decompression.

This should fix some issues with normal maps as they usually are stored
as RG Textures and were decompressed incorrectly.
2018-11-27 20:45:28 +01:00
Rémi Verschelde
1a41daf3d8 glad: Sync with upstream 0.1.28 2018-11-23 00:53:45 +01:00
Rémi Verschelde
e8f702469e
Merge pull request #23124 from Faless/net_enet
Use NetSocket directly for ENet.
2018-11-20 14:53:52 +01:00
Fabio Alessandrelli
3703655ce2 Update libwebsocket to 3.0.1 2018-11-03 17:45:33 +01:00
Fabio Alessandrelli
c5a4d638c6 Use NetSocket directly for ENet.
Avoid PacketPeerUDP buffering.
2018-11-02 20:17:54 +01:00
Marcelo Fernandez
fe93bb03fe Server platform works on OS X too 2018-10-29 12:54:51 -03:00
Rémi Verschelde
62ecb44035 Fix warning about functions defined but not used [-Wunused-function]
Fixes the following GCC 5 warnings:
```
core/io/zip_io.h:128:26: warning: 'zlib_filefunc_def zipio_create_io_from_file(FileAccess**)' defined but not used [-Wunused-function]
core/script_debugger_remote.cpp:110:17: warning: 'ObjectID safe_get_instance_id(const Variant&)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:103:12: warning: 'int _socket_create(IP::Type&, int, int)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:45:15: warning: 'size_t _set_sockaddr(sockaddr_storage*, const IP_Address&, int, IP::Type)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:76:15: warning: 'size_t _set_listen_sockaddr(sockaddr_storage*, int, IP::Type, IP_Address)' defined but not used [-Wunused-function]
editor/editor_fonts.cpp:40:24: warning: 'Ref<BitmapFont> make_font(int, int, int, int, const int*, const Ref<Texture>&)' defined but not used [-Wunused-function]
editor/editor_themes.cpp:85:26: warning: 'Ref<StyleBoxFlat> change_border_color(Ref<StyleBoxFlat>, Color)' defined but not used [-Wunused-function]
editor/import/editor_import_collada.cpp:493:13: warning: 'void _generate_normals(const PoolVector<int>&, const PoolVector<Vector3>&, PoolVector<Vector3>&)' defined but not used [-Wunused-function]
editor/import/editor_import_collada.cpp:524:13: warning: 'void _generate_tangents_and_binormals(const PoolVector<int>&, const PoolVector<Vector3>&, const PoolVector<Vector3>&, const PoolVector<Vector3>&, PoolVector<float>&)' defined but not used [-Wunused-function]
editor/pvrtc_compress.cpp:118:13: warning: 'void _compress_etc(Image*)' defined but not used [-Wunused-function]
modules/etc/image_etc.cpp:89:13: warning: 'void _decompress_etc1(Image*)' defined but not used [-Wunused-function]
modules/etc/image_etc.cpp:93:13: warning: 'void _decompress_etc2(Image*)' defined but not used [-Wunused-function]
modules/gdscript/editor/gdscript_highlighter.cpp:46:13: warning: 'bool _is_whitespace(CharType)' defined but not used [-Wunused-function]
scene/2d/cpu_particles_2d.cpp:510:14: warning: 'float rand_from_seed_m1_p1(uint32_t&)' defined but not used [-Wunused-function]
scene/3d/cpu_particles.cpp:474:14: warning: 'float rand_from_seed_m1_p1(uint32_t&)' defined but not used [-Wunused-function]
scene/resources/default_theme/default_theme.cpp:123:20: warning: 'Ref<Shader> make_shader(const char*, const char*, const char*)' defined but not used [-Wunused-function]
scene/resources/default_theme/default_theme.cpp:130:24: warning: 'Ref<BitmapFont> make_font(int, int, int, int, const int*, const Ref<Texture>&)' defined but not used [-Wunused-function]
```

Had to split `core/io/zip_io.h` into header and .cpp file without 'static' keyword.

Not fixed yet (static definition in header used in some files but not all):
```
modules/websocket/lws_helper.h:111:13: warning: 'void _lws_make_protocols(void*, int (*)(lws*, lws_callback_reasons, void*, void*, size_t), PoolVector<String>, _LWSRef**)' defined but not used [-Wunused-function]
```

Also fixed a couple other warnings missed in previous commits.
2018-09-29 22:26:12 +02:00
Juan Linietsky
6cbdeedf57 Added xatlas as alternative to thekla, forced it on.
Did some hacks to it to avoid it from failing on bad geometry.
2018-09-29 09:46:26 -03:00
Rémi Verschelde
82f2674e8d Move Penner easing equations to thirdparty/misc
It was Godot-ified and integrated into Tween originally (#628)
without mention that it was thirdparty code, but it's actually
derived from https://github.com/jesusgollonet/ofpennereasing.

It's also very bad quality code and should be replaced by a better,
properly-maintained library of easing equations.
2018-09-28 16:01:26 +02:00
Rémi Verschelde
a9e17af09a SCons: Build core's thirdparty code in own environment
Also move Zlib and Zstd's build instructions to core/SCsub.
2018-09-28 11:40:41 +02:00
Rémi Verschelde
197a3b2924
Merge pull request #22044 from Faless/uwp_miniupnpc
Update miniupnpc to use UWP compatible APIs.
2018-09-19 09:30:16 +02:00
JFonS
f12a1b8863 Add SimplexNoise and NoiseTexture as new resources
SimplexNoise can be used to generate parameterized fractal noise based on Open Simplex.

NoiseTexture uses SimplexNoise to generate noise textures for using in
shaders/visual effects.
2018-09-14 15:24:34 +02:00
Fabio Alessandrelli
f961758fbe Update miniupnpc to use UWP compatible APIs.
Use GetBestInterfaceEX and GetAdaptersAddresses instead of GetBestRoute
and GetIpAddrTable.
2018-09-13 20:31:09 +02:00
Rémi Verschelde
afb486e7c9
Merge pull request #22015 from vnen/uwp-arm-zstd
Patch zstd to build for UWP ARM
2018-09-13 11:04:28 +02:00
George Marques
fb6fe54058
Patch zstd to build for UWP ARM
Patch comes from upstream and can be removed when it makes to stable
release.
2018-09-12 22:02:48 -03:00
Fabio Alessandrelli
75b2db8c5f Fix libwebsockets 32-bits UWP builds.
Also fix bogus windows detect.py
2018-09-13 02:26:54 +02:00
Fabio Alessandrelli
1b99806b47 Unify PacketPeerUDP using NetSocket 2018-09-12 15:56:16 +02:00
Fabio Alessandrelli
7de28be764 ENet wrapper properly detect disconnect on poll
Now PacketPeerUDP.get_available_packet_count() return -1 if the socket
is in error state.
2018-09-12 12:50:53 +02:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Rémi Verschelde
af57515775 UPnP: Fix includes of thirdparty headers 2018-09-11 18:09:12 +02:00
Andrea Catania
6142448417 Update bullet to Master 12409f1118a7c7a266f9071350c70789dfe73bb9 2018-09-07 16:11:04 +02:00
volzhs
1dc6d47df9 Add Hindi font for editor 2018-08-30 05:11:09 +09:00
Rémi Verschelde
57ba7caa6d
Merge pull request #21511 from eska014/webm-nomt
Fix WebM and Theora video in HTML5 export
2018-08-28 07:56:52 +02:00
Rémi Verschelde
439e562b1a
Merge pull request #21474 from elasota/fix-cvtt-scalar
Fix CVTT scalar version not compiling
2018-08-27 13:36:23 +02:00
elasota
0fe3bda9af Fix CVTT scalar version not compiling 2018-08-27 04:15:52 -04:00
elasota
4b7885fb1e Fix tiled EXR crash, update tinyexr to head to fix corrupted uncompressed EXR loading 2018-08-27 02:52:12 -04:00
Leon Krause
92b259ccf1 Fix WebM module for HTML5 platform 2018-08-27 04:08:04 +02:00
elasota
2dbd74b3a9 Fix CVTT compile failures in VS2015 2018-08-24 13:18:33 -04:00
Rémi Verschelde
3573d5f4ae
Merge pull request #21281 from elasota/fix-squish-sse
Fix Squish SSE misconfiguration
2018-08-22 09:55:57 +02:00
elasota
35f6ba5c5d BPTC support 2018-08-21 22:56:04 -04:00
elasota
04410346bb Fix Squish SSE misconfiguration 2018-08-21 22:21:56 -04:00
Juan Linietsky
4e55835e48
Merge pull request #18096 from aaronfranke/master
[Core] Split up math_2d.h
2018-08-14 18:58:32 -03:00
Rémi Verschelde
139e621338
Merge pull request #20913 from pulkomandy/master
Rebase patches for fixing haiku build.
2018-08-13 21:26:15 +02:00
Rémi Verschelde
fed34c3fef
Merge pull request #20581 from ronchaine/nvmath-dont-use-obsolete-functions-on-linux
Do not use deprecated stuff that only glibc now implements
2018-08-13 09:04:43 +02:00
Adrien Destugues
a294a842cb Rebase patches for fixing haiku build. 2018-08-11 17:20:51 +02:00
Aaron Franke
28fc195339 [Core] Change math_2d includes to vector2 includes where relevant 2018-08-10 14:59:29 -05:00
Jari Ronkainen
687b95b41f Do not use deprecated stuff that only glibc now implements 2018-07-29 22:27:47 +03:00
Rémi Verschelde
04ec0bf5e1
Merge pull request #20539 from akien-mga/mbedtls-2.12.0
mbedtls: Update to upstream version 2.12.0
2018-07-28 15:40:40 +02:00
Rémi Verschelde
bdbc63c4ee
Merge pull request #20537 from akien-mga/glad-0.1.25
glad: Sync with upstream 0.1.25
2018-07-28 15:40:33 +02:00
Rémi Verschelde
d8e1cd7a10 mbedtls: Update to upstream version 2.12.0
_WIN32_WINNT redefinition fix is no longer needed as it was merged
upstream. PR 1453 is still not merged, diff updated to current state.
2018-07-28 11:16:58 +02:00
Rémi Verschelde
a431492b62 glad: Sync with upstream 0.1.25 2018-07-28 11:01:43 +02:00
Rémi Verschelde
f4e682d717 libpng: Update to upstream version 1.6.35 2018-07-28 10:57:14 +02:00
Rémi Verschelde
27b70914e4
Merge pull request #19422 from Faless/mbedtls_2.10
Bump mbedTLS to version 2.10.0
2018-07-10 15:04:16 +02:00
Max Hilbrunner
f672ea1559
Merge pull request #19138 from firefly2442/pcre2-10.31
update PCRE2 to version 10.31, fixes #15662
2018-07-03 17:43:22 +02:00
Fabio Alessandrelli
888379e513 Bump mbedTLS to version 2.10.0 2018-06-07 18:50:44 +02:00
Fabio Alessandrelli
333e398413 Add libwebsocket 3.0 BSD fix 2018-06-07 18:07:35 +02:00
Fabio Alessandrelli
e56a3c1dc4 Bump libwebsockets to version 3.0.0 2018-06-07 18:07:35 +02:00
Rémi Verschelde
d0811ed3f9 Thirdparty: Fill copyright for lws, miniupnpc, clipper
Rename `lws` to `libwebsockets` which is its library name.

Add missing license file for mbedtls.
2018-06-07 10:46:05 +02:00
Fabio Alessandrelli
b4c65093d7
Merge pull request #18780 from mhilbrunner/upnp
Add UPnP support (port forwarding, querying external IP)
2018-06-07 02:10:48 +02:00
mhilbrunner
c21da40de5 Add UPnP support (port forwarding, querying external IP) 2018-06-07 01:52:04 +02:00
firefly2442
5383ae005c update PCRE2 to version 10.31, fixes #15662 2018-05-28 21:11:41 -06:00
Rémi Verschelde
121eaddf11
Merge pull request #19150 from guilhermefelipecgs/update_stb
Update stb_truetype to 1.19 and stb_vorbis to 1.14
2018-05-25 12:31:38 +02:00
Guilherme Felipe
afbc66fccd Update stb_truetype to 1.19 and stb_vorbis to 1.14 2018-05-24 15:58:12 -03:00
Guilherme Felipe
4932c7ddcf Update libvorbis to 1.3.6 2018-05-24 13:52:05 -03:00
Rémi Verschelde
5e96eaf162
Merge pull request #18905 from volzhs/zstd-1.3.4
Update zstd to 1.3.4
2018-05-16 22:59:52 +02:00
Rémi Verschelde
b1182f9de1
Merge pull request #18903 from volzhs/minizip-1.2.11
Update minizip to 1.2.11
2018-05-16 18:13:19 +02:00
volzhs
5c5918a52d Update zstd to 1.3.4 2018-05-16 02:45:22 +09:00
volzhs
7e563f75b5 Update minizip to 1.2.11 2018-05-16 01:58:34 +09:00
volzhs
6ed8124923 Update libwebp to 1.0.0 2018-05-16 01:00:55 +09:00
volzhs
c9bd739a8b Update FreeType to 2.9.1
close #15660
2018-05-10 15:21:33 +09:00
Juan Linietsky
8b9b653e76
Merge pull request #18113 from toger5/bold_font
added bold font to editor (support for coustom bold font)
2018-05-07 15:54:44 -03:00
Chaosus
9cb468da7f Update GLAD to 0.1.20a0 2018-05-04 22:57:22 +03:00
toger5
29216b2bad added bold font to editor (support for coustom bold font) 2018-04-19 22:00:58 +02:00
Hugo Locurcio
93f52813bf
Update Hack font to v3.003 2018-04-11 22:40:58 +02:00
Fabio Alessandrelli
d97c45ad2e MbedTLS PR 1453 (fix UWP build)
The patch seems to be ready for merge upstream
2018-04-03 20:13:55 +02:00
Fabio Alessandrelli
7e776f5b2e Small patch to change mbedtls _WIN32_WINNT 2018-04-03 20:13:12 +02:00
Fabio Alessandrelli
febec68763 Update mbedTLS to version 2.8.0 2018-04-03 19:25:24 +02:00
Fabio Alessandrelli
629783f3aa Always verify peer certificate in lws.
Behavior is defined by SSL flags passed via the context.

Simplified port of the patch submitted and accepted in lws master branch
(PR 1215)
2018-04-03 19:25:24 +02:00
Fabio Alessandrelli
13185681ff mbedtls: client: stop spinning on handshake fail
Backport cf3a4ee49357f4e6f3aaeb98137d85c307b17008 from 2.4-stable to
2.4.2
2018-04-03 19:25:24 +02:00
Fabio Alessandrelli
dbf7898cea Fix lws MinGW compilation
Cherry picked 5b22276420032677841af9e9f3b0272d0dd467b8 from upstream.
This is fixed upstream and will be included in the next release
2018-04-03 19:25:24 +02:00
Fabio Alessandrelli
262cb262eb Bump libwebsockets to version 2.4.2 2018-04-03 19:25:24 +02:00
Brigham Henry Keys
cd63e699ca Updated thekla_atlas to support arm64 2018-03-20 13:44:45 -05:00
ShyRed
e71f109910 Update libwebm
Update of libwebm.

Up-to-date version of libwebm contains several bugfixes that allow playback of files that would crash Godot otherwise.
2018-03-09 18:18:30 +01:00
bruvzg
e256f9d4e5
Add GL_ARB_framebuffer_object extension support check and GL_EXT_framebuffer_object fallback for GLES2 (updated GLAD bindings).
Add GL_ARB_debug_output extension support check on all platforms.
2018-03-05 20:49:47 +02:00
Rémi Verschelde
cbb4fe45d0
Merge pull request #17035 from Chaosus/fixleaks
Fix memory leaks
2018-03-03 15:06:34 +01:00
Chaosus
7c0da76402 Fix 3 memory leaks 2018-03-03 09:11:26 +03:00
bruvzg
a5a4f3714b
GLES2 renderer support on macOS. 2018-03-02 13:15:12 +02:00
Fabio Alessandrelli
982fa59126 Remove unneeded and problematic minilex.c from lws.
We don't need it, it's used upstream to test the lexical parser
2018-03-01 16:43:42 +01:00
Fabio Alessandrelli
ea7af81460 Fix lws compilation on FreeBSD, same as OSX
This error is actually fixed upstream, waiting for a new release
2018-02-28 18:09:43 +01:00
Juan Linietsky
9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Fabio Alessandrelli
dfef6f24d5 Small patch to change mbedtls _WIN32_WINNT
We are using 0x0601 as min anyway.
This avoids SOCKADDR_STORAGE error on uwp build
2018-02-20 17:50:08 +01:00
Fabio Alessandrelli
a929a5aea5 Import PR 730 from mbedTLS project
Fixes UWP build while we wait for it to get into next release.
2018-02-20 15:12:00 +01:00
Rémi Verschelde
294af5617a Update CA certificates to latest Mozilla bundle
Copied from an up-to-date Fedora 27 install (ca-certificates-2018.2.22-1.0.fc27).
2018-02-16 17:58:43 +01:00
Rémi Verschelde
717e388e19
Merge pull request #14804 from ColinKinloch/master
Fixed android arm64v8
2018-02-14 11:55:28 +01:00
Fabio Alessandrelli
6fcc8b7e1f Deleting OpenSSL module and library 2018-02-14 01:26:34 +01:00
Fabio Alessandrelli
308b03b377 Small change to lws mbedtls_wrapper to fix OSX build.
Checks for OSX in thirdparty/lws/mbedtls_wrapper/include/platform/ssl_port.h
to include stdlib.h instead of malloc.h.

The bug is fixed upstream in master via LWS_HAVE_MALLOC_H,
but not in the 2.4.1 branch (as the file structure has, one again,
changed).
2018-02-14 01:26:23 +01:00
Fabio Alessandrelli
34b9fc3022 lws module now uses mbedtls as OpenSSL replacement 2018-02-14 01:26:23 +01:00
Fabio Alessandrelli
b33d10ccdf Add mbedTLS lib. Version 2.7.0, license Apache 2.0 2018-02-14 01:26:23 +01:00
robfram
59baf3da92 Add FreeBSD and OpenBSD #defines to skip LWS_HAVE_SYS_PRCTL_H
compiling libwebsocket, as it would fail otherwise. Fix #16472.
2018-02-13 18:12:39 +01:00
Fabio Alessandrelli
fa33e0f62d Add libwebsockets as thirdparty library.
License is LGPLv2.1 + static linking exception, version is 2.4.1
2018-02-05 16:11:41 +01:00
Rémi Verschelde
a294c99400 Copyright: Add license info for bullet and Mozilla CA certs 2018-01-22 11:11:51 +01:00
Rémi Verschelde
af9c2f8b9c COPYRIGHT: Update with recently added thirdparty libraries
Also various updates to thirdparty/README.md.
2018-01-13 14:44:53 +01:00
Rémi Verschelde
e12c89e8c9 bullet: Streamline bundling, remove extraneous src/ folder
Document version and how to extract sources in thirdparty/README.md.
Drop unnecessary CMake and Premake files.
Simplify SCsub, drop unused one.
2018-01-13 14:08:45 +01:00
Rémi Verschelde
53c65ae761 zstd: Update to pristine 1.3.3 2018-01-13 13:50:59 +01:00
Rémi Verschelde
76e5b048d0 tinyexr: Update to pristine commit e385dad (security update) 2018-01-13 13:46:03 +01:00
Rémi Verschelde
00abb1f201 openssl: Update to pristine 1.0.2n (security update) 2018-01-13 13:39:08 +01:00
Rémi Verschelde
de0b31edd5 libogg: Update to pristine version 1.3.3 2018-01-13 13:00:44 +01:00
Rémi Verschelde
5519481803
Merge pull request #15114 from capnm/fix-bad-lightmap-crash
Avoid thekla_unwrap crash
2018-01-03 12:36:47 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Martin Capitanio
c0226d2e92 Add thekla_atlas/godot-changes.patch 2017-12-31 01:24:03 +01:00
Martin Capitanio
1df63bf3cb Avoid thekla_unwrap crash
Godot crashed here sometimes by generating the uv map.
2017-12-31 00:43:32 +01:00
Colin Kinloch
853b1daa49 Fixed android arm64v8 2017-12-23 16:49:04 +00:00
Rémi Verschelde
3f7f65cd1c Thekla: redo reduz's changes from 8b01b2e85c
But this time without messing up the code style and with proper
comments documenting changed code.
2017-12-20 00:39:57 +01:00
Rémi Verschelde
eb39b7f5de Thekla: Revert to state before clang-format changes
The file was wrongly formatted in 8b01b2e85c,
for thirdparty code we keep the upstream style *if* we need to make changes at all.
2017-12-20 00:39:57 +01:00
Juan Linietsky
8b01b2e85c -Fix some crashes in unwrapper
-Add emission lighting to raytrace mode, fixes #14686
2017-12-19 12:16:55 -03:00
Orkun
e021097c80 Fix #12220: Add Decompress Bc5 to Squish
This Commit fixes the corrupted file preview described in #12220.
Added DecompressColourBc5 function to squish.
2017-12-16 15:38:36 +01:00
Hein-Pieter van Braam
241de95884 Fix 32bit MingW build for thekla_altas 2017-12-15 23:26:10 +01:00
Rémi Verschelde
d6b6dcd20e thekla: Fix build on x86 systems without SSE support
Fixes #14709.

Same as https://github.com/Thekla/thekla_atlas/pull/11,
but adding  comments until it's merged upstream.
2017-12-15 20:35:51 +01:00
Hugo Locurcio
979c451d07
Update Hack font to version 3.000 2017-12-15 10:25:12 +01:00
bruvzg
f55162ac1d
Fixes thekla atlas mingw-w64 build 2017-12-15 09:04:51 +02:00
bruvzg
f8303ec6fb
Adds macports_clang build flag to build using clang-5.0 form MacPorts (with OpenMP support). 2017-12-14 16:44:45 +02:00
Hein-Pieter van Braam
5387613c7b Fix mingw build for thekla_atlas 2017-12-12 17:30:43 +01:00
volzhs
043103fe6a Update libwebp to 0.6.1
* lossless performance and compression improvements + a new 'cruncher' mode (-m 6 -q 100)
* ARM performance improvements with clang (15-20% w/ndk r15c)
* webp-js: emscripten/webassembly based javascript decoder
* miscellaneous bug & build fixes
2017-12-12 02:55:47 +09:00
Juan Linietsky
4f7588b0d8 oops, missing 2017-12-09 15:21:57 -03:00
Rémi Verschelde
690c05e6c2 thekla_atlas: Fix compilation error
Bug introduced in 65fb961b8b.
2017-12-09 18:52:19 +01:00
Juan Linietsky
65fb961b8b -Ability to and unwrap lightmap coordinates on import
-Added unwrap functionality to Mesh
-Ability to display and debug mesh UVs
-Added multiline draw, so it's easier and faster to draw UVs
-Many fixes to SurfaceTool
-Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-12-09 14:18:14 -03:00
Hein-Pieter van Braam
bf05309af7 Import thekla_atlas
As requested by reduz, an import of thekla_atlas into thirdparty/
2017-12-08 15:47:15 +01:00
Rémi Verschelde
0036019e67 tinyexr: Update to current upstream master branch 2017-12-05 22:00:53 +01:00
Rémi Verschelde
c2b8856f2d Revert "Fix MinGW-w64 build of TinyEXR for old toolchains"
This reverts commit 37f5e1dcd9.
2017-12-05 21:59:05 +01:00
Indah Sylvia
7f68960be5 glad: Sync with upstream 0.1.16a0 2017-11-30 14:38:34 +07:00
Martin Lindhe
efe2558519 fix some typos 2017-11-28 16:18:22 +01:00
Rémi Verschelde
03a080547d
Merge pull request #12014 from hi-ogawa/fix-video-playback
Fix video playback
2017-11-13 19:57:18 +01:00
George Marques
a3387a9e22
UWP: Update to build with Windows SDK 10.16229.0
- Update the OpenSSL shim to work with the new SDK
- Change the ARM platform detection to work with VS2017
2017-11-09 16:06:44 -02:00
Rémi Verschelde
5bc2cf257b Convert DOS line endings to Unix line endings
Should fix issues some of us have with `misc/dist/uwp_template/AppxManifest.xml`
always showing up as modified.
Might cause issues on Windows due to the removal of BOMs or change of line endings
in some of the Mono, UWP or gradlew.bat files, we will test and adapt if need be.
2017-11-05 11:37:59 +01:00
AndreaCatania
ed047261f0 Vendor thirdparty Bullet source for upcoming physics server backend 2017-11-04 20:08:26 +01:00
Rémi Verschelde
e9d1d648cd libpng: Cosmetic update to upstream 1.6.34
No code change in the part we are using, it only affected contrib code.
[ci skip]
2017-10-29 17:06:48 +01:00
Ferenc Arn
f3436a841a Add an option to use zstd's recently introduced long range matching (off by default). 2017-10-27 12:26:13 -04:00
Ferenc Arn
01815e9b5f Update zstd to 1.3.2. 2017-10-26 16:41:47 -04:00
Marcelo Fernandez
2baf54526b Fix BSD compile issues 2017-10-17 16:50:41 +00:00
Matt Hughes
3edd3cd377 Fix video playback
This adds support to

- VideoPlayer
- VideoStreamWebm
- VideoStreamTheora
2017-10-14 23:20:39 +09:00
Indah Sylvia
8bdb494032 updated libpng to version 1.6.33 (September 28, 2017) 2017-10-12 14:38:30 +07:00
volzhs
dfc717c458 Update freetype to 2.8.1 2017-10-10 01:33:39 +09:00
Elliott Sales de Andrade
a408388623 Enable building against system zstd. 2017-09-23 23:46:47 -04:00
Daniel J. Ramirez
52c0550dd7 Changed Mononoki font to Hack font 2017-09-17 13:55:48 -05:00
Rémi Verschelde
8c08f2380d Merge pull request #11253 from djrm/pr_better_docs
Improved editor docs
2017-09-14 12:06:36 +02:00
Daniel J. Ramirez
b17c801ee8 Changed source font to Mononoki. 2017-09-14 01:13:30 -05:00
Rémi Verschelde
a5e907b830 Copyright: Document recastnavigation 2017-09-13 20:56:23 +02:00
Saracen
92e77d5ff2 Recast integration. 2017-09-04 21:41:57 +01:00
volzhs
a4a4f6dada Replace editor font to NotoSans for Latin, Arabic, Hebrew, Thai 2017-08-31 21:49:48 +09:00
volzhs
f031b111dd Update source code pro font to 2.030 2017-08-31 21:31:46 +09:00
Rémi Verschelde
0cee288c11 Merge pull request #10148 from leezh/pcre2
Replacement of internal RegEx with PCRE2
2017-08-31 11:56:19 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Rémi Verschelde
3acf6857d9 nanosvg: Document in COPYRIGHT.txt and thirdparty README.md 2017-08-27 13:32:23 +02:00
Rémi Verschelde
ec6a9617bb Copyright: Add etc2comp and small fixes 2017-08-27 12:16:36 +02:00
Rémi Verschelde
c3ab9eb590 zstd: Update to upstream version 1.3.1
It is now dual-licensed BSD-3-Clause and GPL-2.0, we use the former.
The PATENTS file is no longer applicable \o/

Also add zstd to COPYRIGHT.txt
2017-08-27 12:05:39 +02:00
Rémi Verschelde
560fc0f199 stb: Update to upstream stb_truetype 1.17 and stb_vorbis 1.11
Also fix documented OpenSSL version, it was updated to 1.0.2l in
67305d1b0a.
2017-08-27 11:40:26 +02:00
Rémi Verschelde
ee1d0179c5 libpng: Update to upstream version 1.6.32
Fixes security vulnerability in our 1.6.31rc01 snapshot.
2017-08-27 11:37:42 +02:00
Rémi Verschelde
67e6c1b735 minizip: Fix compatibility with Gentoo's unique zlib API
Fixes #10539 in a diplomatic way (as opposed to telling Gentoo users
to just change their distro or rebuild zlib from upstream...).
2017-08-22 20:11:56 +02:00
Daniel J. Ramirez
da8fecf25e Added support for SVG 2017-08-20 13:53:02 -05:00
Zher Huei Lee
e3e2f06324 Replacement of internal RegEx with PCRE2
The pattern and replacement matching behaviour has been changed purely
due to the nature of switching to a standards-compliant library.

One mistake in the previous behaviour was that named groups didn't have
a number. This has been corrected.

As names are actually just an alias of numbered groups,
RegExMatch::get_name_dict() is now get_names() and is a dict
referring to the group number it represents.

Duplicate names are enabled and the with the first matching instance
used.

Due the lack of a suitable equivalent in PCRE2, RegExMatch::expand() was
removed.
2017-08-19 19:29:14 +08:00
Rémi Verschelde
53fffa12f1 minizip: Reapply Godot-specific changes for seek support
I have not assessed whether they are still all relevant.
2017-08-18 23:26:41 +02:00
Rémi Verschelde
5681b7b60a minizip: Sync with pristine contrib/minizip from zlib 1.2.4
Godot-specific changes are undone in this commit, they will be readded
and properly documented in the following commit.
2017-08-18 23:17:50 +02:00
Juan Linietsky
5c361485db -Added GLTF scene support (still missing animations and .glb extension)
-Fixed bugs regarding tangent generation in SurfaceTool
2017-08-02 15:43:49 -03:00
George Marques
9db39d72fa
zstd: Apply upstream patch to fix UWP ARM build
Following upstream commit f04deff4fc
2017-07-25 14:52:14 -03:00
George Marques
2c1764d5a9
zstd: Update to upstream version 1.3.0 2017-07-22 18:46:05 -03:00
Rémi Verschelde
492999a33b libpng: Update to upstream version 1.6.31rc01
Fixes various issues with 1.6.30, especially ARM build.
Supersedes change in #9722.
2017-07-22 18:42:20 +02:00
Ruslan Mustakov
fbb27a0c43 Fix android export templates build
This commit fixes errors occurring during Android export template
builds.
This required modification in third-party library (libpng) to compile
with NEON. Most likely a similar patch will be applied by them and we
could then replace the modified version.
2017-07-20 01:58:47 +07:00
Rémi Verschelde
b1ca62af52 libpng: Update to upstream version 1.6.30 2017-07-14 22:36:01 +02:00
Rémi Verschelde
3e8c4f07e9 Revert "Mark where ETC1 restriction needs to be done to speed up RGBA8 import"
This reverts commit 8b362b5009.

We should not apply our clang-format style to thirdparty code,
it makes it impossible to maintain.
2017-07-08 09:54:15 +02:00
Juan Linietsky
8b362b5009 Mark where ETC1 restriction needs to be done to speed up RGBA8 import 2017-07-06 20:39:05 -03:00
volzhs
0f8cc0fa5b Update freetype to 2.8 2017-06-25 10:41:12 +09:00
Rémi Verschelde
0a87979d2e glad: Sync with upstream 0.1.14a0 2017-06-14 20:15:37 +02:00
Juan Linietsky
a8e845a474 Merge pull request #8548 from tagcup/etc2comp
Add ETC1/ETC2 compression support though etc2comp.
2017-06-13 19:17:13 -03:00
Ferenc Arn
f177c15347 Add zstd compression support.
zstd has much better compression speed and ratio, and better decompression speed than currently available methods.
Also set zstd as the default compression method for Compression as well as FileAccessCompressed functions.
2017-06-08 23:48:14 -05:00
Ferenc Arn
6a9c990da7 Add ETC1/ETC2 compression support though etc2comp.
Remove rg-etc1 code. Also updated travis to use ubuntu 14.04.

Fixes #8457.
2017-05-31 18:59:00 -05:00
Rémi Verschelde
47e0e530a9 opus: Update to upstream version 1.1.5 2017-05-28 21:15:14 +02:00
Rémi Verschelde
67305d1b0a openssl: Sync with upstream 1.0.2l 2017-05-27 19:08:07 +02:00
Rémi Verschelde
996f1ae29e openssl: Reapply necessary UWP changes from patch 2017-05-27 19:08:07 +02:00
Rémi Verschelde
c1b0662b40 openssl: Define WIN32_LEAN_AND_MEAN on Windows
This avoids namespace collisions with things such as X509_NAME.
Also force include of necessary definitions in `crypto/o_str.c`
which seem missing on MSVC (but work on MinGW).
2017-05-27 19:08:03 +02:00
Rémi Verschelde
cb0f771aaa openssl: Sync with pristine upstream 1.0.2h
Our necessary custom changes will be reapplied in later commits for clarity,
and saved as patches for future updates.
2017-05-27 15:45:25 +02:00
Rémi Verschelde
022541d917 openssl: Document update process and delete unused files 2017-05-27 15:22:49 +02:00
Rémi Verschelde
ce8bf1592a TinyEXR: Document licensing and copyright 2017-05-27 13:41:18 +02:00
Rémi Verschelde
37f5e1dcd9 Fix MinGW-w64 build of TinyEXR for old toolchains
MinGW-w64 is at version 2.0.1 on our current Travis CI toolchain, and seems
not to like fopen_s.
2017-05-27 13:13:31 +02:00
Juan Linietsky
f89641907f -Added EXR supprot for HDR (no BC6 compression yet though)
-Improvements to texture importer
-Proper detection of S3TC compression modes, and added all modes to Image
-Fixes to non-power of 2 compressed textures, which should all be supported by GLES3
2017-05-26 22:31:32 -03:00
Rémi Verschelde
c8aea60324 Improve documentation of thirdparty code snippets 2017-05-07 11:42:37 +02:00
Rémi Verschelde
d4029aa51a Move other lone thirdparty files to thirdparty/misc
Also move Box2D ConvexDecomposition contrib code to
thirdparty/b2d_convexdecomp.
2017-04-28 21:19:25 +02:00
Rémi Verschelde
c5f830d6b9 Split thirdparty smaz.c out of compressed_translation.cpp
Code comes from 150e125cba/smaz.c

With a small modification to match Godot expectations:
```
diff --git a/thirdparty/core/smaz.c b/thirdparty/core/smaz.c
index 9b1ebc2..555dfea 100644
--- a/thirdparty/core/smaz.c
+++ b/thirdparty/core/smaz.c
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #include <string.h>

 /* Our compression codebook, used for compression */
-static char *Smaz_cb[241] = {
+static const char *Smaz_cb[241] = {
 "\002s,\266", "\003had\232\002leW", "\003on \216", "", "\001yS",
 "\002ma\255\002li\227", "\003or \260", "", "\002ll\230\003s t\277",
 "\004fromg\002mel", "", "\003its\332", "\001z\333", "\003ingF", "\001>\336",
@@ -89,7 +89,7 @@ static char *Smaz_rcb[254] = {
 "e, ", " it", "whi", " ma", "ge", "x", "e c", "men", ".com"
 };

-int smaz_compress(char *in, int inlen, char *out, int outlen) {
+int smaz_compress(const char *in, int inlen, char *out, int outlen) {
     unsigned int h1,h2,h3=0;
     int verblen = 0, _outlen = outlen;
     char verb[256], *_out = out;
@@ -167,7 +167,7 @@ out:
     return out-_out;
 }

-int smaz_decompress(char *in, int inlen, char *out, int outlen) {
+int smaz_decompress(const char *in, int inlen, char *out, int outlen) {
     unsigned char *c = (unsigned char*) in;
     char *_out = out;
     int _outlen = outlen;
@@ -192,7 +192,7 @@ int smaz_decompress(char *in, int inlen, char *out, int outlen) {
             inlen -= 2+len;
         } else {
             /* Codebook entry */
-            char *s = Smaz_rcb[*c];
+            const char *s = Smaz_rcb[*c];
             int len = strlen(s);

             if (outlen < len) return _outlen+1;
diff --git a/thirdparty/core/smaz.h b/thirdparty/core/smaz.h
index a547d89..a9d8a33 100644
--- a/thirdparty/core/smaz.h
+++ b/thirdparty/core/smaz.h
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #ifndef _SMAZ_H
 #define _SMAZ_H

-int smaz_compress(char *in, int inlen, char *out, int outlen);
-int smaz_decompress(char *in, int inlen, char *out, int outlen);
+int smaz_compress(const char *in, int inlen, char *out, int outlen);
+int smaz_decompress(const char *in, int inlen, char *out, int outlen);

 #endif
```
2017-04-28 21:19:24 +02:00
Rémi Verschelde
2398eb6ed4 Move core thirdparty files to thirdparty/{minizip,misc} 2017-04-28 21:19:23 +02:00
Rémi Verschelde
d463b6e3d0 libpng: Update to upstream version 1.6.29 2017-04-09 15:47:25 +02:00
Rémi Verschelde
dd8655aac9 opus: Update to upstream version 1.1.4 2017-04-09 15:17:58 +02:00
Rémi Verschelde
fa2d5b91dc squish: Update to upstream version 1.15
Also fix clang-format pre-commit hook to ignore thirdparty files.
2017-04-09 15:03:39 +02:00
Rémi Verschelde
df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Fabio Alessandrelli
0450e6539e ENet code cleanup and changes from review. 2017-03-24 02:30:11 +01:00
Fabio Alessandrelli
ed075c4c80 Cleanup unused ENet files and updated thirdparty README 2017-03-24 02:30:11 +01:00
Fabio Alessandrelli
5f681d0b0f Allow non blocking UDP put_packet in C++.
- Add blocking mode option to PacketPeerUDP.
- put_packet returns ERR_UNAVAILABLE when operation would block.
- ENet module uses non-blocking UDP.
2017-03-24 02:30:11 +01:00
Fabio Alessandrelli
5bdbc0f762 Convert ENetAddress host to 16 bytes to accomote IPv6 2017-03-08 21:16:26 +01:00
Fabio Alessandrelli
4cc1b04586 Add godot socket implementation 2017-03-08 21:16:20 +01:00
volzhs
6de3defe72 Update libwebp to 0.6.0 2017-02-17 23:49:40 +09:00
Rémi Verschelde
b87a232668 Reorder the folders in tools to prepare moving tools/editor
- `certs` and `editor_fonts` go to `thirdparty`
- `dist` and `scripts` go to a new `misc` folder
- `collada` and `doc` go to `tools/editor`

The next step will be to rename `tools/editor` to `editor` directly,
but this will be done at the right time to avoid breaking too many PRs.
2017-02-09 00:08:27 +01:00
Juan Linietsky
0aa7242624 WIP new AudioServer, with buses, effects, etc. 2017-01-21 19:01:00 -03:00
Rémi Verschelde
6a3dae5be9 zlib: Update to upstream version 1.2.11 2017-01-16 17:58:34 +01:00
Rémi Verschelde
41821ba11d Remove libmpcdec bundled lib, no longer used
Musepack support was removed in 857c50db70.
2017-01-11 22:40:51 +01:00
Rémi Verschelde
c2310b41fa opus: Update to upstream opusfile 0.8
Had missed it in the previous commit as the upstream website is outdated.
2017-01-08 21:33:37 +01:00
Rémi Verschelde
2a38a5eaa8 Remove bundled glew, obsoleted by glad
Also make Haiku load the glad header for GLES3 too,
though I haven't test it.
2017-01-06 22:56:51 +01:00
Rémi Verschelde
12d1fc7a18 glad: Update to upstream 0.1.13a0
Upstreams the workaround we had to use for OSX.
2017-01-06 22:51:15 +01:00
Rémi Verschelde
dc0d08cc93 Move glad files to thirdparty dir 2017-01-06 22:42:19 +01:00
Rémi Verschelde
9845bdde8d opus: Update to upstream libopus 1.1.3 2017-01-05 23:28:02 +01:00
Rémi Verschelde
2ca0337f5f zlib: Update to upstream 1.2.10 2017-01-05 23:27:59 +01:00
Rémi Verschelde
a0141fa823 libpng: Update to upstream 1.6.28
Fixes a NULL pointer dereference bug (CVE-2016-10087).
2017-01-05 22:27:53 +01:00
Rémi Verschelde
3f3f5a5359 Merge remote-tracking branch 'origin/gles3' into gles3-on-master
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01:00
volzhs
e04c7e11ec Update libwebp to 0.5.2 2016-12-24 00:46:09 +09:00
Błażej Szczygieł
79f09b3f15 WebM: Fix crash when there is no audio stream
Sync with libsimplewebm-git: 05cfdc2
2016-12-01 12:00:17 +01:00
Błażej Szczygieł
570a8e6b40 Fix compilation with MSVC 2013 2016-11-15 12:10:05 +01:00
Rémi Verschelde
be4eff1d8b Merge pull request #7019 from vnen/rename-winrt-uwp
Rename WinRT platform to UWP
2016-11-06 12:03:10 +01:00
Rémi Verschelde
611a94e3a6 opus: Move public headers to match system install 2016-11-03 21:18:23 +01:00
George Marques
411faaa6f4
Rename remaining WinRT references to UWP 2016-11-03 14:51:08 -02:00
George Marques
b113c7b7a3
Rename WINRT_ENABLED to UWP_ENABLED 2016-11-03 14:51:08 -02:00
George Marques
fb5a73a39f
Rename WinRT files to UWP 2016-11-03 14:51:08 -02:00
Rémi Verschelde
7504a85e5a libpng: Update to upstream 1.6.26 2016-11-02 23:25:39 +01:00
Błażej Szczygieł
1556d0d377 libvpx: Necessary modifications
- convert ARM assembly (NEON) files,
- add rtcd for run-time CPU features detection,
- modify "system_state.h",
- "arm_cpudetect.c" fixes.
2016-10-19 13:34:46 +02:00
Błażej Szczygieł
5268443fdf Add libvpx thirdparty library
Only necessary files
2016-10-19 13:34:28 +02:00
Błażej Szczygieł
2d77a6f5d3 Add libsimplewebm and libwebm thirdparty libraries 2016-10-17 19:22:33 +02:00
Rémi Verschelde
edbc0c0d0b freetype: Make it a module and split thirdparty library
Comment out the weird workaround for building on Windows at it might
not be needed anymore. Testing needed to confirm.
2016-10-15 18:10:17 +02:00
Rémi Verschelde
cbf52606f4 zlib: Split thirdparty files, simplify scons option 2016-10-15 12:20:47 +02:00
Rémi Verschelde
36738ddda4 glew: Split thirdparty files and isolate env
Not fully happy about the way this one interacts with the various
platforms. Maybe the platform_config.h should be generated by the
SCsub instead of passing a define just to know where is the header.
2016-10-15 12:01:28 +02:00
Rémi Verschelde
249836e530 squish: Update to upstream 1.14
Sources are untouched, tarball from https://sourceforge.net/projects/libsquish
2016-10-15 12:01:28 +02:00
Rémi Verschelde
8311a78df5 squish: Move to a module and split thirdparty lib 2016-10-15 12:01:28 +02:00
Rémi Verschelde
8981ff8a84 rtaudio: Split thirdparty files 2016-10-15 12:01:25 +02:00
Rémi Verschelde
5c12c9e69b mpc: Move to a module and split thirdparty libmpcdec 2016-10-15 11:50:42 +02:00
Rémi Verschelde
cfcc8a20e8 theora: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
422196759f openssl: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
d9a291f641 ogg/vorbis/opus: Make them modules and unbundle thirdparty libs
Took the opportunity to undo the Godot changed made to the
opus source. The opus module should eventually be built in its
own environment to avoid polluting others with too many include
dirs and defines.

TODO: Fix the platform/ stuff for opus.
2016-10-15 11:50:40 +02:00
Rémi Verschelde
ee3cf211c6 webp: Make it a module and unbundle libwebp thirdparty files
Note that there are two Godot-specific changes made to libwebp
for the javascript/HTML5 platform. They are documented in the
README.md.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
b1e8889d96 dds/etc1/pbm/pvr: Make those modules and split thirdparty files
They are not particularly packaged in Linux distros so we do not
facilitate unbundling via SCons. There could be done if/when there
is interest.

Also s/pnm/pbm/, long-lived typo :)
2016-10-15 11:50:39 +02:00
Rémi Verschelde
c31ad71f10 enet: Split enet thirdparty files and allow unbundling
Building against shared libraries only implemented for Linux X11 so far.
TODO: Document Godot's modifications of upstream enet.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
16ba665db6 jpg: Make it a module and split jpgd thirdparty files
Similar rationale as in previous commit.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
5fef84a135 png: Split library to thirdparty dir and allow unbundling
Uses the new structure agreed upon in #6157, but the thirdparty/ folder
does not behave following a logic similar to that of modules/ yet.

The png driver can't be moved to a module as discussed in #6157, as it's
required by core together with a few other ImageLoader implementations
(see drivers/register_driver_types.cpp:register_core_driver_types())

Dropped the possibility to disable PNG support, it's a core component
of Godot.
2016-10-15 11:50:39 +02:00