Hugo Locurcio 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前
..
screenshots fcc7d5c723 Optimize PNG images using oxipng 4 年之前
CSharpTest.cs 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前
Operating System Testing.csproj bbe50fc9da Convert demos to Godot 4 using regular expressions in a script 2 年之前
Operating System Testing.sln 2979f85185 Update C# demos for Godot 3.2.3 4 年之前
README.md b4c73f4888 Fix README links to asset library (#1078) 6 月之前
actions.gd 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前
icon.webp f6ac674864 Add icons for several projects (#886) 1 年之前
icon.webp.import f6ac674864 Add icons for several projects (#886) 1 年之前
os_test.gd 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前
os_test.tscn 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前
project.godot 53d3f9cdde Improve Operating System Testing demo (#1124) 2 月之前

README.md

Operating System Testing

This demo showcases various OS-specific features in Godot. It can be used to test Godot while porting it to a new platform or to check for regressions.

In a nutshell, this demo shows how you can get information from the operating system, or interact with the operating system.

Language: GDScript and some C# (a .NET build is not required to run this demo)

Renderer: Compatibility

Check out this demo on the asset library: https://godotengine.org/asset-library/asset/2789

How does it work?

The OS class provides an abstraction layer over the platform-dependent code. OS wraps the most common functionality to communicate with the host operating system, such as the clipboard, video driver, date and time, timers, environment variables, execution of binaries, command line, etc.

The buttons are connected to a node with the actions.gd script, which perform actions using the OS class. The text on the left is filled in using the os_test.gd script, which gathers information about the OS using the OS class.

On a Mono-enabled version of Godot, Godot will load MonoTest.cs into the MonoTest node. Then, information determined by C# preprocessor defines will be added to the left panel.

Screenshots

Top HiDPI

Mono