フィーチャータグ

はじめに

Godotは、機能の可用性をタグ付けするための特別なシステムを持っています。各 フィーチャー は文字列として表され、次の多くを参照できます。

  • プラットフォーム名。

  • プラットフォームアーキテクチャ(64ビットまたは32ビット、x86またはARM)。

  • プラットフォームの種類 (デスクトップ、モバイル、Web)。

  • プラットフォームでサポートされているテクスチャ圧縮アルゴリズム。

  • ビルドが debugrelease か(debug にはエディタが含まれます)。

  • プロジェクトがエディタから実行されているか、「スタンドアロン」バイナリから実行されているか。

  • その他のもの。

機能は、次の呼び出しによってシングルトンAPIから実行時に照会できます:

OS.has_feature(name)

デフォルトのフィーチャー

Godotのほとんどのフィーチャータグのリストを次に示します。大文字と小文字を区別する ことに注意してください:

フィーチャータグ

説明

Android

Android上で実行

HTML5

HTML5で実行

JavaScript

JavaScript singleton が利用可能です

OSX

macOSで実行

iOS

iOSで実行

UWP

UWPで実行

Windows

Windowsで実行

X11

X11 で実行 (Linux/BSD デスクトップ)

Server

ヘッドレスサーバープラットフォームで実行

debug

デバッグ ビルドで実行 (エディタを含む)

release

リリースビルドで実行

editor

エディタビルドで実行

standalone

エディタビルド以外で実行

64

64ビット ビルドで実行 (任意のアーキテクチャ)

32

32ビットビルドでの実行 (任意のアーキテクチャ)

x86_64

x86の64ビットビルドで実行

x86

x86の32ビットビルドで実行

arm64

ARMの64ビットビルドで実行

arm

ARMの32ビットビルドで実行

mobile

ホストOSはモバイルプラットフォーム

pc

ホストOSはPCプラットフォーム(デスクトップ/ラップトップ)

web

ホストOSはWebブラウザ

etc

ETC1圧縮を使用したテクスチャがサポートされています

etc2

ETC2圧縮を使用したテクスチャがサポートされています

s3tc

S3TC(DXT/BC)圧縮を使用したテクスチャがサポートされています

pvrtc

PVRTC圧縮を使用したテクスチャがサポートされています

カスタム機能

ビルドにカスタム機能を追加することができます。生成に使用される エクスポートプリセット の関連フィールドを使用します。

../../../_images/feature_tags1.png

プロジェクト設定のオーバーライド

機能を使用して、プロジェクト設定の特定の構成値を上書きできます。これにより、ビルドを実行するときに構成をより適切にカスタマイズできます。

次の例では、ゲームのデモビルドに別のアイコンが追加されています(特別なエクスポートプリセットでカスタマイズされ、デモレベルのみが含まれています)。

../../../_images/feature_tags2.png

オーバーライド後、この特定の構成に対して新しいフィールドが追加されます:

../../../_images/feature_tags3.png

注釈

When using the project settings "override.cfg" functionality (which is unrelated to feature tags), remember that feature tags still apply. Therefore, make sure to also override the setting with the desired feature tag(s) if you want them to override base project settings on all platforms and configurations.

デフォルトのオーバーライド

デフォルトでは、すでに多くの設定がオーバーライドされています。プロジェクト設定の多くのセクションにあります。

../../../_images/feature_tags4.png

ビルドのカスタマイズ

カスタム ExportPlugin を記述することにより、フィーチャータグを使用してビルドプロセスをカスタマイズすることもできます。また、GDNative でロードおよびエクスポートされる共有ライブラリを指定するためにも使用されます。