summaryrefslogtreecommitdiff
path: root/modules
AgeCommit message (Collapse)Author
2020-02-13Remove obsolete GLES3 backendRémi Verschelde
Due to the port to Vulkan and complete redesign of the rendering backend, the `drivers/gles3` code is no longer usable in this state and is not planned to be ported to the new architecture. The GLES2 backend is kept (while still disabled and non-working) as it will eventually be ported to serve as the low-end renderer for Godot 4.0. Some GLES3 features might be selectively ported to the updated GLES2 backend if there's a need for them, and extensions we can use for that. So long, OpenGL driver bugs!
2020-02-12Merge pull request #36142 from akien-mga/remove-deprecated-decimalsRémi Verschelde
Remove deprecated decimals builtin
2020-02-12Fix Mono and GDNative builds after changes to ObjectIDRémi Verschelde
Issues caused by cf8c679a23b21d6c6f29cba6a54eaa2eed88bf92. The Mono change is actually a bugfix (used the int instead of ObjectID by mistake). The GDNative change is a temporary revert until a more exhaustive approach is taken to make 'godot_int' 64-bit, is confirmed wanted by GDNative users.
2020-02-12ObjectID converted to a structure, fixes many bugs where used incorrectly as ↵Juan Linietsky
32 bits.
2020-02-12Merge pull request #35522 from AndreaCatania/rpc_opt_2Rémi Verschelde
Optmized data sent during RPC and RSet calls.
2020-02-12Merge pull request #36138 from GodotExplorer/fix-vscode1.42-hover-4.0Rémi Verschelde
Fix hover symbol content position
2020-02-12Remove deprecated decimals builtinRémi Verschelde
Replaced by 'step_decimals' in 3.2 via #21425.
2020-02-12Optmized data sent during RPC and RSet calls.Andrea Catania
- Now is sent the method ID rather the full function name. - The passed IDs (Node and Method) are compressed so to use less possible space. - The variant (INT and BOOL) is now encoded and compressed so to use much less data. - Optimized RPCMode retrieval for GDScript functions. - Added checksum to assert the methods are the same across peers. This work has been kindly sponsored by IMVU.
2020-02-12Merge pull request #36135 from akien-mga/doc-updateRémi Verschelde
doc: Sync classref with current source
2020-02-12doc: Sync classref with current sourceRémi Verschelde
Lots of internal API changes and some docstrings were lost in the conversion. I manually salvaged many of them but for all the rendering-related ones, an additional pass is needed. Added missing enum bindings in BaseMaterial3D and VisualServer.
2020-02-12Remove deprecated Color::grayHanif Bin Ariffin
It was marked to be removed in Godot 3.1. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-02-12Fix hover symbol content positiongeequlim
2020-02-11Fix assign instead of comparison in image_save_tinyexr.cpp.Marcel Admiraal
2020-02-11Vulkan: Move thirdparty code out of drivers, style fixesRémi Verschelde
- `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-11Fix code formatting issues and VS compilationRémi Verschelde
Also temporarily disable multicheck build so that we get a full build even when there are style issues on Vulkan. Fixes #33356.
2020-02-11Fix Vector3 ambiguities and out of bounds init.bruvzg
2020-02-11basis_universal: Use proper basisu_transcoder.h header, fixes Clang buildRémi Verschelde
Also renames bu to basisu to be more explicit and match upstream name.
2020-02-11Fixes to Basis Universal.Juan Linietsky
2020-02-11glslang: Disable warnings and allow unbundlingRémi Verschelde
2020-02-11basis_universal: Fix py3 build and document license and provenanceRémi Verschelde
Also drop unneeded files. Fix build with MinGW. Closes #32384.
2020-02-11Rewritten StreamTexture for better code reuse, added basis universal supportJuan Linietsky
2020-02-11Modernized default 3D material, fixes material bugs.Juan Linietsky
2020-02-11Several fixes to 3D rendering, and multimesh implementation.Juan Linietsky
2020-02-11Base 3D engine done, still untested, though.Juan Linietsky
2020-02-11Merge pull request #29993 from bruvzg/vulkanRémi Verschelde
Initial Vulkan support for macOS (MoltenVK) and Windows
2020-02-11Add static Vulkan loader.bruvzg
Initial Vulkan support for Windows. Initial Vulkan support for macOS.
2020-02-11Moved the shader source compilation code outside RenderingDevice and VulkanJuan Linietsky
2020-02-11Added a spinlock template as well as a thread work pool class.Juan Linietsky
Also, optimized shader compilation to happen on threads.
2020-02-11Changes to material required to add custom shaders in RD rendererJuan Linietsky
2020-02-11A lot of progress with canvas rendering, still far from working.Juan Linietsky
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11Refactored RID/RID_Owner to always use O(1) allocation.Juan Linietsky
* Implements a growing chunked allocator * Removed redudant methods get and getptr, only getornull is supported now.
2020-02-11Refactor image_saver_tinyexr.cpp to prevent compiler warnings.Marcel Admiraal
Prevents GCC compiler throwing: control reaches end of non-void function. Prevents Visual Studio throwing C4715: not all control paths return a value.
2020-02-10[Mono] Basis/Transforms Array operator comments and improvementsAaron Franke
The behavior for Basis and Transform2D is unchanged, and Transform gets new behavior. All of the behavior is identical to GDScript's behavior.
2020-02-10- Integrated NavigationServer and Navigation2DServer.Andrea Catania
- Added Navigation Agents and Obstacles. - Integrated Collision Avoidance. This work has been kindly sponsored by IMVU.
2020-02-10Merge pull request #33950 from Calinou/gridmap-editor-zoom-shortcutRémi Verschelde
Implement zooming using Ctrl + Mouse wheel in the GridMap editor
2020-02-10Merge pull request #35812 from ↵Rémi Verschelde
touilleMan/gdnative-uses-godot_string_name-where-possible Use StringName in pluginscript's set/get_prop and add_global_constant
2020-02-10Fix VisualScriptClassConstant to be updated properlyYuri Roubinsky
2020-02-09Merge pull request #36048 from AndreaCatania/SoftBodyStiffRémi Verschelde
Make softbody completelly stiff to attachment point
2020-02-09Merge pull request #35649 from aaronfranke/color-unsignedRémi Verschelde
Use uint/ulong for Color in C#
2020-02-09Make softbody completelly stiff to attachment pointAndrea Catania
2020-02-09Merge pull request #36013 from raulsntos/fix-issubsequenceofRémi Verschelde
Avoid going out of bounds in IsSubsequenceOf
2020-02-08Merge pull request #36011 from madmiraal/fix-33391Rémi Verschelde
Remove do{ } while(0) wrapper around error macros.
2020-02-08Merge pull request #35982 from akien-mga/scons-modules-enabled-header-and-splitRémi Verschelde
SCons: Split libmodules.a in folder-based libs
2020-02-08Avoid going out of bounds in IsSubsequenceOfRaul Santos
Closes #35598
2020-02-08Remove do{ } while(0) wrapper around error macros.Marcel Admiraal
As pointed out by Faless, a do{ } while(0) wrapper around a continue or break just ends the do{ } while(0) loop. The do{ } while(0) loop exists to enable the macro to be used as a function which requires a semicolon. The alternative approach is to use an if(1) { } else ((void)0) wrapper. Since the macro already has an if(unlikely(m_cond)) { } this patch simply adds the else ((void)0) to this if statement instead. For consistency all the macros have been updated in the same way, and trailing else warnings corrected. However, the wrappers around ERR_PRINT and WARN_PRINT were removed, because they generated too many ambiguous trailing else warnings. They are also single line macros so a wrapper is not needed.
2020-02-07Workaround WebM playback bug after AudioServer latency fixesRémi Verschelde
af9bb0ea15dfd3dfe8950fcfcce364485dadd92a fixed AudioServer's `get_output_delay()` (which used to always return 0) while renaming it to `get_output_latency()`. It now returns the latency from the AudioDriver, which can be non-0. While this was a clear bugfix, it broke playback for WebM files without audio track. It seems like the playback code, even though it queried the output delay to calculate a time compensation, was designed to work even though the delay value was actually bogus. Now that it's correct, it's not working. As a workaround we comment out uses of the output latency, restoring the behavior of Godot 3.1. This code should still be reviewed by someone more versed in video playback and fixed to properly account for the non-0 driver latency. Fixes #35760.
2020-02-07SCons: Split libmodules.a in folder-based libsRémi Verschelde
This removes the need for the hacky split_libmodules logic on Windows, since all libs are now of manageable size.
2020-02-07Use modules_enabled.gen.h to improve inter dependency checksRémi Verschelde
- Fix build with gdscript module disabled. Fixes #31011. - Remove unused `gdscript` compile option. - Fix build with regex module disabled. - Fix ImageLoaderSVG to forward declare thirdparty structs.
2020-02-07SCons: Generate header with info on which modules are enabledRémi Verschelde
We already had `MODULE_*_ENABLED` defines but only in the modules environment, and a few custom `*_ENABLED` defines in the main env when we needed the information in core. Now this is defined in a single header which can be included in the files that need this information.