Skip to content

Issues With C# Preprocessor Defines #9230

Open
@Joy-less

Description

@Joy-less

Your Godot version:
4.2 4.4

Issue description:
The wiki page on conditional compilation for C# has a number of issues:

  • It says GODOT_SERVER is defined for dedicated server exports, but it's never defined.
  • It says GODOT_64 or GODOT_32 is defined in the editor and exports, but they're never defined.
  • It says GODOT_PC is defined only when exporting, but it's also defined in the editor.
  • It says the platform defines are "created from the get_name() method of the OS singleton" which is not true, as get_name() values have different casing, separate Linux and BSD, and uses "Web" rather than HTML5.

Additionally, there are some design problems:

  • No guarantee that the names won't change in the future.
  • Duplicate definitions such as GODOT_MACOS/GODOT_OSX, GODOT_WEB/GODOT_HTML5.
  • GODOT_32 and GODOT_64 are ambiguous between the OS architecture and the floating point accuracy.

There's no clear consensus on determining which export the game is running on, so I suggest a dedicated wiki page is created for this purpose.

URL to the documentation page:
https://docs.godotengine.org/en/stable/tutorials/scripting/c_sharp/c_sharp_features.html

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:manualIssues and PRs related to the Manual/Tutorials section of the documentationbugtopic:dotnet

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions