* General proofreading for grammar and spelling
* General formatting
* Addition of appropriate literals where appropriate, i.e. `&"foo"` for `StringName` cases and `^"foo/bar"` for `NodePath` cases
- Make 3D lights with shadows darker when using Compatibility to better
match the appearance of Forward+/Mobile, due to the use of sRGB blending
for those lights.
- Silence some warnings when running projects with the Compatibility
rendering method, such as the one about 2D MSAA not being supported.
- Rebake lightmaps in Global Illumination to improve quality and reduce
light leaking with improvements from 4.3.
- Increase probe density for dynamic objects, and mark the moving box
as a dynamic object for GI purposes.
This is done to improve the experience with the web-based demos,
which always run with the Compatibility rendering method.
This provides mouse sensitivity that is independent of the viewport
size, without needing to query for project settings.
This also inverts the mouse motion direction in the 3D navigation demo
to better match expectations, and increases mouse sensitivity in the
Window Management demo to be closer to other demos.
This leads to code that is easier to understand and runs
faster thanks to GDScript's typed instructions.
The untyped declaration warning is now enabled on all projects
where type hints were added. All projects currently run without
any untyped declration warnings.
Dodge the Creeps and Squash the Creeps demos intentionally don't
use type hints to match the documentation, where type hints haven't
been adopted yet (given its beginner focus).
- Use 4× MSAA for a better visual appearance.
- Use "3D Without Effects" framebuffer allocation when possible
for better performance.
- Disable Glow in the 3D Kinematic Character demo for better
performance. Increase the DirectionalLight strength to compensate.
- Use a non-linear attenuation for the OmniLight in the
Window Management demo (and increase its range to compensate).
A vertical FOV of 74 degrees is roughly equivalent to a 90 degree
horizontal FOV on a 4:3 display (~106.26 degrees on 16:9), which
is the typical default FOV used in PC games.
The scripts were streamlined using more or less the following conventions:
- space after a comma in lists of arguments
- space around weak operators (+, -), no space around strong operators (*, /)
- space after a comment start (#)
- removed trailing spaces or tabs, apart from those that delimit the function indentation level (those could be removed too but since they are added automatically by the editor when typing code, keeping them for now)
- function blocks separate by two newlines
The scene files were resaved with the (current) 2.0 format, and some scenes that were in XML format were converted to SCN, to be consistent across all demos.