🐡
[Godot] Terrain3Dでテクスチャを追加する方法
terrain3DはGodotの地形を生成するプラグインです。
wikiを見てテクスチャの追加だけ少し煩雑だとかんじたので作業フローを記録しておきます。
まずterrain3Dで使用するテクスチャはalbedo, displacement, normal, roughnessの4つです。
Gimpを使って上記の4つを2組の画像にくっつけます(Channel Packing)。テクスチャ容量の節約的な目的があるらしい?です(よくわかっていない)。
くっつける組み合わせはalbedo + displacement、 normal + roughnessとなります。
alobedoをRGBの3つのチャネルに分けて、そこへalpha channelとしてdisplacementを追加します。同様にnormalをRGBの3つのチャネルに分けて、そこへalpha channelとしてroughnessを追加します。4つに分かれたchannelを一つにまとめてエクスポートします。
wiki)
具体的な手順(- どこかからテクスチャ(albedo, displacement, normal, roughness)をダウンロードしてくる
- GimpにDDSのプラグインを入れておく
- Gimpでalbedoを開く
- Gimpでdisplacementを開く
- albedoをcolors -> components -> decomposeでRGBに分ける
- displacementをalpha channelとしてalbedoにD&Dする(レイヤーの名前はalpha)
- colors -> components -> composeでRGBAの構成で再度一つにまとめる
- file -> Export as -> hoge_texture.ddsのように拡張子を.ddsにしてExport
- Export as DDSという設定画面がでてくるので、そこでCompressionをBC3/DXT5, MipmapsをGenerate Mipmapに変更してDDSとしてエクスポートする
- 同様にしてnormalとroughnessも一枚の画像にまとめてエクスポートする
あとはGodotで3d SceneにTerrain3D nodeを追加して、インスペクターのTexturesに新規テクスチャを追加して、そのテクスチャに2枚の画像をLoadするだけです。
Discussion