diff --git a/tutorials/export/feature_tags.rst b/tutorials/export/feature_tags.rst index a4caf75ad..b75e12767 100644 --- a/tutorials/export/feature_tags.rst +++ b/tutorials/export/feature_tags.rst @@ -23,68 +23,91 @@ Features can be queried at run-time from the singleton API by calling: OS.has_feature(name) +OS feature tags are used by GDExtension to determine which libraries to load. +For example, a library for ``linux.debug.editor.x86_64`` will be +loaded only on a debug editor build for Linux x86_64. Default features ---------------- Here is a list of most feature tags in Godot. Keep in mind they are **case-sensitive**: -+-----------------+--------------------------------------------------------+ -| **Feature tag** | **Description** | -+=================+========================================================+ -| **Android** | Running on Android | -+-----------------+--------------------------------------------------------+ -| **BSD** | Running on \*BSD | -+-----------------+--------------------------------------------------------+ -| **HTML5** | Running on HTML5 | -+-----------------+--------------------------------------------------------+ -| **JavaScript** | :ref:`JavaScript singleton ` is | -| | available | -+-----------------+--------------------------------------------------------+ -| **Linux** | Running on Linux | -+-----------------+--------------------------------------------------------+ -| **OSX** | Running on macOS | -+-----------------+--------------------------------------------------------+ -| **iOS** | Running on iOS | -+-----------------+--------------------------------------------------------+ -| **UWP** | Running on UWP | -+-----------------+--------------------------------------------------------+ -| **Windows** | Running on Windows | -+-----------------+--------------------------------------------------------+ -| **Server** | Running on the headless server platform | -+-----------------+--------------------------------------------------------+ -| **debug** | Running on a debug build (including the editor) | -+-----------------+--------------------------------------------------------+ -| **release** | Running on a release build | -+-----------------+--------------------------------------------------------+ -| **editor** | Running on an editor build | -+-----------------+--------------------------------------------------------+ -| **standalone** | Running on a non-editor build | -+-----------------+--------------------------------------------------------+ -| **64** | Running on a 64-bit build (any architecture) | -+-----------------+--------------------------------------------------------+ -| **32** | Running on a 32-bit build (any architecture) | -+-----------------+--------------------------------------------------------+ -| **x86_64** | Running on a 64-bit x86 build | -+-----------------+--------------------------------------------------------+ -| **x86** | Running on a 32-bit x86 build | -+-----------------+--------------------------------------------------------+ -| **arm64** | Running on a 64-bit ARM build | -+-----------------+--------------------------------------------------------+ -| **arm** | Running on a 32-bit ARM build | -+-----------------+--------------------------------------------------------+ -| **mobile** | Host OS is a mobile platform | -+-----------------+--------------------------------------------------------+ -| **pc** | Host OS is a PC platform (desktop/laptop) | -+-----------------+--------------------------------------------------------+ -| **web** | Host OS is a Web browser | -+-----------------+--------------------------------------------------------+ -| **etc** | Textures using ETC1 compression are supported | -+-----------------+--------------------------------------------------------+ -| **etc2** | Textures using ETC2 compression are supported | -+-----------------+--------------------------------------------------------+ -| **s3tc** | Textures using S3TC (DXT/BC) compression are supported | -+-----------------+--------------------------------------------------------+ ++-----------------+----------------------------------------------------------+ +| **Feature tag** | **Description** | ++=================+==========================================================+ +| **android** | Running on Android | ++-----------------+----------------------------------------------------------+ +| **bsd** | Running on \*BSD | ++-----------------+----------------------------------------------------------+ +| **html5** | Running on HTML5 | ++-----------------+----------------------------------------------------------+ +| **javascript** | :ref:`JavaScript singleton ` is | +| | available | ++-----------------+----------------------------------------------------------+ +| **linux** | Running on Linux | ++-----------------+----------------------------------------------------------+ +| **macos** | Running on macOS | ++-----------------+----------------------------------------------------------+ +| **ios** | Running on iOS | ++-----------------+----------------------------------------------------------+ +| **uwp** | Running on UWP | ++-----------------+----------------------------------------------------------+ +| **windows** | Running on Windows | ++-----------------+----------------------------------------------------------+ +| **linuxbsd** | Running on Linux or \*BSD | ++-----------------+----------------------------------------------------------+ +| **debug** | Running on a debug build (including the editor) | ++-----------------+----------------------------------------------------------+ +| **release** | Running on a release build | ++-----------------+----------------------------------------------------------+ +| **editor** | Running on an editor build | ++-----------------+----------------------------------------------------------+ +| **standalone** | Running on a non-editor build | ++-----------------+----------------------------------------------------------+ +| **64** | Running on a 64-bit build (any architecture) | ++-----------------+----------------------------------------------------------+ +| **32** | Running on a 32-bit build (any architecture) | ++-----------------+----------------------------------------------------------+ +| **x86_64** | Running on a 64-bit x86 build | ++-----------------+----------------------------------------------------------+ +| **x86_32** | Running on a 32-bit x86 build | ++-----------------+----------------------------------------------------------+ +| **x86** | Running on an x86 build (any bitness) | ++-----------------+----------------------------------------------------------+ +| **arm64** | Running on a 64-bit ARM build | ++-----------------+----------------------------------------------------------+ +| **arm32** | Running on a 32-bit ARM build | ++-----------------+----------------------------------------------------------+ +| **arm** | Running on an ARM build (any bitness) | ++-----------------+----------------------------------------------------------+ +| **rv64** | Running on a 64-bit RISC-V build | ++-----------------+----------------------------------------------------------+ +| **riscv** | Running on a RISC-V build (any bitness) | ++-----------------+----------------------------------------------------------+ +| **ppc64** | Running on a 64-bit PowerPC build | ++-----------------+----------------------------------------------------------+ +| **ppc32** | Running on a 32-bit PowerPC build | ++-----------------+----------------------------------------------------------+ +| **ppc** | Running on a PowerPC build (any bitness) | ++-----------------+----------------------------------------------------------+ +| **wasm64** | Running on a 64-bit WebAssembly build (not yet possible) | ++-----------------+----------------------------------------------------------+ +| **wasm32** | Running on a 32-bit WebAssembly build | ++-----------------+----------------------------------------------------------+ +| **wasm** | Running on a WebAssembly build (any bitness) | ++-----------------+----------------------------------------------------------+ +| **mobile** | Host OS is a mobile platform | ++-----------------+----------------------------------------------------------+ +| **pc** | Host OS is a PC platform (desktop/laptop) | ++-----------------+----------------------------------------------------------+ +| **web** | Host OS is a Web browser | ++-----------------+----------------------------------------------------------+ +| **etc** | Textures using ETC1 compression are supported | ++-----------------+----------------------------------------------------------+ +| **etc2** | Textures using ETC2 compression are supported | ++-----------------+----------------------------------------------------------+ +| **s3tc** | Textures using S3TC (DXT/BC) compression are supported | ++-----------------+----------------------------------------------------------+ .. warning::