* navigation_astar: replace deprecated TileMap with TileMapLayer
* navigation_astar: use get_used_cells() instead of iterating over region
This also removes the confusing use of Tile.OBSTACLE. The tile enum is
mostly used for atlas coordinates but in this case it is compared with
the source id which only happens to be zero as well.
* navigation_astar: use constants for atlas coordinates
This makes it more obvious how to set cells in larger tilesets where the
second position is not zero.
It also removes the constant OBSTACLE which is unused since the last
commit.
* navigation_astar: mention get_used_rect()
Using it in this example is more complex (as the border has no cells)
but it's good to know.
- Add runtime MP3 and WAV loading with example files.
- Add runtime FBX loading (but no example files, due to known issues with
the current FBX runtime loading implementation).
- Use supersampling for the 3D preview to further improve quality.
- Shorten file path to example glTF scene.
- Mention audio duration in the UI when loading an audio file.
This showcases various tonemapping operators and their interaction
with several color correction textures (1D and 3D).
A script generating neutral 3D LUT textures is also included.
Co-authored-by: Allen Pestaluky <allenpestaluky@gmail.com>
- Add options for physics ticks per second, time scale, max physics steps per frame
and physics interpolation to the 2D and 3D physics tests demos.
- Physics ticks per second are always multiplied by time scale so that
time scale does not affect the physics simulation quality.
- Enable 4× MSAA for better debug shape display. Remove meshes/lights as
the debug collision fill make these unnecessary.
- Switch to the Mobile rendering method in the 2D physics tests demo
to allow for 2D MSAA, as it's not implemented in Compatibility yet.
- Improve collision shapes color in the 2D and 3D physics tests demos
for better visibility. Each PhysicsBody type now has its own collision
shape color.
- Allow placing/breaking blocks when further away (up to 5 blocks instead of 4).
- Add a background to the debug display to improve readability on bright backgrounds.
- Simplify coordinate display using the `%v` placeholder available in 4.3 onwards.
This was most common at low physics tick rates like 20 TPS.
This also fixes an issue with the RigidBody character demo having
movement speed depending on the physics tick rate.
JSON.parse_string() parses all numbers as floats, even if there are no decimals.
`str(JSON.parse_string('{"type": 3}').asdf)` would result in `"3.0"`, which is not a valid int.
Because of this, the demo is not working.
The '$AnimatedSprite2D.play()' is called at the beginning in the '_ready' function,
when it should actually be called at the end, after selecting the animation.
* Update Platformer 2D to Godot v4.3
Before this change, if you tries to import the Platformer 2D project
using Godot v4.3 (the latest stable version of Godot, at the moment),
you would get the following warning:
> Warning: This project was last edited in Godot 4.2.
> Opening will change it to Godot 4.3.
>
> Open anyway? Project will be modified.
This change updates the project to Godot 4.3 so that that warning no
longer appears. When you upgrade to a newer version of Godot, sometimes
certain files will automatically be updated by the Godot Editor after
the upgrade has been completed. Specifically, the files won’t get
updated until after they’re opened in the Godot Editor. When creating
this commit, I tried to open every single file for Platformer 2D in the
Godot Editor to make sure that all of those automatic changes are
included in this commit.
* Replace Platformer2D’s TileMap with a TileMapLayer
Before this change, the Platformer 2D used a TileMap Node. TileMaps are
deprecated. TileMapLayers should be used instead [1].
[1]: <https://docs.godotengine.org/en/4.3/classes/class_tilemap.html#tilemap>
Make it more obvious to newcomers how this demo works so they can
replicate it in their projects.
Change the text to point to how this is working.
Add Editor Descriptions to make it clearer how this is setup.
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>