summaryrefslogtreecommitdiff
path: root/modules
AgeCommit message (Collapse)Author
2022-02-09Core: Move generated `VERSION_HASH` to a `.cpp` fileRémi Verschelde
This lets us have its definition in `core/version.h` and avoid rebuilding a handful of files every time the commit hash changes.
2022-02-08Merge pull request #57822 from Calinou/ios-remove-armv7Rémi Verschelde
2022-02-08Merge pull request #57627 from JFonS/occluder_improvementsRémi Verschelde
2022-02-08Merge pull request #57076 from IgorKordiukiewicz/fix-mono-string-capitalizeIgnacio Roldán Etcheverry
String.Capitalize() in C# now matches the behaviour of String::capitalize() in C++
2022-02-08Remove support for ARMv7 (32-bit) on iOSHugo Locurcio
All iOS devices since the iPhone 5S support ARMv8 (64-bit). The last iOS version supported on ARMv7 devices is 10.x, which is too old to run Godot 4.0 projects since the minimum supported iOS version is 11.0.
2022-02-08Merge pull request #57798 from akien-mga/scons-module-tests-simplifyRémi Verschelde
2022-02-08SCons: Improve logic to generate `modules_tests.gen.h`Rémi Verschelde
This removes the need for `AlwaysBuild` by ensuring that the proper files are being tracked as `Depends`.
2022-02-08Merge pull request #57786 from 0And/vectorslerpRémi Verschelde
2022-02-08Merge pull request #57796 from akien-mga/revert-sname-theme-settersRémi Verschelde
2022-02-08Re-add missing `SNAME` macros in `get_theme_*` callsRémi Verschelde
They were removed in the previous commit reverting the addition of `SNAME` to `add_theme_*` and theme setter methods, which is not wanted.
2022-02-08Revert "Add missing SNAME macro optimization to all theme methods call"Rémi Verschelde
This reverts commit a988fad9a092053434545c32afae91ccbdfbe792. As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used everywhere but only in critical code paths. For theme methods specifically, it was by design that only getters use `SNAME` and not setters.
2022-02-08Refactor some object type checking code with `cast_to`Rémi Verschelde
Less stringly typed logic, and less String allocations and comparisons.
2022-02-07Allow C# Vector2/3 slerp values to have any lengthAndrew Jacob
2022-02-07Merge pull request #57764 from timothyqiu/octant-deleteRémi Verschelde
2022-02-07Merge pull request #57752 from Calinou/doc-csg-nodes-performanceRémi Verschelde
2022-02-08Fix GridMap memory leakHaoyu Qiu
2022-02-07Document performance limitations with CSG nodes, link to tutorialHugo Locurcio
2022-02-07[Net] Add type check to GDScriptRPCCallable.Fabio Alessandrelli
It will print an error when using an RPC defined on an object which does not extend Node.
2022-02-07[Net] Implement GDScript custom RPC callable.Fabio Alessandrelli
2022-02-07Merge pull request #57305 from bruvzg/macos_cleanupRémi Verschelde
2022-02-07Merge pull request #57748 from fabriceci/rename-script-template-variableRémi Verschelde
2022-02-07Improvements and fixes to occludersjfons
Improvements: * Occluder3D is now an abstract type inherited by: ArrayOccluder3D, QuadOccluder3D, BoxOccluder3D, SphereOccluder3D and PolygonOccluder3D. ArrayOccluder3D serves the same purpose as the old Occluder3D (triangle mesh occluder) while the rest are primitives that can be used to manually place simple occluders. * Occluder baking can now apply simplification. The "bake_simplification_distance" property can be used to set a world-space distance as the desired maximum error, set to 0.1 by default. * Occluders can now be generated on import. Using the "occ" and "occonly" keywords (similar to "col" and "colonly" for colliders) or by enabling on MeshInstance3Ds in the scene's import window. Fixes: * Fixed saving of occluder files after bake. * Fixed a small error where occluders didn't correctly update in the rendering server. Bonus content: * Generalized "CollisionPolygon3DEditor" so it can also be used to edit Resources. Renamed it to "Polygon3DEditor" since it was already being used by other things, not just colliders. * Fixed a small bug in "EditorPropertyArray" where a call to "remove" was left after the "remove_at" rename.
2022-02-07Merge pull request #57741 from Chaosus/vs_fixesRémi Verschelde
2022-02-07rename jump force to jump velocityfabriceci
2022-02-07Merge pull request #57725 from jmb462/missing-sname-theme-settersRémi Verschelde
2022-02-07Add some more fixes to visual shaderYuri Roubinsky
2022-02-07Attach mono thread before getting nativeName fieldRaul Santos
In order to access the `nativeName` constant field from a C# class, the mono scope thread must be attached or the mono domain will be null.
2022-02-06Add missing SNAME macro optimization to all theme methods calljmb462
2022-02-05Merge pull request #57649 from Faless/net/4.x_ws_queue_hostresRémi Verschelde
[Net] Non-blocking WebSocket hostname resolution.
2022-02-05[Net] Non-blocking WebSocket hostname resolution.Jordan Schidlowsky
Hostname is now resolved during poll in WebSocketClient (wslay) to avoid blocking during connect. An attempt is still made to find the hostname in the resolver cache.
2022-02-04Faster CVTT by reducing quality.K. S. Ernest (iFire) Lee
Make BC6 and BC7 CVTT faster while still having better quality than DXT5.
2022-02-04Merge pull request #49445 from ↵Rémi Verschelde
Calinou/gdscript-highlight-namespace-reserved-keyword
2022-02-04Merge pull request #55950 from Faless/mp/4.x_replication_nodesRémi Verschelde
2022-02-04Merge pull request #57625 from akien-mga/core-split-vector2i-own-headerRémi Verschelde
2022-02-04Highlight "namespace" as a GDScript keyword in the syntax highlighterHugo Locurcio
Like "trait" and "yield", "namespace" is currently not implemented but is still reserved for future use.
2022-02-04Core: Move Vector2i to its own `vector2i.h` headerRémi Verschelde
Also reduce interdependencies and clean up a bit.
2022-02-04Merge pull request #57621 from akien-mga/core-split-rect2i-own-headerRémi Verschelde
2022-02-04Merge pull request #57618 from Densorius/masterIgnacio Roldán Etcheverry
Fixed opening new instances of VS 2022 while a instance is already open
2022-02-04[Net] New replication interface, spawner and synchronizer nodes.Fabio Alessandrelli
Initial implementation of the MultiplayerReplicationInterface and its default implementation (SceneReplicationInterface). New MultiplayerSpawner node helps dealing with instantiation of scenes on remote peers (e.g. clients). It supports both custom spawns via a `_spawn_custom` virtual function, and optional auto-spawn of known scenes via a TypedArray<PackedScenes> property. New MultiplayerSynchornizer helps synchronizing states between the local and remote peers, supports both sync and spawn properties and is configured via a `SceneReplicationConfig` resource. It can also sync via path (i.e. without being spawned by a MultiplayerSpawner if both peers has it in tree, but will not send the spawn state in that case, only the sync one.
2022-02-04Core: Move Rect2i to its own `rect2i.h` headerRémi Verschelde
And take the opportunity to improve interdependencies a bit with forward declares where possible.
2022-02-04Merge pull request #57591 from vnen/gdscript-enum-fixesRémi Verschelde
2022-02-04Fixed opening new instances of VS 2022 while a instance is already openDensorius
2022-02-04Cleanup and move char functions to the `char_utils.h` header.bruvzg
2022-02-04Add Visual Studio 2022 support with fallback to 2019Densorius
2022-02-03Merge pull request #57562 from AnilBK/string-add-containsRémi Verschelde
String: Add contains().
2022-02-04String: Add contains().Anilforextra
2022-02-03Merge pull request #57467 from webbuf/modules-initializeRémi Verschelde
Initialized Member Variables in /modules
2022-02-03GDScript: Treat enum values as int and enum types as dictionaryGeorge Marques
Since enums resolve to a dictionary at runtime, calling dictionary methods on an enum type is a valid use case. This ensures this is true by adding test cases. This also makes enum values be treated as ints when used in operations.
2022-02-03GDScript: Allow tests to run on release buildsGeorge Marques
- Fix compilation issues by disabling warnings on release builds. This also strips warnings from expected result before the comparison to avoid false mismatches. - Add a `#debug-only` flag to tests. Must be the first line of the test script. Those won't run with release builds. Can be used for test cases that rely on checks only available on debug builds.
2022-02-03GDScript: Consolidate behavior for assigning enum typesGeorge Marques
This makes sure that assigning values to enum-typed variables are consistent. Same enum is always valid, different enum is always invalid (without casting) and assigning `int` creates a warning if there is no casting. There are new test cases to ensure this behavior doesn't break in the future.