Unityで開発されたPowerWash Simulatorは、表面の洗浄を説得力を持ってシミュレートするという独自の技術的課題を提示します。単なる色の変更ではなく、このゲームはリアルタイムテクスチャマスクを使用して段階的に除去される動的な汚れレイヤーシステムを採用し、PBR(物理ベースレンダリング)ワークフローに依存して視覚的なリアリズムを維持しています。
アセットフロー:MayaからUnityへ、Substance Painter経由 🎨
プロセスはAutodesk Mayaから始まり、リアルタイム向けにクリーンで最適化されたジオメトリで車両や建物がモデリングされます。各アセットはSubstance Painterにエクスポートされ、そこでベースとなるPBRテクスチャ(アルベド、ノーマル、ラフネス、メタリック)が作成されます。技術的な鍵は、追加のマスクチャンネルの生成にあります。Substance Painterでは、汚れや錆のレイヤーが独立したテクスチャとして、または既存マップのアルファチャンネルにペイントされます。Unityに統合されると、カスタムシェーダーがこれらのマスクを読み取り、プレイヤーの操作(水の噴射)によって制御される侵食アルゴリズムを通じて、汚れの不透明度を徐々に薄くしていきます。これにより、下にあるクリーンなPBRテクスチャが徐々に現れ、ジオメトリを変更することなく物理的な洗浄の錯覚を生み出します。
ゲームエンジンとしての洗浄の錯覚 🧼
このアプローチは、インテリジェントなテクスチャリングソリューションがどのようにしてゲームプレイの仕組み全体を定義できるかを示しています。複雑なパーティクルシミュレーションの代わりに、PowerWash SimulatorはUnityのシェーダーの力とSubstance Painterのマルチレイヤーテクスチャリングを利用して、満足感があり視覚的に一貫した体験を提供します。これは、PBRパイプラインの能力を理解することで、開発者がパフォーマンスを犠牲にすることなく斬新なインタラクションを生み出せることを示す素晴らしい例です。
Unity開発者の皆さん、パフォーマンスを損なうことなく、リアルタイムでの汚れの蓄積と手続き的な除去を管理するために、どのようなレイヤーシステムとシェーダーを使用しましたか?
(追記:シェーダーはマヨネーズのようなものです。分離してしまったら、最初からやり直しです)