Team Ninjaは、ダークファンタジーと激しい戦闘メカニクスを組み合わせたアクションRPG『Stranger of Paradise: Final Fantasy Origin』の開発に、自社エンジンを採用しました。主な技術的課題は、敵の結晶化エフェクトを実現することでした。これは、リアルタイムパフォーマンスを維持するために、エンジン、Maya、Substance Painter間で最適化されたパイプラインを必要とする重要なビジュアル要素です。
MayaとSubstance Painterによるモデリングとプロシージャルテクスチャリング 🎨
プロセスはMayaから始まり、モデラーはモジュラーアプローチで敵のベースジオメトリを作成しました。鍵となるのは、動的に破壊および結晶化できるパーツを設計することでした。その後、Substance Painterで、肉、金属、結晶間の遷移をシミュレートするプロシージャルテクスチャが適用されました。アーティストは、Team Ninjaのエンジンが戦闘中に結晶化を起動するために解釈する、不透明度マスクとラフネスマップを生成しました。このフローは追加のジオメトリの使用を回避し、複数の敵がいるシーンでのパフォーマンスを最適化しました。自社エンジンは、結晶化した領域に当たる光を歪めるシェーダーを使用して、これらのサーフェス上の動的なライティングを管理し、タイトルのダークな美学を強化しました。
インディー開発者と小規模スタジオへの教訓 💡
Team Ninjaの事例は、MayaやSubstance Painterのような標準ツールと適切に統合された自社エンジンが、UnrealやUnityに依存せずに独自のビジュアル結果を提供できることを示しています。小規模スタジオがこのパイプラインを再現するには、プロシージャルテクスチャリングとエンジンのシェーダー間の連携を優先する必要があります。鍵となるのは、GPUに過負荷をかけずにエフェクトを起動するためにテクスチャマスクを使用することで、これはSubstance Designerとカスタムエンジンを使用すれば、小規模プロジェクトでもあらゆる開発者が実装できるテクニックです。
技術開発者として、Team Ninjaが、Niohのようなリニアなアクションゲーム向けに最適化されていたパイプラインを考慮した場合、自社エンジンをStranger of Paradiseのロールプレイングメカニクスとクラスシステムに対応させるために適応させる際、どのような具体的な課題に直面しましたか?
(追記: モバイル向けに最適化するのは、象をミニクーパーに詰め込もうとするようなものです)