コード記述の補助機能
コメント
GDScriptでコメントは 「#」で一行、「”’」区切りで複数行の記述が可能です。
# これは一行分のコメントです。
'''
これは複数行文のコメントです
'''
行の継続
GDScript のコード行を継続する際は、行の末尾にバックスラッシュ(\) を記述します。
var test = "ABC" + \
"DEF" + \
"G"
コード領域
#region , #endregion でコードを囲むことで、コード領域の定義ができます。
コード領域を設定することで、コードの折り畳みができるようになり、長いコードの管理に役立ちます
アノテーション(注釈)
GDScriptでは、「@」から始まるアノテーション(注釈)によって、コードの処理や動作に関する追加情報を定義できます。注釈にはさまざまな種類がありますが、以下に主要なものをまとめます。
@export:値をエディタへエクスポートする
@export は、GDScript内の値(クラスメンバ)をGodotエディタにエクスポートするための注釈です。
エクスポートされた値はインスペクターに表示され、エディタ側から編集が可能になります。
@exportは種類や用法が多いため、詳細は以下別記事でまとめています。
@onready : Node._ready の直前にロードする
@onready アノテーションは、指定したノードやリソースのロードを、ロード対象が使用可能になるのを待ってから実行するための設定を行います。
→これによって、初期化等が未完了のノード等をロードしてしまうことを防ぎ、安全な処理が可能です
@onready var label = $Label
シーン内のノードをロードする場合、上記の記述はシーンツリーからCtrl+ドラッグでショートカット入力も可能です。
@onready でのロード対象が使用可能になるとは、=Node._ready の直前のタイミング です。
_ready() は、ノードとその子の両方がシーンツリーに入ったときに呼び出される関数のため、結果的に「=準備完了状態」として認識できます。
※通常のロードタイミングはノードの初期化 ( Object._init ) 時
@static_unload : 参照がなくなったときにアンロード
Godotではスクリプト内に静的変数がある場合、他の参照が残っていない場合でも自動でアンロード(メモリ解放)がされなくなってしまいます。(GDScriptクラスはリソースのため、保持される)
そのため、@static_unloadを使用して、すべての参照が失われた後に持続しないように設定します。(スクリプトがロードし直されると、静的変数はデフォルト値に戻ることに注意)
@static_unload #スクリプトのアンロード設定。(スクリプト先頭行に記述)
class_name <クラス名>
参考情報
この記事は、以下公式ドキュメント「GDScript」の内容を一部抜粋してまとめたものになります。
より詳細な内容は以下をご参照ください。
コメント