はじめに
Unityでリアルな地球を作ることに挑戦したメモ
基本方針
- Unity + URP
- メッシュは Octahedron Sphere を使用
- シェーダーの各種パラメータは適当(それっぽくなるように微調整)
地球マテリアル構成
- Albedo:地表テクスチャ
- Normal:地形ノーマル
- Height:標高(海の色計算で使用)
- Mask:海・陸・雲
- Emission:夜景(都市光)
昼夜の再現
- 法線とライト方向の内積を使用
- 昼側:Albedo
- 夜側:Emission
- 境界は Smoothstep で自然に
海の質感
- Fresnel で縁を明るく
- 波用 Normal Map を2枚合成
- 時間でUVをずらして波を動かす
雲と大気
- 地球より少し大きい Sphere を重ねる
- 雲は回転させる
- 雲影を地表に落とす
- 大気は Fresnel で表現
今後の展望(やるかわからない)
- ズームレベル別表現
- 高高度〜地表まで一貫した描画
- 大気散乱・LOD
