Last active
September 16, 2025 07:42
-
-
Save Calinou/49aefe52ce8f67ffa3f743932123d14f to your computer and use it in GitHub Desktop.
Revisions
-
Calinou revised this gist
Nov 21, 2021 . No changes.There are no files selected for viewing
-
Calinou revised this gist
Nov 21, 2021 . 1 changed file with 2 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -39,8 +39,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New `Transform2D.looking_at()` function. - [New and improved IK in Skeleton3D](https://github.com/godotengine/godot/pull/39353). - New classes: SkeletonModifier3D, SkeletonModifierStack3D, SkeletonModifier3DLookAt, SkeletonModification3DCCDIK, SkeletonModification3DFABRIK, SkeletonModification3DJiggle, SkeletonModification3DTwoBoneIK, SkeletonModification3DStackHolder. - The Bone struct now includes a local_pose_override. - The Bone struct now keeps track of its children bones, if it has any. - Added functions to Skeleton3D for getting the forward vector using the information stored in the rest pose for the bones. - New `Basis.rotate_to_align()` function. - Refactored the BoneAttachment3D node. @@ -139,7 +139,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Networking - [Support for DTLS encryption in UDP and ENet.](https://godotengine.org/article/enet-dtls-encryption) #### Porting @@ -412,7 +411,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Core - The positional command line argument now considers `.res` and `.tres` files as runnable scene formats. - This fixes Godot not running the main scene or a custom scene if they were saved with a `.res` or `.tres` extension. - **macOS/Linux:** Fix the result of `Directory.get_space_left()`. -
Calinou revised this gist
Nov 20, 2021 . 1 changed file with 0 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -21,12 +21,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Easier animation reuse across different models. - Easier procedural generation of animations. #### Core - New TileMap and TileSet resources. -
Calinou revised this gist
Nov 20, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [4.0] - TBD ### Added -
Calinou revised this gist
Nov 20, 2021 . 1 changed file with 12 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,12 +4,23 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] ### Added #### Animation - [Revamped 3D animation storage.](https://godotengine.org/article/animation-data-redesign-40) - [New blend shape track to adjust blend shapes in animations more efficiently.](https://github.com/godotengine/godot/pull/53865) - [New expression-based transitions in AnimationTree state machines.](https://github.com/godotengine/godot/pull/54327) - [Support for animation compression to improve performance with long animations such as cutscenes.](https://github.com/godotengine/godot/pull/54050) - [Replaced transform tracks by position, rotation and scale tracks.](https://github.com/godotengine/godot/pull/53689) - [Removed the animation dependency on bone rests.](https://github.com/godotengine/godot/pull/53765) - Better compatibility with models that use non-uniform scaling in animations. - Better compatibility with models exported from Maya and 3DS Max. - Easier animation reuse across different models. - Easier procedural generation of animations. #### Buildsystem - New `custom_modules` option to compile external user-provided C++ modules. -
Calinou revised this gist
Nov 20, 2021 . 1 changed file with 0 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -313,10 +313,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed the script editor's "Adaptive" syntax theme to "Default" and "Default" to "Godot 2", for consistency with the editor theme presets. - Flipped the 2D editor icon to match Godot's coordinate handedness. #### GUI - Improved drive letter handling in EditorFileDialog and FileDialog. -
Calinou revised this gist
Nov 20, 2021 . 1 changed file with 39 additions and 7 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -156,7 +156,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Rendering - New Vulkan renderer. - [New OpenGL renderer, using OpenGL 3.3/OpenGL ES 3.0/WebGL 2.0 as a baseline.](https://github.com/godotengine/godot/pull/53150) - Designed to target mobile/web platforms first, but also usable on desktop platforms. - Uses a low-end-friendly approach to maximize performance in simple scenes. - Currently supports 2D rendering only. - OpenGL 3D rendering is planned for a future 4.x release. - Support for specular mapping when using 2D lighting. - [New DirectionalLight2D node for 2D lighting.](https://github.com/godotengine/godot/pull/43297) - CanvasGroup node to modulate several 2D nodes as a group (or apply shaders to them). @@ -169,19 +173,39 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Shadow mapping with improved filtering and PCSS-like penumbra simulation. - Shadow normal offset bias is now implemented to avoid issues with shadow acne or peter-panning. - [New Decal node to project textures onto 3D surfaces.](https://github.com/godotengine/godot/pull/37861) - New fully real-time VoxelGI (formerly GIProbe). - Dynamic lights and emissive can emit GI that's updated every frame (instead of only updating sporadically). - Dynamic objects can receive GI and contribute to it. - [New signed distance field-based global illumination](https://godotengine.org/article/godot-40-gets-sdf-based-real-time-global-illumination) (SDFGI) for open world lighting. - Enabled in the WorldEnvironment. No node required, no baking. - Semi-realtime: dynamic objects can receive GI, but not contribute to it. - [Volumetric fog](https://github.com/godotengine/godot/pull/41213) with optional GI contribution. - [Fog volumes to locally apply volumetric fog (or subtract to global fog using negative density).](https://github.com/godotengine/godot/pull/53353) - More physically accurate exponential fog to replace the old distance-based fog. - New Aerial Scattering property in distance-based fog to fade out to the background sky instead of a fixed color. - Also available in volumetric fog with the Ambient Inject property. - [New GPU-based lightmapper.](https://godotengine.org/article/godot-40-will-get-new-modernized-lightmapper) - When using a dedicated GPU, this results in much faster bake speeds compared to the CPU lightmapper. - Optional support for storing directional lighting information and rough reflections using spherical harmonics. - Improved support for lighting dynamic objects with better performance and quality. - In addition to automatic generation, LightmapProbe nodes can now be placed manually to provide better lighting information for dynamic objects where needed. - [Physical sky material and custom sky shaders](https://godotengine.org/article/custom-sky-shaders-godot-4-0), both supporting real-time updates. - [Global and per-instance shader uniforms.](https://godotengine.org/article/godot-40-gets-global-and-instance-shader-uniforms) - This can be used to better reuse shaders, leading to improved performance. - Support for automatically generating and using mesh LODs to improve performance. - Several LOD levels are generated for imported 3D scenes by default. - LODs are automatically used for mesh rendering using a pixel coverage-based selection algorithm. - Uses the [meshoptimizer](https://github.com/zeux/meshoptimizer) library. - Support for LOD visibility ranges in GeometryInstance3D. - Manually authored LODs can be configured using distance and hysteresis cutoffs. - Can be used for <abbr title="Hierarchical Level of Detail">HLOD</abbr> setups to reduce draw calls while preserving culling opportunities when up close. - [Support for GeometryInstance3D distance fade to make distant meshes disappear smoothly without having to modify their material.](https://github.com/godotengine/godot/pull/54222) - Support for automatically generating and using shadow meshes to improve performance. - The generated shadow meshes are welded aggressively to improve performance with no difference in visual quality. - To further improve performance, hand-made shadow meshes can be specified in the inspector in MeshInstance nodes. - [Support for rendering a viewport's 3D contents at a lower resolution to improve performance](https://github.com/godotengine/godot/pull/51870). - 2D elements remain at full resolution to improve perceived sharpness. - A scaling factor above 1.0 can be used for supersampling, which is useful to maximize quality for offline rendering. - See individual progress reports for more information: [#1](https://godotengine.org/article/vulkan-progress-report-1), [#2](https://godotengine.org/article/vulkan-progress-report-2), @@ -228,6 +252,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Tweaked the output strings to be more human-readable when printing various built-in Variant and Object types. - Renamed File's `endian_swap` property to `big_endian` for consistency with ResourceSaver and StreamPeer. - [Renamed File's `get_len()` method to `get_length()`.](https://github.com/godotengine/godot/pull/49061) - [Renamed Object's `PROPERTY_USAGE_NOEDITOR` to `PROPERTY_USAGE_NO_EDITOR`.](https://github.com/godotengine/godot/pull/54571) - Renamed `Vector2.clamped()` to `Vector2.limit_length()` to differentiate it from the new `Vector2.clamp()`. - Renamed `rand_range()` to `randf_range()` to avoid ambiguity with the new `randi_range()` and make its return type more obvious. - Replaced `Node.add_child_below_node()` with `Node.add_sibling()`. @@ -375,6 +400,13 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Removed the deprecated PhysicsBody `friction` and `bounce` properties (replaced by PhysicsMaterial). #### Rendering - Removed OpenGL ES 2.0 renderer (replaced by the new mobile-oriented OpenGL 3 renderer). - Vulkan, OpenGL 3.3, OpenGL ES 3.0 or WebGL 2.0 support is now required to run Godot. - [Removed support for 16× MSAA due to driver bugs and low performance.](https://github.com/godotengine/godot/pull/49063) - For high-quality offline rendering, using supersampling together with 8× MSAA is a better option anyway. ### Fixed #### Core -
Calinou revised this gist
Nov 19, 2021 . 1 changed file with 13 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -193,6 +193,19 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Shaders - New shader compiler rewritten from scratch. - [Support for uniform arrays (including sampler arrays).](https://github.com/godotengine/godot/pull/49485) - [Arrays can now be passed as function parameters (including arrays of structs).](https://github.com/godotengine/godot/pull/48933) - [The return type of a function can now be an array (including arrays of structs).](https://github.com/godotengine/godot/pull/48933) - [Array size can now be optionally written before the identifier (`int[2] array;` instead of `int array[2]`).](https://github.com/godotengine/godot/pull/53527) - This eases porting shaders from GLSL. - [Array constructors can now be called at any time after initialization.](https://github.com/godotengine/godot/pull/44705) - For example, `int array[3]; array = {1, 2, 3}` is now valid. - [New `fma()` (fused multiply-add) built-in function to optimize shaders in a low-level way.](https://github.com/godotengine/godot/pull/36225) - [New built-in data (un)packing functions to optimize shaders in a low-level way.](https://github.com/godotengine/godot/pull/53066) - Warning system for common issues such as floating-point comparison and unused variables. - Argument names now appear in code completion tooltips. - More information in the [progress report](https://godotengine.org/article/improvements-shaders-visual-shaders-godot-4). - [Add Billboard mode to visual shaders.](https://github.com/godotengine/godot/pull/49157) - [The constants `PI`, `TAU` and `E` are now available in the shader language.](https://github.com/godotengine/godot/pull/48837) -
Calinou revised this gist
Nov 19, 2021 . 1 changed file with 8 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -40,11 +40,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New `Basis.rotate_to_align()` function. - Refactored the BoneAttachment3D node. - Removed the `process_list` functions. - [New GradientTexture2D resource (useful for 2D lights, particles, …)](https://github.com/godotengine/godot/pull/53234). - [Support for gettext PO template generation from scene and script files.](https://github.com/godotengine/godot/pull/39415) - Translation parser plugins can be written to allow extracting strings from custom file types. - [New Time singleton to replace date/time handling methods in the OS singleton.](https://github.com/godotengine/godot/pull/49123) - Includes new methods to handle ISO 8601 timestamp conversion. - [Support for custom performance monitors](https://github.com/godotengine/godot/pull/39302). - New `randi_range()` global scope function to return a random *integer* number within a range. - New `randfn()` global scope function to return a floating-point number along a normal gaussian distribution. - [New `pingpong()` global scope function to return a floating-point number that increments then decrements in a "sawtooth" fashion.](https://github.com/godotengine/godot/pull/46346) - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. - New `Vector3.limit_length()` method as a Vector3 counterpart to `Vector2.limit_length()` (formerly `Vector2.clamped()`). - New PackedArrays to replace PoolArrays. @@ -212,6 +216,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed File's `endian_swap` property to `big_endian` for consistency with ResourceSaver and StreamPeer. - [Renamed File's `get_len()` method to `get_length()`.](https://github.com/godotengine/godot/pull/49061) - Renamed `Vector2.clamped()` to `Vector2.limit_length()` to differentiate it from the new `Vector2.clamp()`. - Renamed `rand_range()` to `randf_range()` to avoid ambiguity with the new `randi_range()` and make its return type more obvious. - Replaced `Node.add_child_below_node()` with `Node.add_sibling()`. - Replaced `Directory.list_dir_begin()`'s `skip_navigational` and `skip_hidden` arguments with `show_navigational` and `show_hidden`. - Both arguments are `false` by default, which means the default behavior is now to exclude both navigational and hidden files from the returned list. @@ -231,7 +236,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - VisibilityNotifier3D -> VisibleOnScreenNotifier3D - VisibilityEnabler2D -> VisibleOnScreenEnabler2D - VisibilityEnabler3D -> VisibleOnScreenEnabler3D - Renamed various resources: - GradientTexture -> GradientTexture1D - Old node and resource names are automatically converted when loading scenes from Godot 3.x. #### Editor -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 11 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -84,10 +84,16 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### GDScript - GDScript was rewritten from scratch with a cleaner approach. - Annotations to replace keywords in certain cases (`@export`, `@onready`, `@rpc()`, `@tool`, `@warning_ignore()`, …). - Typed arrays (`var array_of_nodes: Array[Node]`). Any type can be used, including custom classes. - See individual progress reports for more information: [#1](https://godotengine.org/article/gdscript-progress-report-writing-tokenizer), [#2](https://godotengine.org/article/gdscript-progress-report-writing-new-parser), [#3](https://godotengine.org/article/gdscript-progress-report-type-checking-back). - [New documentation generation system](https://github.com/godotengine/godot/pull/41095). - Comments starting with `##` are considered documentation comments. - Documentation comments be placed before any member variable, constant, enum or function declaration, or at the top of a file. - Documentation comments appear in the editor help and when hovering exported properties in the inspector. #### GUI @@ -189,6 +195,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Miscellaneous - The engine is now unit-tested using [doctest](https://github.com/onqtam/doctest). - [GDScript also now has integration tests.](https://docs.godotengine.org/en/latest/development/cpp/unit_testing.html#integration-tests-for-gdscript) - Switched from Travis CI and AppVeyor to GitHub Actions. - A Fish shell completion file is now available for the Godot editor's command line interface. -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `759fef5401f7898a12cb5efcc50f7ed572e3a3ed` [2020-07-04] and `446460eaf99a34f3a6fd082fb290bf437e877aa9` [2021-05-08] not included) ### Added -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 12 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `759fef5401f7898a12cb5efcc50f7ed572e3a3ed` [2020-07-04] and `446460eaf99a34f3a6fd082fb290bf437e877aa9` not included) ### Added @@ -38,10 +38,13 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The Bone struct now keeps track of its children bones, if it has any. - Added functions to Skeleton3D for getting the forward vector using the information stored in the rest pose for the bones. - New `Basis.rotate_to_align()` function. - Refactored the BoneAttachment3D node. - Removed the `process_list` functions. - [Support for gettext PO template generation from scene and script files.](https://github.com/godotengine/godot/pull/39415) - Translation parser plugins can be written to allow extracting strings from custom file types. - [New Time singleton to replace date/time handling methods in the OS singleton.](https://github.com/godotengine/godot/pull/49123) - Includes new methods to handle ISO 8601 timestamp conversion. - [Support for custom performance monitors](https://github.com/godotengine/godot/pull/39302). - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. - New `Vector3.limit_length()` method as a Vector3 counterpart to `Vector2.limit_length()` (formerly `Vector2.clamped()`). - New PackedArrays to replace PoolArrays. @@ -89,6 +92,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### GUI - Support for multiple windows on desktop platforms. Projects can spawn additional windows, each with their own viewport. - Added `NOTIFICATION_APPLICATION_FOCUS_IN` and `NOTIFICATION_APPLICATION_FOCUS_OUT` notifications for "global" project focus changes (separate from `NOTIFICATION_WM_FOCUS_IN` and `NOTIFICATION_WM_FOCUS_OUT`). - RichTextLabel property `fit_content_height` to make the label's height fit its content automatically (not always reliable). - RichTextLabel's `img` tag now supports an optional `color` attribute to modulate the image. - `get_char_size()` is now exposed in Font, making it usable in DynamicFont rather than being limited to BitmapFont. @@ -281,11 +285,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Physics - Split KinematicBody into the new CharacterBody node and PhysicsBody. - RayCast nodes are now enabled by default. - The `disabled` property was renamed to `enabled` with its behavior inverted. - Renamed PlaneShape to WorldBoundaryShape. #### Rendering - Some Environment settings such as depth of field have been moved to a CameraEffects resource which is assigned to individual Camera nodes. - [The ACES Fitted tonemapping algoirthm is now used in place of the old ACES algorithm.](https://github.com/godotengine/godot/pull/52476) - The old non-fitted ACES tonemapping algorithm was removed. - Quality settings have been moved from individual nodes and resources to the Project Settings for better centralization. - Quality settings now have performance hints in their values' names, such as "Fast" or "Slow". -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 10 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `5f7499beaccc814080001265b902949ea475adfa` and `446460eaf99a34f3a6fd082fb290bf437e877aa9` not included) ### Added @@ -257,6 +257,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed the script editor's "Adaptive" syntax theme to "Default" and "Default" to "Godot 2", for consistency with the editor theme presets. - Flipped the 2D editor icon to match Godot's coordinate handedness. #### Export - **UWP:** Renamed the "Windows Universal" export platform name to "UWP". #### GUI - Improved drive letter handling in EditorFileDialog and FileDialog. @@ -314,6 +318,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Removed the **Dim Dialog on Editor Popup** editor setting since it was made obsolete by the multi-window paradigm. #### GUI - [Removed the ToolButton node in favor of Button.](https://github.com/godotengine/godot/pull/39690) - Existing ToolButton nodes from Godot 3.x projects will be converted to Button nodes. #### Input - Removed the `DisplayServer.get_latin_keyboard_variant()` method (replaced by the more flexible `DisplayServer.keyboard_get_current_layout()`). -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 11 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -29,6 +29,17 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Easier chaining of tweens. - Low-level tweening option to get an interpolated value directly. - *Existing projects will have to be modified to account for this, as automatic conversion isn't feasible.* - [New and improved IK in Skeleton2D](https://github.com/godotengine/godot/pull/40347). - New classes: SkeletonModifier2D, SkeletonModifierStack2D, SkeletonModification2DLookAt, SkeletonModification2DCCDIK, SkeletonModification2DFABRIK, SkeletonModification2DJiggle, SkeletonModification2DTwoBoneIK, PhysicalBone2D, SkeletonModification2DPhysicalBones, SkeletonModification2DStackHolder. - New `Transform2D.looking_at()` function. - [New and improved IK in Skeleton3D](https://github.com/godotengine/godot/pull/39353). - New classes: SkeletonModifier3D, SkeletonModifierStack3D, SkeletonModifier3DLookAt, SkeletonModification3DCCDIK, SkeletonModification3DFABRIK, SkeletonModification3DJiggle, SkeletonModification3DTwoBoneIK, SkeletonModification3DStackHolder. - The Bone struct now includes a local_pose_override. - The Bone struct now keeps track of its children bones, if it has any. - Added functions to Skeleton3D for getting the forward vector using the information stored in the rest pose for the bones. - New `Basis.rotate_to_align()` function. - Refactored the BoneAttachment3D node. - Removed the` process_list` functions. - [New Time singleton to replace date/time handling methods in the OS singleton.](https://github.com/godotengine/godot/pull/49123) - Includes new methods to handle ISO 8601 timestamp conversion. - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. -
Calinou revised this gist
Nov 18, 2021 . 1 changed file with 16 additions and 7 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -8,31 +8,40 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ### Added #### Animation #### Buildsystem - New `custom_modules` option to compile external user-provided C++ modules. - The path should *contain* one or more C++ modules, but scanning isn't recursive beyond that level. - Example: `scons custom_modules="../project/modules"` #### Core - New TileMap and TileSet resources. - New Vector2i, Vector3i and Rect2i types. - These are integer variants of Vector2, Vector3 and Rect2. - Callable type for first-class functions (can be created with lambdas in GDScript). - The Euler rotation order can now be adjusted in Node3D. - [New `Array.map()`, `Array.filter()` and `Array.reduce()` methods that can be used with Callables.](https://github.com/godotengine/godot/pull/38645) - [Rewritten Tween with more functionality](https://github.com/godotengine/godot/pull/41794). - Tween is no longer a node. - Easier chaining of tweens. - Low-level tweening option to get an interpolated value directly. - *Existing projects will have to be modified to account for this, as automatic conversion isn't feasible.* - [New Time singleton to replace date/time handling methods in the OS singleton.](https://github.com/godotengine/godot/pull/49123) - Includes new methods to handle ISO 8601 timestamp conversion. - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. - New `Vector3.limit_length()` method as a Vector3 counterpart to `Vector2.limit_length()` (formerly `Vector2.clamped()`). - New PackedArrays to replace PoolArrays. - 64-bit integer and float arrays are now available in addition to the existing 32-bit ones. - New `ConfigFile.parse(data: String)` method to load a string as if it was a ConfigFile on disk. - New `Image.save_png_to_buffer()` method to save a PNG image to memory as a PackedByteArray (instead of saving to disk). - [New File API to check, read and write symbolic links on macOS and Linux.](https://github.com/godotengine/godot/pull/46866) - [Replaced GDNative with GDExtension](https://godotengine.org/article/introducing-gd-extensions). - Easier setup and compilation for various platforms. - Code structure is more similar to [statically compiled C++ modules](https://docs.godotengine.org/en/stable/development/cpp/custom_modules_in_cpp.html). - Lower performance overhead compared to GDNative. #### Editor @@ -248,6 +257,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Input - Renamed InputEventKey's `scancode` to `keycode`. - Renamed InputMap's `get_action_list()` to `get_action_events()`. #### Networking @@ -291,7 +301,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Editor - Removed the **Dim Dialog on Editor Popup** editor setting since it was made obsolete by the multi-window paradigm. #### Input -
Calinou revised this gist
Oct 2, 2021 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -195,6 +195,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Spatial → Node3D - GIProbe → VoxelGI - BakedLightmap → LightmapGI - Light2D -> PointLight2D - VisibilityNotifier2D -> VisibleOnScreenNotifier2D - VisibilityNotifier3D -> VisibleOnScreenNotifier3D - VisibilityEnabler2D -> VisibleOnScreenEnabler2D -
Calinou revised this gist
Oct 2, 2021 . 1 changed file with 30 additions and 17 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `af3f9a854edef78e751d4fb68df854b1c0cc24c6` and `446460eaf99a34f3a6fd082fb290bf437e877aa9` not included) ### Added @@ -13,13 +13,19 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New TileMap and TileSet resources. - New Vector2i, Vector3i and Rect2i types. - These are integer variants of Vector2, Vector3 and Rect2. - Callable type for first-class functions (can be created with lambdas in GDScript). - [New `Array.map()`, `Array.filter()` and `Array.reduce()` methods that can be used with Callables.](https://github.com/godotengine/godot/pull/38645) - [Rewritten Tween with more functionality](https://github.com/godotengine/godot/pull/41794). - Tween is no longer a node. - Easier chaining of tweens. - Low-level tweening option to get an interpolated value directly. - *Existing projects will have to be modified to account for this, as automatic conversion isn't feasible.* - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. - New `Vector3.limit_length()` method as a Vector3 counterpart to `Vector2.limit_length()` (formerly `Vector2.clamped()`). - New PackedArrays to replace PoolArrays. - 64-bit integer and float arrays are now available in addition to the existing 32-bit ones. - New `ConfigFile.parse(data: String)` method to load a string as if it was a ConfigFile on disk. - New `Image.save_png_to_buffer()` method to save a PNG image to memory as a PackedByteArray (instead of saving to disk). - [New File API to check, read and write symbolic links on macOS and Linux.](https://github.com/godotengine/godot/pull/46866) #### Buildsystem @@ -101,6 +107,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New DisplayServer abstraction, allowing for the creation of multiple windows. - This is used in the editor for detachable docks, but can also be used in projects. - **Android:** [Allow basic user data backup. This can be disabled in the export preset if needed.](https://github.com/godotengine/godot/pull/49069) - **Android:** [Support for changing the mouse cursor shape (no custom images)](https://github.com/godotengine/godot/pull/44201). - **iOS:** [The targeted device family (iPhone, iPad, iPhone and iPad) can now be specified in the export preset.](https://github.com/godotengine/godot/pull/49137) #### Physics @@ -117,17 +124,18 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New Vulkan renderer. - Implemented shader caching to avoid freezes during gameplay. - Support for specular mapping when using 2D lighting. - [New DirectionalLight2D node for 2D lighting.](https://github.com/godotengine/godot/pull/43297) - CanvasGroup node to modulate several 2D nodes as a group (or apply shaders to them). - Support for clipping in CanvasItem, replacing the use of Light2D as masks in a more convenient manner. - [Support for light projectors/"cookies" in OmniLight3D and SpotLight3D.](https://github.com/godotengine/godot/pull/37887) - Only supported for lights with shadows enabled. - 3D lights now have a Size property which can be set to simulate area lights. - This property also affects how fast shadow penumbras will grow over distance. - A shadow blur property is also available to set a constant blurring factor on a per-light basis. - Shadow mapping with improved filtering and PCSS-like penumbra simulation. - Shadow normal offset bias is now implemented to avoid issues with shadow acne or peter-panning. - [New Decal node to project textures onto 3D surfaces.](https://github.com/godotengine/godot/pull/37861) - New fully real-time VoxelGI (ex-GIProbe). - Dynamic objects can receive GI and contribute to it. - [Volumetric fog](https://github.com/godotengine/godot/pull/41213) with optional GI contribution. - Exponential fog to replace the old distance-based fog. @@ -165,13 +173,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Audio - [Increased the default AudioStreamPlayer3D unit size to (1 → 10) to make sounds more audible while setting up the node.](https://github.com/godotengine/godot/pull/38224) - Renamed the audio-related `FFT_Size` enum to `FFTSize` for consistency. #### Core - Tweaked the output strings to be more human-readable when printing various built-in Variant and Object types. - Renamed File's `endian_swap` property to `big_endian` for consistency with ResourceSaver and StreamPeer. - [Renamed File's `get_len()` method to `get_length()`.](https://github.com/godotengine/godot/pull/49061) - Renamed `Vector2.clamped()` to `Vector2.limit_length()` to differentiate it from the new `Vector2.clamp()`. @@ -182,28 +188,37 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed the built-in Transform type to Transform3D. - Renamed Node3D's `translation` property to `position` for consistency with Node2D. - Moved YSort functionality to a Node2D property. - Viewports now use a size of 512×512 by default to make them visible out of the box. - [Screen orientation is now represented as an enum in the Project Settings.](https://github.com/godotengine/godot/pull/48939) - [Renamed 3D nodes to contain an explicit "3D" prefix for clarity and consistency](https://github.com/godotengine/godot/pull/37340). - Renamed various nodes: - Spatial → Node3D - GIProbe → VoxelGI - BakedLightmap → LightmapGI - VisibilityNotifier2D -> VisibleOnScreenNotifier2D - VisibilityNotifier3D -> VisibleOnScreenNotifier3D - VisibilityEnabler2D -> VisibleOnScreenEnabler2D - VisibilityEnabler3D -> VisibleOnScreenEnabler3D - Old node names are automatically converted when loading scenes from Godot 3.x. #### Editor - Renewed the editor theme for a more modern design. - [Increased icon saturation by 30% when using a dark theme.](https://github.com/godotengine/godot/pull/48644) - Icon saturation can now be adjusted in the Editor Settings. - [Improved the audio bus editor appearance.](https://github.com/godotengine/godot/pull/49130) - Improved layout and texts of the Manage Editor Features dialog. - Improved the Video RAM debugger usability. - The Video RAM tab is now refreshed automatically when switching to it. - Hovering layer checkboxes in the inspector now results in visual feedback. - Clicking between two checkboxes will now enable the checkbox that was last highlighted instead of doing nothing. - CSV profiler measures can now be saved anywhere on the filesystem, not just in the project folder. - Improved the 2D zooming algorithm to always visit powers of two (50%, 100%, 200%, …) and avoid floating-point precision issues. - Times are now displayed as milliseconds in the profiler and performance monitors (instead of seconds). - Improved the batch rename dialog usability and design consistency. - Clarified error messages when there are regular expression errors. - Optimized editor icon generation to speed up editor startup. - Script editor autocompletion now displays previews next to color constant suggestions. - The number of replaced results now appears in place of the matches counter when replacing text in the script editor. - Pressing <kbd>Enter</kbd> (or <kbd>Shift + Enter</kbd>) in the script editor replacement dialog now performs a forwards (or backwards) replacement operation. - Pressing <kbd>Ctrl + F</kbd> now focuses the search field in the AssetLib tab. @@ -216,12 +231,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Tweaked Camera2D editor line colors for better visibility. - Light theme presets now use a negative contrast rate by default for a more logical preview of UI elevation. - Increased the use of bold fonts throughout the editor. - Revised icons for the Gradient and GradientTexture resources. - Renamed "Identifier" to "Bundle Identifier" in the macOS and iOS export presets for clarity. - Renamed the script editor's "Adaptive" syntax theme to "Default" and "Default" to "Godot 2", for consistency with the editor theme presets. - Flipped the 2D editor icon to match Godot's coordinate handedness. #### GUI -
Calinou revised this gist
Oct 2, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `af3f9a854edef78e751d4fb68df854b1c0cc24c6` and `139a9d637084f928c3ed43ac6aad2178748ed8e4` not included) ### Added -
Calinou revised this gist
Oct 2, 2021 . 1 changed file with 38 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -19,8 +19,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New PackedArrays to replace PoolArrays. - 64-bit integer and float arrays are now available in addition to the existing 32-bit ones. - `ConfigFile.parse(data: String)` method to load a string as if it was a ConfigFile on disk. - `Image.save_png_to_buffer()` method to save a PNG image to memory as a PackedByteArray (instead of saving to disk). - [New File API to check, read and write symbolic links on macOS and Linux.](https://github.com/godotengine/godot/pull/46866) #### Buildsystem - New `custom_modules` option to compile external user-provided C++ modules. - The path should *contain* one or more C++ modules, but scanning isn't recursive beyond that level. - Example: `scons custom_modules="../project/modules"` #### Editor - New TileMap and TileSet editors with better usability. @@ -39,6 +46,12 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - **macOS:** Support for building Godot with Clang sanitizers. - **HTML5:** [Support for profiling projects exported to HTML5.](https://godotengine.org/article/html5-export-profiling) #### Export - **macOS:** Projects can now optionally be exported to a application bundle contained within a ZIP archive. - Previously, a DMG image was always used when exporting from macOS. - **macOS:** DMG images can now be codesigned after exporting. #### GDScript - GDScript was rewritten from scratch with a cleaner approach. @@ -51,6 +64,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Support for multiple windows on desktop platforms. Projects can spawn additional windows, each with their own viewport. - RichTextLabel property `fit_content_height` to make the label's height fit its content automatically (not always reliable). - RichTextLabel's `img` tag now supports an optional `color` attribute to modulate the image. - `get_char_size()` is now exposed in Font, making it usable in DynamicFont rather than being limited to BitmapFont. - [Tree can now highlight relationship lines for the currently selected item, its parents and direct children.](https://github.com/godotengine/godot/pull/48546) - This is used in the scene tree dock in the editor. @@ -93,6 +108,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - New CharacterBody node to supersede KinematicBody. - Some KinematicBody features were moved to PhysicsBody. #### Porting - **Android:** Clients of the Godot library can now add their own command line arguments. #### Rendering - New Vulkan renderer. @@ -109,12 +128,12 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Shadow normal offset bias is now implemented to avoid issues with shadow acne or peter-panning. - New Decal node to project textures onto 3D surfaces. - New fully real-time GIProbe. - Dynamic objects can receive GI and contribute to it. - [Volumetric fog](https://github.com/godotengine/godot/pull/41213) with optional GI contribution. - Exponential fog to replace the old distance-based fog. - [New signed distance field-based global illumination](https://godotengine.org/article/godot-40-gets-sdf-based-real-time-global-illumination) (SDFGI) for open world lighting. - Enabled in the WorldEnvironment. No node required, no baking. - Semi-realtime: dynamic objects can receive GI, but not contribute to it. - [New GPU-based lightmapper](https://godotengine.org/article/godot-40-will-get-new-modernized-lightmapper) with built-in denoising. - Improved support for dynamic objects with better performance and quality. - Generated UV2s are now cached across reimports. @@ -156,6 +175,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed File's `endian_swap` property to `big_endian` for consistency with ResourceSaver and StreamPeer. - [Renamed File's `get_len()` method to `get_length()`.](https://github.com/godotengine/godot/pull/49061) - Renamed `Vector2.clamped()` to `Vector2.limit_length()` to differentiate it from the new `Vector2.clamp()`. - Replaced `Node.add_child_below_node()` with `Node.add_sibling()`. - Replaced `Directory.list_dir_begin()`'s `skip_navigational` and `skip_hidden` arguments with `show_navigational` and `show_hidden`. - Both arguments are `false` by default, which means the default behavior is now to exclude both navigational and hidden files from the returned list. - Renamed the built-in Quat type to Quaternion. @@ -187,6 +207,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The number of replaced results now appears in place of the matches counter when replacing text in the script editor. - Pressing <kbd>Enter</kbd> (or <kbd>Shift + Enter</kbd>) in the script editor replacement dialog now performs a forwards (or backwards) replacement operation. - Pressing <kbd>Ctrl + F</kbd> now focuses the search field in the AssetLib tab. - Pressing <kbd>G</kbd> now switches to the Pan mode in the 2D editor. - The TileMap editor's Bucket Fill shortcut was moved to <kbd>B</kbd> to cater for this change. - Mouse wheel behavior for zooming in the animation behavior is now inverted. - The Sync Scene Changes and Sync Script Changes settings' values now persist on a per-project basis instead of being always enabled by default. - Various tooltips have been added or modified to clarify the editor operation. - Various visual and formatting changes to the editor help to improve readability and be closer to the online class reference. @@ -202,9 +225,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### GUI - Improved drive letter handling in EditorFileDialog and FileDialog. - Container nodes (except PanelContainer) now use the Pass mouse mode by default. - Pressing the left/right arrows while having selected text will now move the cursor to the beginning/end of the selection in LineEdit (while unselecting the text as usual). - TextEdit's `search()` method now returns a Dictionary instead of a PackedIntArray. - **macOS:** The <kbd>Ctrl + A</kbd> and <kbd>Ctrl + E</kbd> navigation shortcuts now work in LineEdit. #### Input @@ -235,7 +259,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Renamed the `x11` platform to `linuxbsd` to prepare for Wayland support. - The engine is now written in C++17. - Python 3.6 and SCons 3.1 are now required to build Godot from source. ### Removed @@ -265,7 +289,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Removed the deprecated `allow_object_decoding` property from PacketPeer. - Removed the deprecated `sync` and `slave` high-level multiplayer keywords. #### Export - **iOS:** [Remove redundant orientation export setting in favor of the orientation project setting.](https://github.com/godotengine/godot/pull/48939) @@ -278,6 +302,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Core - Fixed UV mapping on CSGSphere. - The positional command line argument now considers `.res` and `.tres` files as runnable scene formats. - This fixes Godot not running the main scene or a custom scene if they were saved with a `.res` or `.tres` extension. - **macOS/Linux:** Fix the result of `Directory.get_space_left()`. - **Windows:** Godot can now kill its own PID using `OS.kill()`. @@ -290,3 +316,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Fixed OptionButton minimum size. - TabContainer is no longer too large when tabs are hidden. - ScrollBar now allows using `scroll_to_line()` when Scroll Active is disabled. - DynamicFont outlines now have antialiasing disabled if it was disabled on the font itself. #### Porting - **Windows:** `OS.execute()` now only quotes command line arguments if they contain special characters. -
Calinou revised this gist
Jun 5, 2021 . 1 changed file with 82 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,27 +4,33 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev, commits between `ad8081216c73b8a0ace555eeb96c1d4fbcb3e50e` and `139a9d637084f928c3ed43ac6aad2178748ed8e4` not included) ### Added #### Core - New TileMap and TileSet resources. - New Vector2i, Vector3i and Rect2i types. - These are integer variants of Vector2, Vector3 and Rect2. - Rect2 can now be interpolated using the Tween node. - Vectors and Colors can now be clamped between two values their respective `clamp()` methods. - New `Vector3.limit_length()` method as a Vector3 counterpart to `Vector2.limit_length()` (formerly `Vector2.clamped()`). - New PackedArrays to replace PoolArrays. - 64-bit integer and float arrays are now available in addition to the existing 32-bit ones. - `ConfigFile.parse(data: String)` method to load a string as if it was a ConfigFile on disk. - [New File API to check, read and write symbolic links on macOS and Linux.](https://github.com/godotengine/godot/pull/46866) #### Editor - New TileMap and TileSet editors with better usability. - Support for multiple windows. - Docks can be moved out of the main window into separate windows. - Single-window mode can be enabled in the Editor Settings to revert to the old behavior. - New dynamic infinite 3D grid, replacing the fixed 3D grid. - Movement and scaling handles in the 2D editor (similar to the 3D editor). - New Replace in Files dialog in the script editor to complement Find in Files. - Holding down <kbd>Ctrl</kbd> while drag-and-dropping a resource from the FileSystem dock to the script editor will now add `preload()` to the pasted resource path. - New settings to change the freelook navigation scheme: - Default. - Partially axis-locked (similar to id Tech and Source's noclip modes). The Up and Down keys won't take the current view pitch into account. @@ -45,6 +51,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Support for multiple windows on desktop platforms. Projects can spawn additional windows, each with their own viewport. - RichTextLabel property `fit_content_height` to make the label's height fit its content automatically (not always reliable). - [Tree can now highlight relationship lines for the currently selected item, its parents and direct children.](https://github.com/godotengine/godot/pull/48546) - This is used in the scene tree dock in the editor. #### Import @@ -55,6 +63,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Support for physical (keyboard layout-independent) key codes. - This can be used to provide <kbd>W</kbd>/<kbd>A</kbd>/<kbd>S</kbd>/<kbd>D</kbd> controls that work on any keyboard layout. - `DisplayServer.keyboard_get_current_layout()` and `DisplayServer.keyboard_get_layout_*()` methods to get information about keyboard layouts. - New `Input.MOUSE_MODE_CONFINED_HIDDEN` mouse mode to combine the confined and hidden mouse modes. #### Mono/C# @@ -70,18 +79,36 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Networking - [Support for DTLS encryption in UDP and ENet.](https://godotengine.org/article/enet-dtls-encryption) - Support for multiple address resolution in DNS requests (like in Godot 2.1). #### Porting - New DisplayServer abstraction, allowing for the creation of multiple windows. - This is used in the editor for detachable docks, but can also be used in projects. - **Android:** [Allow basic user data backup. This can be disabled in the export preset if needed.](https://github.com/godotengine/godot/pull/49069) - **iOS:** [The targeted device family (iPhone, iPad, iPhone and iPad) can now be specified in the export preset.](https://github.com/godotengine/godot/pull/49137) #### Physics - New CharacterBody node to supersede KinematicBody. - Some KinematicBody features were moved to PhysicsBody. #### Rendering - New Vulkan renderer. - Implemented shader caching to avoid freezes during gameplay. - Support for specular mapping when using 2D lighting. - CanvasGroup node to modulate several 2D nodes as a group (or apply shaders to them). - Support for clipping in CanvasItem, replacing the use of Light2D as masks in a more convenient manner. - Support for light projectors/"cookies" in OmniLight3D and SpotLight3D. - Only supported for lights with shadows enabled. - 3D lights now have a Size property which can be set to simulate area lights. - This property also affects how fast shadow penumbras will grow over distance. - A shadow blur property is also available to set a constant blurring factor on a per-light basis. - Shadow mapping with improved filtering and PCSS-like penumbra simulation. - Shadow normal offset bias is now implemented to avoid issues with shadow acne or peter-panning. - New Decal node to project textures onto 3D surfaces. - New fully real-time GIProbe. - Support for anisotropy to reduce leaks (at the cost of performance, disabled by default). - Dynamic objects can receive GI and contribute to it. - [Volumetric fog](https://github.com/godotengine/godot/pull/41213) with optional GI contribution. @@ -103,6 +130,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). [#6](https://godotengine.org/article/vulkan-progress-report-6), [#7](https://godotengine.org/article/vulkan-progress-report-7). #### Shaders - [Add Billboard mode to visual shaders.](https://github.com/godotengine/godot/pull/49157) - [The constants `PI`, `TAU` and `E` are now available in the shader language.](https://github.com/godotengine/godot/pull/48837) #### Miscellaneous - The engine is now unit-tested using [doctest](https://github.com/onqtam/doctest). @@ -111,15 +143,35 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ### Changed #### Audio - [Increased the default AudioStreamPlayer3D unit size to (1 → 10) to make sounds more audible while setting up the node.](https://github.com/godotengine/godot/pull/38224) #### Core - Increased the maximum number of OpenSimplexNoise octaves (6 → 9). - Running a project from a debug build will now append ` (DEBUG)` to the window title. - This is to ensure the implications of running from a debug build (such as lower performance) are well-understood. - The window title can be set manually to remove this suffix. - Renamed File's `endian_swap` property to `big_endian` for consistency with ResourceSaver and StreamPeer. - [Renamed File's `get_len()` method to `get_length()`.](https://github.com/godotengine/godot/pull/49061) - Renamed `Vector2.clamped()` to `Vector2.limit_length()` to differentiate it from the new `Vector2.clamp()`. - Replaced `Directory.list_dir_begin()`'s `skip_navigational` and `skip_hidden` arguments with `show_navigational` and `show_hidden`. - Both arguments are `false` by default, which means the default behavior is now to exclude both navigational and hidden files from the returned list. - Renamed the built-in Quat type to Quaternion. - Renamed the built-in Transform type to Transform3D. - Renamed Node3D's `translation` property to `position` for consistency with Node2D. - Moved YSort functionality to a Node2D property. - [Screen orientation is now represented as an enum in the Project Settings.](https://github.com/godotengine/godot/pull/48939) #### Editor - Renewed the editor theme for a more modern design. - [Increased icon saturation by 30% when using a dark theme.](https://github.com/godotengine/godot/pull/48644) - Icon saturation can now be adjusted in the Editor Settings. - Revamped the export template manager for better usability. - [Improved the audio bus editor appearance.](https://github.com/godotengine/godot/pull/49130) - Improved layout and texts of the Manage Editor Features dialog. - Improved the Video RAM debugger usability. - The Video RAM tab is now refreshed automatically when switching to it. - Hovering layer checkboxes in the inspector now results in visual feedback. @@ -138,7 +190,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The Sync Scene Changes and Sync Script Changes settings' values now persist on a per-project basis instead of being always enabled by default. - Various tooltips have been added or modified to clarify the editor operation. - Various visual and formatting changes to the editor help to improve readability and be closer to the online class reference. - Tweaked Camera2D editor line colors for better visibility. - Light theme presets now use a negative contrast rate by default for a more logical preview of UI elevation. - Increased the use of bold fonts throughout the editor. - Tweaked the pressed CheckBox and CheckButton icons for better visibility. - Revised icons for the Gradient and GradientTexture resources. - Renamed "Identifier" to "Bundle Identifier" in the macOS and iOS export presets for clarity. - Renamed "Projects" to "Local Projects" and "Templates" to "Asset Library Projects" in the project manager for clarity. - Renamed the script editor's "Adaptive" syntax theme to "Default" and "Default" to "Godot 2", for consistency with the editor theme presets. - Flipped the 2D editor icon to match Godot's handedness. #### GUI @@ -157,6 +217,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Physics - Split KinematicBody into the new CharacterBody node and PhysicsBody. - Renamed PlaneShape to WorldMarginShape. #### Rendering @@ -165,6 +226,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Quality settings have been moved from individual nodes and resources to the Project Settings for better centralization. - Quality settings now have performance hints in their values' names, such as "Fast" or "Slow". #### Shaders - Renamed the `.shader` file extension to `.gdshader`. - Existing text-based shader files will have to be renamed before loading the project in a new engine version. #### Miscellaneous - Renamed the `x11` platform to `linuxbsd` to prepare for Wayland support. @@ -173,8 +239,13 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ### Removed #### Buildsystem - Removed the `server` platform in favor of disabling specific DisplayServers at build-time (e.g. `vulkan=no`). #### Core - Removed the YSort node in favor of the Node2D YSort property. - Removed the deprecated `Color.gray()` method. - Use `Color.v()` for a better grayscale approximation instead. - Removed built-in HQ2X implementation (used for crude hiDPI support in the default project theme). @@ -183,16 +254,21 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Editor - Camera3D nodes no longer have a gizmo billboard icon as it could confuse people due to their constant orientation. - Removed the **Dim Dialog on Editor Popup** editor setting since it was made obsolete by the multi-window paradigm. #### Input - Removed the `DisplayServer.get_latin_keyboard_variant()` method (replaced by the more flexible `DisplayServer.keyboard_get_current_layout()`). #### Networking - Removed the deprecated `allow_object_decoding` property from PacketPeer. - Removed the deprecated `sync` and `slave` high-level multiplayer keywords. #### Porting - **iOS:** [Remove redundant orientation export setting in favor of the orientation project setting.](https://github.com/godotengine/godot/pull/48939) #### Physics - Removed the deprecated PhysicsBody `friction` and `bounce` properties (replaced by PhysicsMaterial). @@ -201,6 +277,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). #### Core - Fixed UV mapping on CSGSphere. - **macOS/Linux:** Fix the result of `Directory.get_space_left()`. - **Windows:** Godot can now kill its own PID using `OS.kill()`. #### Editor -
Calinou revised this gist
Dec 8, 2020 . No changes.There are no files selected for viewing
-
Calinou revised this gist
Sep 26, 2020 . 1 changed file with 172 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,40 +4,210 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev at commit `ad8081216c73b8a0ace555eeb96c1d4fbcb3e50e`) ### Added #### Core - New Vector2i, Vector3i and Rect2i types. - These are integer variants of Vector2, Vector3 and Rect2. - Rect2 can now be interpolated using the Tween node. - New PackedArrays to replace PoolArrays. - 64-bit integer and float arrays are now available in addition to the existing 32-bit ones. - `ConfigFile.parse(data: String)` method to load a string as if it was a ConfigFile on disk. #### Editor - Support for multiple windows. - Docks can be moved out of the main window into separate windows. - Single-window mode can be enabled in the Editor Settings to revert to the old behavior. - New dynamic infinite 3D grid, replacing the fixed 3D grid. - Movement and scaling handles in the 2D editor (similar to the 3D editor). - New Replace in Files dialog in the script editor to complement Find in Files. - New settings to change the freelook navigation scheme: - Default. - Partially axis-locked (similar to id Tech and Source's noclip modes). The Up and Down keys won't take the current view pitch into account. - Fully axis-locked (similar to Minecraft). The Forward, Backward, Up and Down keys won't take the current view pitch into account. - **macOS:** More built-in mouse cursors are now exposed (such as diagonal resize cursors). - **macOS:** Support for building Godot with Clang sanitizers. - **HTML5:** [Support for profiling projects exported to HTML5.](https://godotengine.org/article/html5-export-profiling) #### GDScript - GDScript was rewritten from scratch with a cleaner approach. - See individual progress reports for more information: [#1](https://godotengine.org/article/gdscript-progress-report-writing-tokenizer), [#2](https://godotengine.org/article/gdscript-progress-report-writing-new-parser), [#3](https://godotengine.org/article/gdscript-progress-report-type-checking-back). #### GUI - Support for multiple windows on desktop platforms. Projects can spawn additional windows, each with their own viewport. - RichTextLabel property `fit_content_height` to make the label's height fit its content automatically (not always reliable). #### Import - Support for importing lights from glTF scenes. #### Input - Support for physical (keyboard layout-independent) key codes. - This can be used to provide <kbd>W</kbd>/<kbd>A</kbd>/<kbd>S</kbd>/<kbd>D</kbd> controls that work on any keyboard layout. - `DisplayServer.keyboard_get_current_layout()` and `DisplayServer.keyboard_get_layout_*()` methods to get information about keyboard layouts. #### Mono/C# - Support for exporting C# projects to iOS and HTML5. - [C# events can now be used to implement Godot signals](https://godotengine.org/article/csharp-ios-signals-events). - [New Visual Studio and Visual Studio Code add-ons.](https://godotengine.org/article/csharp-vs-and-vscode) #### Navigation - [New NavigationServer.](https://godotengine.org/article/navigation-server-godot-4-0) - Support for dynamic obstacle avoidance. #### Networking - [Support for DTLS encryption in UDP and ENet.](https://godotengine.org/article/enet-dtls-encryption) #### Rendering - New Vulkan renderer. - Specular mapping in 2D. - Support for light projectors/"cookies" in OmniLight3D and SpotLight3D. - Only supported for lights with shadows enabled. - 3D lights now have a Size property which can be set to simulate area lights. - This property also affects how fast shadow penumbras will grow over distance. - A shadow blur property is also available to set a constant blurring factor on a per-light basis. - Shadow mapping with improved filtering and PCSS-like penumbra simulation. - New, fully real-time GIProbe. - Support for anisotropy to reduce leaks (at the cost of performance, disabled by default). - Dynamic objects can receive GI and contribute to it. - [Volumetric fog](https://github.com/godotengine/godot/pull/41213) with optional GI contribution. - Exponential fog to replace the old distance-based fog. - [New signed distance field-based global illumination](https://godotengine.org/article/godot-40-gets-sdf-based-real-time-global-illumination) for open world lighting. - Dynamic objects can receive GI, but not contribute to it. - [New GPU-based lightmapper](https://godotengine.org/article/godot-40-will-get-new-modernized-lightmapper) with built-in denoising. - Improved support for dynamic objects with better performance and quality. - Generated UV2s are now cached across reimports. - [Physical sky material and custom sky shaders](https://godotengine.org/article/custom-sky-shaders-godot-4-0), both supporting real-time updates. - [Global and per-instance shader uniforms.](https://godotengine.org/article/godot-40-gets-global-and-instance-shader-uniforms) - This can be used to better reuse shaders, leading to improved performance. - See individual progress reports for more information: [#1](https://godotengine.org/article/vulkan-progress-report-1), [#2](https://godotengine.org/article/vulkan-progress-report-2), [#3](https://godotengine.org/article/vulkan-progress-report-3), [#4](https://godotengine.org/article/vulkan-progress-report-4), [#5](https://godotengine.org/article/vulkan-progress-report-5), [#6](https://godotengine.org/article/vulkan-progress-report-6), [#7](https://godotengine.org/article/vulkan-progress-report-7). #### Miscellaneous - The engine is now unit-tested using [doctest](https://github.com/onqtam/doctest). - Switched from Travis CI and AppVeyor to GitHub Actions. - A Fish shell completion file is now available for the Godot editor's command line interface. ### Changed #### Core - Increased the maximum number of OpenSimplexNoise octaves (6 → 9). - Running a project from a debug build will now append ` (DEBUG)` to the window title. - This is to ensure the implications of running from a debug build (such as lower performance) are well-understood. - The window title can be set manually to remove this suffix. #### Editor - Improved the Video RAM debugger usability. - The Video RAM tab is now refreshed automatically when switching to it. - Hovering layer checkboxes in the inspector now results in visual feedback. - Clicking between two checkboxes will now enable the checkbox that was last highlighted instead of doing nothing. - Leaving freelook mode will now restore the mouse to the position it was before entering freelook mode. - The crosshair was removed as a result of this change. - CSV profiler measures can now be saved anywhere on the filesystem, not just in the project folder. - Improved the 2D zooming algorithm to always visit powers of two (50%, 100%, 200%, …) and avoid floating-point precision issues. - Times are now displayed as milliseconds in the profiler and performance monitors (instead of seconds). - Improved the batch rename dialog usability and design consistency. - Clarified error messages when there are regular expression errors. - Optimized editor icon generation to speed up editor startup. - The number of replaced results now appears in place of the matches counter when replacing text in the script editor. - Pressing <kbd>Enter</kbd> (or <kbd>Shift + Enter</kbd>) in the script editor replacement dialog now performs a forwards (or backwards) replacement operation. - Pressing <kbd>Ctrl + F</kbd> now focuses the search field in the AssetLib tab. - The Sync Scene Changes and Sync Script Changes settings' values now persist on a per-project basis instead of being always enabled by default. - Various tooltips have been added or modified to clarify the editor operation. - Various visual and formatting changes to the editor help to improve readability and be closer to the online class reference. - Renamed "Identifier" to "Bundle Identifier" in the macOS and iOS export presets for clarity. #### GUI - Improve drive letter handling in EditorFileDialog and FileDialog. - Container nodes (except PanelContainer) now use the Pass mouse mode by default. - Pressing the left/right arrows while having selected text will now move the cursor to the beginning/end of the selection in LineEdit (while unselecting the text as usual). - **macOS:** The <kbd>Ctrl + A</kbd> and <kbd>Ctrl + E</kbd> navigation shortcuts now work in LineEdit. #### Input - Renamed InputEventKey's `scancode` to `keycode`. #### Networking - Optimized bandwidth usage in the high-level multiplayer API. #### Physics - Renamed PlaneShape to WorldMarginShape. #### Rendering - Some Environment settings such as depth of field have been moved to a CameraEffects resource which is assigned to individual Camera nodes. - Quality settings have been moved from individual nodes and resources to the Project Settings for better centralization. - Quality settings now have performance hints in their values' names, such as "Fast" or "Slow". #### Miscellaneous - Renamed the `x11` platform to `linuxbsd` to prepare for Wayland support. - The engine is now written in C++17. - Python 3 and SCons 3.1 are now required to build Godot from source. ### Removed #### Core - Removed the deprecated `Color.gray()` method. - Use `Color.v()` for a better grayscale approximation instead. - Removed built-in HQ2X implementation (used for crude hiDPI support in the default project theme). - This helps with binary size as HQ2X is made of particularly large functions. #### Editor - Camera3D nodes no longer have a gizmo billboard icon as it could confuse people due to their constant orientation. #### Input - `DisplayServer.get_latin_keyboard_variant()` method (replaced by the more flexible `DisplayServer.keyboard_get_current_layout()`). #### Networking - Removed the deprecated `allow_object_decoding` property from PacketPeer. - Removed the deprecated `sync` and `slave` high-level multiplayer keywords. #### Physics - Removed the deprecated PhysicsBody `friction` and `bounce` properties (replaced by PhysicsMaterial). ### Fixed #### Core - **Windows:** Godot can now kill its own PID using `OS.kill()`. #### Editor - The Android exporter no longer reports progress on each file, greatly speeding up the exporting process. - Searching with the Whole Words option enabled in the script editor is no longer exceedingly slow. #### GUI - Fixed OptionButton minimum size. -
Calinou revised this gist
May 10, 2020 . 1 changed file with 27 additions and 708 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,722 +4,41 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (4.0-dev at commit `8f838f33b`) ### Added #### Editor - **macOS:** More built-in mouse cursors are now exposed (such as diagonal resize cursors). - **macOS:** Support for building Godot with Clang sanitizers. #### Rendering - Vulkan renderer. ### Changed #### Core - Increased the maximum number of OpenSimplexNoise octaves (6 → 9). #### Editor - Improved the Video RAM debugger usability. - The Video RAM tab is now refreshed automatically when switching to it. - CSV profiler measures can now be saved anywhere on the filesystem, not just in the project folder. - Times are now displayed as milliseconds in the profiler and performance monitors (instead of seconds). - Improved the batch rename dialog usability and design consistency. - Clarified error messages when there are regular expression errors. - Optimized editor icon generation to speed up editor startup. - The number of replaced results now appears in place of the matches counter when replacing text in the script editor. ### Removed ### Fixed #### GUI - Fixed OptionButton minimum size. - TabContainer is no longer too large when tabs are hidden. -
Calinou revised this gist
Jan 21, 2020 . 1 changed file with 47 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (3.2-dev at commit `d4ac0ca15`) ### Added @@ -71,6 +71,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Navigation gizmos are now updated after every new bake. - Support for skinning in 3D skeletons. - CameraServer singleton to retrieve images from mobile cameras or webcams as textures. - A crosshair is now displayed when using freelook in the 3D editor. - Project camera override button at the top of the 2D and 3D editors. - When enabled, the editor viewport's camera will be replicated in the running project. - RichTextLabel can now be extended with real-time effects and custom BBCodes. @@ -112,6 +113,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Support for `switch` statements in the shader language. - Support for `do {...} while (...)` loops in the shader language. - Unlike `while`, the expression in the `do` block will always be run at least once. - Support for hexadecimal number literals in the shader language. - Ported several GLES3 shader functions such as `round()` to GLES2. - `SHADOW_VEC` shader parameter to alter 2D shadow computations in custom shaders. - Filter search box in the remote scene tree dock. @@ -161,6 +163,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `FRUSTUM` 3D camera mode to create tilted frustums for mirror or portal effects. - `Camera.project_position()` now accepts an optional `depth` parameter. - `CanvasItem.draw_rect()` now has `width` and `antialiased` properties to match `draw_line()`'s functionality. - `Engine.get_idle_frames()` and `Engine.get_physics_frames()` to get the number of idle and physics frame iterations since the project started. - Unlike `Engine.get_frames_drawn()`, `Engine.get_idle_frames()` will be incremented even if the render loop is disabled. - `Engine.get_physics_interpolation_fraction()` to get the fraction through the current physics tick at the time of the current frame. - This can be used to implement fixed timestep interpolation. - Support for shadow-to-opacity in 3D to render shadows in augmented reality contexts. @@ -189,12 +193,14 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `Font.get_wordwrap_string_size()` method to return the rectangle size needed to draw a word-wrapped text. - `Camera.get_camera_rid()` method to retrieve a Camera's RID. - `Array.slice()` method to duplicate a subset of an Array and return it. - The GraphEdit box selection colors can now be changed by tweaking the `selection_fill` and `selection_stroke` theme items. - Toggleable HSV mode for ColorPicker. - ColorPicker properties to toggle the visibility and editability of presets. - The default ColorPicker mode (RGB, HSV, RAW) can now be changed in the Editor Settings. - ColorPicker now displays an indicator to denote "overbright" colors (which can't be displayed as-is in the preview). - Hovering a Color property in the editor inspector now displays a tooltip with the exact values. - `Color.transparent` constant (equivalent to `Color(1, 1, 1, 0)`). - `KinematicBody.get_floor_normal()` and `KinematicBody2D.get_floor_normal()` to retrieve the collided floor's normal. - `VehicleWheel.get_rpm()` method to retrieve a vehicle wheel's rotations per minute. - Per-wheel throttle, brake and steering in VehicleBody. - `GeometryInstance.set_custom_aabb()` to set a custom bounding box (used for view frustum culling). @@ -203,14 +209,21 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `Mesh.get_aabb()` is now exposed to scripting. - `PhysicalBone.apply_impulse()` and `PhysicalBone.apply_central_impulse()` methods to push ragdolls around. - `ProjectSettings.load_resource_pack()` now features an optional `replace_files` argument (defaulting to `true`), which controls whether the loaded resource pack can override existing files in the virtual filesystem. - `SpinBox.apply()` method to evaluate and apply the expression in the SpinBox's value immediately. - `ConfigFile.erase_section_key()` method to remove a single key from a ConfigFile. - `OS.execute()` now returns the process' exit code when blocking mode is enabled. - `OS.is_window_focused()` method that returns `true` if the window is currently focused. - Tracking the focus state manually using `NOTIFICATION_WM_FOCUS_IN` and `NOTIFICATION_WM_FOCUS_OUT` is no longer needed to achieve this. - `OS.low_processor_mode_sleep_usec` is now exposed as a property. - This makes it possible to change its value at runtime, rather than just defining it once in the Project Settings. - `SceneTree.quit()` now accepts an optional argument with an exit code. - If set to a value greater than or equal to 0, it will override the `OS.exit_code` property. - `VisualServer.get_video_adapter_name()` and `VisualServer.get_video_adapter_vendor()` methods to retreive the user's graphics card model and vendor. - `VisualServer.multimesh_create()` is now exposed to scripting. - Ability to override how scripted objects are converted to strings by defining a `_to_string()` method. - Export hints for 2D and 3D physics/render layers. - Editor plugins can now add new tabs to the Project Settings. - Standalone ternary expression warning in GDScript. - Variable shadowing warning in GDScript. - Will be displayed if: - a block variable shadows a member variable, @@ -318,6 +331,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Reimplemented support for embedding project data in the PCK file. - Ability to take editor screenshots by pressing <kbd>Ctrl + F12</kbd>. - Editor plugins can now set the current active editor as well as toggle the distraction-free mode. - **Android:** [Support for adaptive icons.](https://docs.godotengine.org/en/latest/getting_started/workflow/export/exporting_for_android.html#providing-launcher-icons) - All icon densities are now generated automatically by the exporter. - Only 3 images now need to be supplied to support all icon formats and densities (legacy icon, adaptive foreground, adaptive background). - **Android:** Support for the Oculus Mobile SDK. - **Android:** Support for requesting permissions at runtime. - **Android:** `NOTIFICATION_APP_PAUSED` and `NOTIFICATION_APP_RESUMED` notifications are now emitted when the app is paused and resumed. @@ -342,6 +358,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - **macOS:** Support for modifying global and dock menus. - **macOS:** Improved support for code signing when exporting projects. - **macOS:** Support for defining camera and microphone usage descriptions when exporting a project. - **macOS/X11:** [A zsh completion file for the editor is now available.](https://github.com/godotengine/godot/blob/master/misc/dist/shell/_godot.zsh-completion) - **X11:** The instance PID is now set as the `_NET_WM_PID` window attribute, so that external programs can easily access it. - **Mono:** Support for exporting to Android and HTML5. - **Mono:** Support for using Rider as an external editor. @@ -355,17 +372,20 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ### Changed - Tween and Timer now display an error message if they are started without being added to the scene tree first. - Tweaked Timer's wait time property hint to allow values with 3 decimals and above 4096. - Functions called from a signal can no longer disconnect the node from the signal they're connected to (unless using `call_deferred()`). - Tabs and space indentation can no longer be mixed in the same GDScript file. - Each file must now use only tabs or spaces for indentation (not both). - The "Trim" and "Normalize" WAV import options are now disabled by default. - This makes the default behavior more consistent with Ogg import. - Ogg samples now have an icon in the editor, like WAV samples. - Camera2D drag margins are now disabled by default. - If porting a project from Godot 3.1 where drag margins were used, these must be enabled manually again. - `Camera.project_position()` now requires a second `depth` argument to determine the distance of the point from the camera. - To get the old behavior back, pass the Camera's `near` property value as the second argument. - `Skeleton.set_bone_global_pose()` was replaced by `Skeleton.set_bone_global_pose_override()`. - UDP broadcasting is now disabled by default and must be enabled by calling `set_broadcast_enabled(true)` on the PacketPeerUDP instance. - The editor and project manager now open slightly faster. - Improved the Project Manager user interface. - New, simpler design with more space available for the project list. - Improved reporting of missing projects. @@ -381,6 +401,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The animation was also removed as it made the editor feel sluggish at lower FPS. - Several editor menus have been reorganized for consistency and conciseness. - Undo/Redo now supports more actions throughout the editor. - Increased the height of the ItemList editor popup. - This makes it easier to edit large amounts of items. - Opening a folder in FileDialog will now scroll back to the top. - Folder icons in FileDialog can now be displayed with a different color using the `folder_icon_modulate` constant, making them easier to distinguish from files. - Folder icons in editor file dialogs are now tinted with the accent color. @@ -421,6 +443,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - It can be enabled again in the Editor Settings. - The "Update Always" option is now editor-wide instead of being project-specific. - ColorPicker, OptionButton and MenuButton now use toggle mode, making them appear pressed when clicked. - The ColorPicker preview was moved below the picker area to be closer to the sliders. - Increased the Light2D height range from -100..100 to -2048..2048. - Lower and higher values can be entered manually too. - Decreased the `rotation_degrees` range in various nodes to -360..360 to be easier to adjust using the slider. @@ -430,12 +453,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - SpinBoxes now calculate the entered value using the Expression class. - For example, writing `2 + 2` in a SpinBox then pressing Enter will result in `4`. - Saved resources no longer contain dependency indices and metadata such as node folding, resulting in more VCS-friendly files. - The script editor's line length guideline is now enabled by default. - The script editor state (such as breakpoints or the current line) is now preserved across editor sessions. - The script editor's "Auto Brace Complete" setting is now enabled by default. - The scripts panel toggle button is now located at the bottom-left of the script editor (instead of the File menu). - Editor plugins can now be enabled without having an init script defined. - Custom nodes added by plugins now have a translucent script icon in the scene tree dock. - `EditorInterface.get_current_path()` to get the full path currently displayed in the FileSystem dock in an editor plugin. - Copy constructors are now allowed for built-in types in GDScript. - This allows constructs such as `Vector2(Vector2(12, 34))`, which may be useful to simplify code in some cases. - `weakref(null)` is now allowed in GDScript. - This makes checking for a valid reference more concise, as `if my_ref.get_ref()` is now sufficient (no need for `if my_ref and my_ref.get_ref()`). - The number of signal connections and groups is now displayed in a tooltip when hovering the associated buttons in the scene tree dock. @@ -444,6 +470,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The middle mouse button can still be used to pan in the 2D editor. - Zooming is now allowed while panning in the 2D editor. - When the "Scroll To Pan" editor setting is enabled, the 2D editor can now be zoomed in by holding <kbd>Ctrl</kbd> and scrolling the mouse wheel. - Zoom percentages in the 2D editor are now relative to the editor scale if the editor scale is higher than 100%. - The 2D editor now displays the current zoom percentage. - The zoom percentage can be clicked to reset the zoom level to 100%. - Improved sorting options in the Asset Library. @@ -498,6 +525,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Improved dialogs when saving or removing an editor layout. - Whitespace-only selections no longer cause the script editor to highlight all occurrences. - Saving a script will now add a newline at the end of file if none was present already. - Reorganized sections in the editor help to be in a more logical order. - The editor help now uses horizontal margins if the screen is wide enough. - This makes sure lines keep a reasonable length for better readability. - Increased line spacing in the editor help and asset library descriptions. @@ -516,6 +544,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Increased the maximum snapping height (10 → 20). - Increased the maximum snapping tolerance (0.1 → 0.2). - 2D/3D selections, rotations and selected texts are now highlighted with the editor theme's accent color. - 3D light gizmos are now tinted using the light's color, making navigation easier while using the unshaded display mode. - Improved the 3D light and AudioStreamPlayer3D gizmos to better represent their depth in the 3D world. - Tweaked the 3D manipulator gizmo's colors for better visibility. - Tweaked the 2D and 3D axis colors for consistency with gizmo colors. @@ -541,6 +570,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - All platforms now use the `custom_template` property in each export preset to store the path to the custom export template (instead of `custom_package` for some platforms). - Tween methods' `trans_type` and `ease_type` arguments are now optional, defaulting to `TRANS_LINEAR` and `EASE_IN_OUT` respectively. - `PCKPacker.pck_start()` and `PCKPacker.flush()`'s `alignment` and `verbose` arguments (respectively) are now optional, defaulting to `0` and `false`. - Exported PCK files now contain the Godot patch version in their header. - This can be used by external tools to detect the Godot version more accurately. - Exporting a project PCK or ZIP from the command line must now be done with the new `--export-pack` command-line argument. - This was done to remove the ambiguity when exporting a project to macOS from the command line. - Updated FreeType to 2.10, which changes how font metrics are calculated. @@ -581,6 +612,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Larger data types can now be constructed by swizzling in the shader language. - For instance, `vec2 test2 = vec2(0.0, 1.0); vec3 test3 = test2.xxx;` now works as in GLSL. - The `AMBIENT_LIGHT_DISABLED` and `SHADOWS_DISABLED` flags now work when using the GLES2 renderer. - The Keep background mode now works when using the GLES2 renderer. - Several fixes to the GLES2 renderer: - Fixed transparency order. - Fixed vertex lighting being too bright. @@ -592,6 +624,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - This prevents linking issues on some Android devices. - Negative OmniLights and SpotLights now work as expected. - The 3D editor's View Information pane now displays statistics correctly when using the GLES2 renderer. - Textures compressed with ETC now support transparency by falling back to RGBA4444 or LA8. - Alternate display modes are now marked as disabled in the editor when using the GLES2 renderer, as these are only supported when using GLES3. - Fixed several inconsistencies between Particles and CPUParticles. - Fixed particles scale randomization. - Particles are now set to emit correctly when restarting. @@ -619,6 +653,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Fixed multichannel panning for AudioStreamPlayer3D. - Opening a recent built-in script will now load the associated scene automtaically since doing so is required to edit the script. - Declaring a class with `class_name` that has the same name as a singleton will now display a clearer error message. - `script` is no longer allowed as a member variable name in GDScript, as that conflicts with the internal `script` property used by Object. - Assigning a variable with a function index will no longer evaluate the function twice. - For instance, doing `a[function()] += 1` will no longer evaluate `function()` twice. - If the function has side effects, this may change the resulting program behavior. - GDScript type checks are now enabled in release export templates. - The Label font shadow now draws the font outline as well (if the base font has one). - `Font.draw_char()` now draws the font outline as well (if the base font has one). - The editor no longer redraws continuously when selecting a Control in a Container. @@ -649,7 +688,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Subsequent connections will be dropped immediately to avoid locking. - Large rotation offset/snap values no longer appear to be cut off in the Configure Snap dialog. - Documentation tooltips in the editor now wrap to multiple lines correctly. - Locked 3D nodes are no longer selectable in the 3D viewport, matching the 2D editor's behavior. - All 3D gizmos now notify changes correctly, which means the inspector now displays up-to-date properties after using them. - The 3D manipulator gizmo's size is now capped at low viewport heights, preventing it from outgrowing the viewport's bounds. - The editor filesystem now refreshes on file changes if the project is located on an exFAT filesystem. @@ -662,8 +701,14 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Text resources no longer contain an extraneous line break at the end of file. - Transform's `FLIP_Y` and `FLIP_Z` constants now work as expected. - Fixed importing BMP images. - The positional command-line argument is now only considered to be a scene path if it ends with `.scn`, `.tscn` or `.escn`. - This makes it possible to parse command-line arguments in a standard fashion (`--foo bar` now works, not just `--foo=bar`). - This also makes it possible to use file associations or drag-and-drop and have the positional argument parsed by the project. - The `--audio-driver` and `--video-driver` command-line arguments are now validated; an error message will be printed if an invalid value is passed. - The `--check-only` command-line argument now returns a non-zero exit code if an invalid script is passed using `--script`. - Exporting a project via the command-line now returns a non-zero exit code if an error occurred during exporting. - Console output is no longer colored when standard output isn't a TTY. - This prevents Godot from writing ANSI escape codes when redirecting standard output or standard error to a file. - **Android:** Gamepads are now correctly detected when the application starts. - **Android:** Fix some keyboards being detected as gamepads and not working as a result. - **Android:** The editor now detects if the device is connected using wireless `adb` and will debug using Wi-Fi in this case. -
Calinou revised this gist
Jan 21, 2020 . 1 changed file with 32 additions and 13 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] (3.2-dev at commit `f3c6c63b9`) ### Added @@ -200,11 +200,14 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `GeometryInstance.set_custom_aabb()` to set a custom bounding box (used for view frustum culling). - `FuncRef.call_funcv()` to call a FuncRef with an array containing arguments. - In contrast to `FuncRef.call_func()`, only a single array argument is expected. - `Mesh.get_aabb()` is now exposed to scripting. - `PhysicalBone.apply_impulse()` and `PhysicalBone.apply_central_impulse()` methods to push ragdolls around. - `ProjectSettings.load_resource_pack()` now features an optional `replace_files` argument (defaulting to `true`), which controls whether the loaded resource pack can override existing files in the virtual filesystem. - `ConfigFile.erase_section_key()` method to remove a single key from a ConfigFile. - `OS.execute()` now returns the process' exit code when blocking mode is enabled. - `OS.low_processor_mode_sleep_usec` is now exposed as a property. - This makes it possible to change its value at runtime, rather than just defining it once in the Project Settings. - `VisualServer.multimesh_create()` is now exposed to scripting. - Ability to override how scripted objects are converted to strings by defining a `_to_string()` method. - Export hints for 2D and 3D physics/render layers. - Editor plugins can now add new tabs to the Project Settings. @@ -323,7 +326,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - [**HTML5:** Partial clipboard support.](https://github.com/godotengine/godot/pull/29298) - **iOS:** Support for [ARKit](https://developer.apple.com/augmented-reality/). - **iOS:** `OS.get_model_name()` now returns a value with the device name. - **iOS:** The Home indicator is now hidden by default to avoid being in the way of the running project. - It can be restored in the Project Settings. - **Windows:** Ability to toggle the console window in the Editor Settings. - **Windows:** Project setting to enable Vsync using the compositor (DWM), disabled by default. - On some hardware, this may fix stuttering issues when running a project in windowed mode. - **Windows:** Support for code signing using `signtool` on Windows and `osslsigncode` on other platforms. - **Windows:** Support for using Clang and ThinLTO when compiling using MinGW. - **Windows/macOS:** `OS.set_native_icon()` method to set an `.ico` or `.icns` window/taskbar icon at runtime. @@ -334,8 +341,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - **macOS:** The list of open scenes is now displayed in the editor dock menu. - **macOS:** Support for modifying global and dock menus. - **macOS:** Improved support for code signing when exporting projects. - **macOS:** Support for defining camera and microphone usage descriptions when exporting a project. - **X11:** The instance PID is now set as the `_NET_WM_PID` window attribute, so that external programs can easily access it. - **Mono:** Support for exporting to Android and HTML5. - **Mono:** Support for using Rider as an external editor. - **Mono:** Support for attaching external profilers like dotTrace using the `MONO_ENV_OPTIONS` environment variable. - **Mono:** New DynamicGodotObject class to access dynamic properties from scripts written in GDScript. - **Mono:** Support for resource type hints in exported arrays. - **Mono:** New `mono/unhandled_exception_policy` project setting to keep running after an unhandled exception. @@ -371,7 +381,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The animation was also removed as it made the editor feel sluggish at lower FPS. - Several editor menus have been reorganized for consistency and conciseness. - Undo/Redo now supports more actions throughout the editor. - Opening a folder in FileDialog will now scroll back to the top. - Folder icons in FileDialog can now be displayed with a different color using the `folder_icon_modulate` constant, making them easier to distinguish from files. - Folder icons in editor file dialogs are now tinted with the accent color. @@ -397,7 +406,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Keys and actions are now released when the window loses focus. - Tweens can now have a duration of 0. - Particles and CPUParticles' Sphere emission shape now uses an uniform density sphere. - `Viewport.size_override_stretch` is now exposed as a property (rather than just setter/getter methods). - One-click deploy to Android now requires just one click if only one device is connected. - The Project Manager will now infer a project name from the project path if the name was left to the default value. - The WebSockets implementation now uses the smaller [wslay](https://tatsuhiro-t.github.io/wslay/) library instead of libwebsockets. @@ -422,6 +431,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - For example, writing `2 + 2` in a SpinBox then pressing Enter will result in `4`. - Saved resources no longer contain dependency indices and metadata such as node folding, resulting in more VCS-friendly files. - The script editor state (such as breakpoints or the current line) is now preserved across editor sessions. - The script editor's "Auto Brace Complete" setting is now enabled by default. - The scripts panel toggle button is now located at the bottom-left of the script editor (instead of the File menu). - Editor plugins can now be enabled without having an init script defined. - Custom nodes added by plugins now have a translucent script icon in the scene tree dock. - `EditorInterface.get_current_path()` to get the full path currently displayed in the FileSystem dock in an editor plugin. @@ -463,6 +474,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Smooth path point and curve tangents now use different icons to be distinguished from sharp points. - Tangent lines are now gray in the Path2D and Path editors. - Path2D lines are now antialiased. - Increased the TileSet and polygon UV editor's maximum zoom levels (400% → 1600%). - Decreased the maximum allowed StyleBoxFlat corner detail (128 → 20). - This prevents slowness and glitches caused by using overly detailed corners. - 3D collision shapes and RayCasts are now drawn in gray when disabled. - Improved RayCast2D and one-way collision drawing. - Disabled RayCast2Ds are now displayed in gray. @@ -518,12 +532,15 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Directories will be created recursively if the target directory doesn't exist. - Items in the FileSystem dock can now be deselected by clicking empty space. - "Set as Main Scene" context option for scenes in the FileSystem dock. - The unused class variable GDScript warning is now disabled by default due to false positives. - Warning-ignore comments now allow whitespace after the `#` character. - Improved error reporting in the Particles emission point creation dialog. - The number of warnings and errors that can be received in the remote debugger is now capped per second rather than per frame. - The default limit is 100 errors and 100 warnings per second, making it possible for the script editor to report up to 100 warnings before having messages hidden. - UTF-8 characters are now supported in input action names. - All platforms now use the `custom_template` property in each export preset to store the path to the custom export template (instead of `custom_package` for some platforms). - Tween methods' `trans_type` and `ease_type` arguments are now optional, defaulting to `TRANS_LINEAR` and `EASE_IN_OUT` respectively. - `PCKPacker.pck_start()` and `PCKPacker.flush()`'s `alignment` and `verbose` arguments (respectively) are now optional, defaulting to `0` and `false`. - Exporting a project PCK or ZIP from the command line must now be done with the new `--export-pack` command-line argument. - This was done to remove the ambiguity when exporting a project to macOS from the command line. - Updated FreeType to 2.10, which changes how font metrics are calculated. @@ -565,16 +582,16 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - For instance, `vec2 test2 = vec2(0.0, 1.0); vec3 test3 = test2.xxx;` now works as in GLSL. - The `AMBIENT_LIGHT_DISABLED` and `SHADOWS_DISABLED` flags now work when using the GLES2 renderer. - Several fixes to the GLES2 renderer: - Fixed transparency order. - Fixed vertex lighting being too bright. - Fixed occasional light flickering. - Fixed shadows cast from transparent materials. - Fog is no longer computed on unshaded materials. - This matches the GLES3 renderer's behavior. - GLES2 shader uniforms now use `highp` precision by default. - This prevents linking issues on some Android devices. - Negative OmniLights and SpotLights now work as expected. - The 3D editor's View Information pane now displays statistics correctly when using the GLES2 renderer. - Fixed several inconsistencies between Particles and CPUParticles. - Fixed particles scale randomization. - Particles are now set to emit correctly when restarting. @@ -621,9 +638,11 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The script editor can now autocomplete enum values. - The script editor can now autocomplete node paths starting with `$"` or `$'`. - Custom script editor templates can now use type hints. - Shift operators with a number not between 0 and 63 (inclusive) will now result in a compile-time error in GDScript. - Warnings no longer count towards the "Too many errors!" message. - AnimationTrackEdit now displays invalid value keys again (as it did in 3.0). - Fixed the display of function/audio/animation tracks in the blend tree animation filter. - The editor shortcuts menu no longer displays all unassigned shortcuts when searching for a substring of "None". - The editor's performance monitor now displays memory/file sizes larger than 2 GB correctly. - The editor debugger now displays keyboard shortcuts when hovering the "Step Into", "Step Over", "Break" and "Continue" buttons. - The editor debugger now always handles connections. -
Calinou revised this gist
Jan 20, 2020 . 1 changed file with 0 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -287,8 +287,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `get_path()` and `get_path_absolute()` are now implemented in FileAccessEncrypted. - "Disabled" attenuation model for AudioStreamPlayer3D, making the sound not fade with distance while keeping it positional. - AudioEffectPitchShift's FFT size and oversampling are now adjustable. - TextEdit's tab drawing and folding is now exposed to GDScript. - Orphan node monitor in the Performance singleton. - Counts the number of nodes that were created but aren't instanced in the scene tree. -
Calinou revised this gist
Jan 14, 2020 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -357,6 +357,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - `Camera.project_position()` now requires a second `depth` argument to determine the distance of the point from the camera. - To get the old behavior back, pass the Camera's `near` property value as the second argument. - `Skeleton.set_bone_global_pose()` was replaced by `Skeleton.set_bone_global_pose_override()`. - UDP broadcasting is now disabled by default and must be enabled by calling `set_broadcast_enabled(true)` on the PacketPeerUDP instance. - Improved the Project Manager user interface. - New, simpler design with more space available for the project list. - Improved reporting of missing projects. -
Calinou revised this gist
Jan 8, 2020 . 1 changed file with 3 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -524,6 +524,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - The number of warnings and errors that can be received in the remote debugger is now capped per second rather than per frame. - The default limit is 100 errors and 100 warnings per second, making it possible for the script editor to report up to 100 warnings before having messages hidden. - UTF-8 characters are now supported in input action names. - All platforms now use the `custom_template` property in each export preset to store the path to the custom export template (instead of `custom_package` for some platforms). - Exporting a project PCK or ZIP from the command line must now be done with the new `--export-pack` command-line argument. - This was done to remove the ambiguity when exporting a project to macOS from the command line. - Updated FreeType to 2.10, which changes how font metrics are calculated. - This may affect the appearance of some Controls, see [this issue](https://github.com/godotengine/godot/issues/28335) for details. - The SCons build system now automatically detects the host platform. -
Calinou revised this gist
Jan 8, 2020 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -418,6 +418,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Decreased the `rotation_degrees` range in various nodes to -360..360 to be easier to adjust using the slider. - Lower and higher values can still be entered manually, which is useful for animation purposes. - The default RichTextLabel color is now `#ffffff`, matching the default Label color for better consistency. - Label's `visible_characters` property now takes spaces into account to be consistent with RichTextLabel. - SpinBoxes now calculate the entered value using the Expression class. - For example, writing `2 + 2` in a SpinBox then pressing Enter will result in `4`. - Saved resources no longer contain dependency indices and metadata such as node folding, resulting in more VCS-friendly files. -
Calinou revised this gist
Dec 19, 2019 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -347,6 +347,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ### Changed - Tween and Timer now display an error message if they are started without being added to the scene tree first. - Functions called from a signal can no longer disconnect the node from the signal they're connected to (unless using `call_deferred()`). - Tabs and space indentation can no longer be mixed in the same GDScript file. - Each file must now use only tabs or spaces for indentation (not both). - The "Trim" and "Normalize" WAV import options are now disabled by default.
NewerOlder