Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
Теги функцій¶
Вступ¶
У Godot є спеціальна система для позначення доступних функцій. Кожна функція представлена у вигляді рядка, який може посилатися на багато чого з наступного:
Назва платформи.
Архітектура платформи (64-розрядна, або 32-бітна, x86, або ARM).
Тип платформи (настільний, мобільний, веб).
Підтримувані алгоритми стиснення текстур на платформі.
Збірку
debug
, абоrelease
(debug
включає редактор).Проєкт, що працює із редактора, чи "окремого" бінарника.
Ще багато речей.
Про особливості можна дізнатися під час виконання з API Singleton, викликом:
OS.has_feature(name)
OS.HasFeature(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.
Типові можливості¶
Ось список більшості тегів функцій у Godot. Майте на увазі, що вони чутливі до регістру:
Тег функції |
Опис |
---|---|
android |
Running on Android (but not within a Web browser) |
bsd |
Running on *BSD (but not within a Web browser) |
linux |
Running on Linux (but not within a Web browser) |
macos |
Running on macOS (but not within a Web browser) |
ios |
Running on iOS (but not within a Web browser) |
windows |
Працюємо у Windows |
linuxbsd |
Running on Linux or *BSD |
debug |
Працює у діагностичній збірці (включає редактор) |
release |
Працюємо у збірці для випуску |
editor |
Працює в збірці редактора |
template |
Running on a non-editor (export template) build |
double |
Running on a double-precision build |
single |
Running on a single-precision build |
64 |
Працює у 64-бітовій збірці (будь-якої архітектури) |
32 |
Працює у 32-бітовій збірці (будь-якої архітектури) |
x86_64 |
Працюємо у 64-бітовій x86 збірці |
x86_32 |
Працює у 32-бітовій x86 збірці |
x86 |
Running on an x86 build (any bitness) |
arm64 |
Працює у 64-бітовій ARM збірці |
arm32 |
Працює у 32-бітовій ARM збірці |
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) |
мобільний телефон |
Основна операційна система є мобільною платформою |
pc |
Основною операційною системою є платформа ПК (робоча станція чи ноутбук) |
web |
Основна операційна система є переглядачем інтернету |
web_android |
Host OS is a Web browser running on Android |
web_ios |
Host OS is a Web browser running on iOS |
web_linuxbsd |
Host OS is a Web browser running on Linux or *BSD |
web_macos |
Host OS is a Web browser running on macOS |
web_windows |
Host OS is a Web browser running on Windows |
etc |
Підтримуються текстури, що використовують стиснення ETC1 |
etc2 |
Підтримуються текстури, що використовують стиснення ETC2 |
s3tc |
Підтримуються текстури, що використовують стиснення S3TC (DXT / BC) |
movie |
Movie Maker mode is active |
Попередження
With the exception of texture compression and movie
feature tags,
default feature tags are immutable. This means that they will not
change depending on run-time conditions. For example,
OS.has_feature("mobile")
will return false
when running a project
exported to HTML5 on a mobile device.
Щоб перевірити, чи працює проект, експортований в HTML5, на мобільному пристрої, викличте код JavaScript, який зчитує агент користувача браузера.
Нетипові можливості¶
У збірку можна додати власні функції; використовуйте відповідне поле в export preset, щоб згенерувати їх:
Примітка
Спеціальні теги використовуються лише під час запуску експортованого проекту (зокрема з Розміщення в один клік). Вони не використовуються під час запуску проекту з редактора, навіть якщо пресет експорту позначено як Runnable (Запускається) для вашої поточної платформи з визначені спеціальні теги.
Заміна параметрів проєкту¶
Функції можна використовувати для перевизначення певних значень конфігурації в Параметрах проєкту. Це дозволяє вам краще налаштувати будь-яку конфігурацію під час створення збірки.
У наступному прикладі для демонстраційної збірки гри додано інший значок (який був налаштований у спеціальному пресеті експорту, який, у свою чергу, включає лише демо-рівні).
Після заміни додається нове поле для цієї конкретної конфігурації:
Примітка
Використовуючи функцію параметрів проєкту "override.cfg" (яка не пов'язана з тегами функцій), пам'ятайте, що теги функцій все ще застосовуються. Тому переконайтеся, що ви також перевизначили налаштування за допомогою бажаних тегів, якщо хочете, щоб вони замінили базові параметри проєкту на всіх платформах та конфігураціях.
Заміна за замовчуванням¶
Вже існує багато параметрів, які за замовчуванням мають заміни; їх можна знайти в багатьох розділах параметрів проєкту.
Налаштування збірки¶
Feature tags can be used to customize a build process too, by writing a custom ExportPlugin. They are also used to specify which shared library is loaded and exported in GDExtension.