- Move all demo projects that don't require Forward+/Mobile-only features
to the Compatibility rendering method. This improves performance significantly
on low-end devices and ensures visuals are identical to a web export
of the demo.
- Set deadzone on all inputs to 0.2 for better gamepad usability.
- Remove reliance on `default_env.tres` to use built-in Environment
resources in the main scene instead (which follows the preview environment
workflow).
- Remove notices pointing to GDNative or VisualScript, since both were
removed in 4.0.
- Various bug fixes and usability tweaks to 10+ demos.
All demos were opened with Godot 4.2.1, with the mesh format
upgraded for 3D demos.
The 3D antialiasing demo now uses Extra Cull Margin on the last
object to prevent it from disappearing too early when the camera
rotates (due to its use of shader-based animation).
A GLES2-specific tweak is now documented for the GUI in 3D demo.
This also tweaks shadow quality and performance to find a better
balance and result in smoother shadows, including when using GLES2
(thanks to the use of PCF13 shadow filter mode).
In demos that allow falling back to GLES2, ETC1 texture import
is enabled to allow exporting to Android or HTML5 without having
to tweak anything.
- Enable anisotropic filtering in 3D demos, and set the quality to
16× on desktop and 4× on mobile.
- Enable 4× MSAA on some 3D demos that didn't use it beforehand.
- On GLES3 demos, disable MSAA on mobile as these demos are often
more demanding.
- Use more conservative framebuffer allocation settings for better
performance.
- Use PCF13 shadow filtering in GLES2 demos on desktop to benefit
from soft shadows in Godot 3.2.4 and later.
In Godot 3.2.3, this will make shadows smoother but still "blocky".
- Use Lossless compression instead of VRAM compression for
small textures such as the voxel demo texture atlas.
This is required to benefit from crisp display on hiDPI monitors.
This also fixes issues related to fullscreen and input handling
when using an hiDPI display on Windows.
- Enable 4× MSAA in all 3D demos.
- Enable filmic tonemapping with a whitepoint of 6 in GLES3 3D demos.
- Add subtle fog to the Truck Town demo.
- Use the `2d` stretch mode and `expand` stretch aspect to support
multiple resolutions and aspect ratios.
This makes demos render correctly on hiDPI displays,
while also demonstrating how to handle multiple resolutions.
The 3D in 2D demo now uses "3D No-Effects" for the 3D viewport,
which is faster to render. Thanks to this, 4× MSAA is now enabled
for a better result.
The background loading demo now uses mipmaps for better-looking images.
The material testers demo now samples mouse input in a
resolution-independent manner when panning.
Default clear colors were also changed in some projects for visual
consistency with the project's theme.
Importing ETC2 textures is slow and requires a lot of RAM, so it
makes sense to disable it. Those who would like to run the demo
on mobile platforms can re-enable it in the Project Settings.
Noticed a lot of error spat out because of unnormalized basis.
I simply followed the suggestion to use get_rotation_quat() instead of using constructor of Quat(x).