ゲーム制作勉強中!あこがれだったプログラマーに今からなろう!

昔、あこがれていたプログラマー。今からでも勉強してみようと思い立ち、チャレンジ開始! 勉強メモや、悪戦苦闘な日々の記録です。

Unity経験者のGodotの遊び方:Nodeの種類ごとの色の設定方法について


Godotで色を設定する方法が、Nodeの種類によって違っているため、結構苦労したので、備忘録として簡単にまとめておきます。

Unityを経験している人は、GameObjectの色を変えたい場合は、Materialを作ると思いますが、
Godotの場合は、NodeによってはMaterialを必要としない場合があるみたいです。

この図は、「CSGMesh3D」という3D系のNodeのインスペクターになります。
CSGMesh3D」は簡単に立体を作ることができるNodeです。

このインスペクターにはMaterial欄の選択肢に、「新規StandardMaterial3D」があり、まずこれを選択します。

すると、比較的UnityのMaterialと似たイメージの画面が表示されます。
色の設定はAlbedoです。
この辺りもUnityと同じっぽいと思いました。

次の図は、2D系のNodeで「Sprite2D」のインスペクターになります。
Sprite2D」は画像を表示する、UnityでいうImageの様な機能を持つNodeです。

このインスペクターにはMaterial欄の選択肢に、先ほどの「新規StandardMaterial3D」がありません。
この場合は、Visibility欄にある「Modulate」か「Self Modulate」で色を設定できます。


Materialは必要ありません。
MaterialAlbedoだけがここにある様な感じで色を設定する事ができます。
設定するときの注意ですが、ModulateはそのNodeだけではなく、このNodeの子に設定されたNodeにまで影響を及ぼします。
このNodeだけの色を変えたい場合は、Self Modulateで色を設定する様にします。

最後は、ユーザーインターフェイス系のNodeで「Label」のインスペクターになります。
Label」は画面上に文字を表示するためのNodeです。

文字の色は、Theme OverridesColorsFont Colorで設定します。

文字に縁取り線をつけたい場合は、Font Outline Colorで設定します。
ただ、縁取り線を表示するのはこれだけでは不十分で、下にあるConstansOutline Sizeで縁取り線の太さ
も忘れずに設定する必要があります。