Godot Crimes
This document contains a list of issues in Godot that I consider code crimes.
Active Crimes
These crimes have not been addressed and are still issues in the Godot codebase.
is_polygon_clockwisereturns the opposite result@toolscript says function does not exist when it doesinverseis an inferior version ofaffine_inverse- Godot cannot determine the type of autoloads
- Float values NaN and INF are displayed as 0 in debugger and inspector
get_contact_local_positionreturns global position- Cubemaps are not oriented consistently between rendering pipelines
- Godot always runs scripts in deserialized resources
- Godot doesn't export dependencies
reducein Godot returns first value in array when accumulator isnull
Solved Crimes
These crimes have been addressed and are no longer issues in the Godot codebase.
- Exported variables of inherited scenes are aliased, fixed for Godot 4.3
Pardoned Crimes
I no longer consider the following items as crimes.
- Lambdas
do not capture local variables; Godot actually
passes everything by value to the closure and it
just so happens that the value of
Variantvariables is itself a reference. I think this design is less confusing than any alternative I can think of.