先日、Nvidia Hairworks技術の採用により、もっふもふと化した馬やモンスター、狼の技術デモ映像をご紹介した人気RPGシリーズ最新作「The Witcher 3: Wild Hunt」ですが、新たにGDCパネル向けに作成されたPDF資料が閲覧可能となり(参考:地形と植生、LOD、カリング)、本作の圧倒的なビジュアルを支える多様な技術の興味深いイメージが登場しました。
また、本作の広大なオープンワールド支えるオクルージョンカリングとデータストリーミングを実装するため、REDengine 3に著名なミドルウェアUmbra 3を統合したことに加え、LODの生成にSimplygonが採用されていることが判明しています。
テクスチャのゴールとして提示されたイメージ
岩を含む地表と雪、傾斜に絡むコントロールマップなど、多数のレイヤーで構成されている
傾斜ベースの湿度表現例、スロープの調整で水たまりとの境界に変化が見られる
背景テクスチャとオーバーレイテクスチャ、スロープのしきい値を16bitのコントロールマップで制御している
同じくスロープ適用のしきい値を変化させたリアルな積雪表現の例
背景テクスチャの傾斜確度を演算し、その後任意のしきい値を適用させている
ただし、この手法は起伏に乏しい石畳には有効ではない
2つの異なるテクスチャから新しいテクスチャを生成可能
生成結果はどちらがバックグラウンドとなるかによって変化する
2つのテクスチャから新たなテクスチャを生成した例
背景テクスチャにはTri-Plannarマッピング(3次元投影)が適用されるが
パフォーマンスを考慮し、オーバーレイテクスチャ用のTri-Plannarマッピングは用意されていない
本作に実装された広域なテランシャドウ
テランシャドウの適用例、樹木に山の陰が落ちている
プロシージャル生成された地形の例
こちらもプロシージャル生成された広大な地形
広さは約74平方kmでThe Witcher 2の約35倍に匹敵する
傾斜のビジュアル例
The Witcher 3におけるプロシージャル生成された草表現の例
地形にマッチし、多様に見え、早い生成を目指している
同じくプロシージャルな草生成の例
草は地表に座っているわけではないと紹介されたイメージ
右側がCDPが目指す草表現、草が目立たず地表に溶け込んでいる
広域な植生の生成例、LOD生成とカリング用にSpeedTreeを採用している
Umbraを利用したカリング用データストリーミングの生成中
大小のタイルに分類され描画するオブジェクトコレクションの選定を行っている
移動に伴うカリング用データストリーミングの推移
Simplygonを利用したLoD用の高品質なポリゴンリダクション例
地形と植生のビジュアル例
本作において改善された草表現の例(右)
Pigmentマップを利用しバーテックスシェーダーに色を加えることで、草の下にある地面の色を描画している
同じく草表現の改善例(右)
バーテックスシェーダーに対するPigmentマップの適用量を描画距離によって調整し草を地面に馴染ませている
なお、Pigmentマップは生えている植物の種類によって適用の有無が調整される