『Warlander』でも使われた、大量の草をインタラクティブに揺らす仕組みをトイロジックが解説

『Warlander』でも使われた、大量の草をインタラクティブに揺らす仕組みをトイロジックが解説

2022.12.12
ニュース
この記事をシェア!
Twitter Facebook LINE B!
Twitter Facebook LINE B!

この記事の3行まとめ

  • 大量の草をインタラクティブに揺らす仕組みを紹介する記事が、トイロジック技術開発ブログにて公開
  • 投影テクスチャと頂点シェーダを使った草揺れの手法とその利点と問題点を紹介
  • その手法の解決策として、2チャンネルのHeightfieldの情報を使うDual Heightfield Trailについて解説

トイロジックは、『Dual Heightfield Trailによるインタラクティブな草揺れ表現について』と題した記事を、同社の技術開発ブログにて公開しました。

(画像はブログより引用)

公開された記事では本題に入る前に、大量の草をインタラクティブに揺らす仕組みの例として、投影テクスチャ頂点シェーダによる手法が紹介されています。

これは、真上から投影したテクスチャにフレームごとに足跡などを描画し、草の頂点シェーダで参照して草を曲げるという手法です。

(画像はブログより引用)

この手法はキャラクターや草が増えてもパフォーマンスが落ちにくいなどの利点があります。

一方で、高さの情報がないため、キャラクターが空中にいる時など、草に触れていないシーンでも草が揺れてしまう問題があると言及しています。

投影テクスチャと頂点シェーダによる草揺れの手法だと、たとえば地形が上下に重なっている場合、無関係な草も揺れてしまう(画像はブログより引用)

その解決方法として取り上げられているのがGame Developer Conference 2019(GDC2019)で発表された、Dual Heightfield Trailという手法です。

GDC2019で行われたInteractive Wind and Vegetation in ‘God of War’の講演動画

この手法ではRチャンネルGチャンネルによる2種類のHeightfieldを使用します。

Rチャンネルは足跡の高さを示し、GチャンネルRチャンネルを毎フレームフェードアウト(上昇)させたものです。

(画像はブログより引用)

草揺れ表現への利用としてRチャンネルでは草が踏まれたかどうか高さの比較により判断し、Gチャンネルでは踏まれてからの経過時間を割り出して草の揺れ幅のコントロールに使用できるとのこと。

同記事では、トイロジックが開発中のタイトル『Warlander』での利用例なども紹介されています。

(画像はブログより引用)

トイロジックが開発しているタイトル『Warlander』でのDual Heightfield Trailによる、インタラクティブな草揺れ表現の利用例

詳細は、トイロジック技術開発ブログをご確認ください。

『Dual Heightfield Trailによるインタラクティブな草揺れ表現について』トイロジック技術開発ブログ

関連記事

VATの代替手段として、UVに頂点アニメーションを格納するアプローチを紹介。C&R Creative Studiosがブログ記事を公開
2025.08.29
プログラミング不要のRPG制作ツール『RPG Developer Bakin』が正式リリース。無料体験版もあわせて公開
2025.08.28
プログラミング初心者がつまずくポイントを丁寧に解説。『C++ ゼロからはじめるプログラミング』、翔泳社が9/8(月)に発売
2025.08.28
Epic Gamesのマーケットプレイス「Fab」、9/9(火)までの期間限定で無料コンテンツを公開。煉瓦壁の会議室や、ツタが生い茂る廃病院など3製品
2025.08.27
Houdiniの最新バージョン「Houdini 21」リリース。APEXなどのベータ機能がproduction readyに移行するなど、既存機能が大幅強化
2025.08.27
バーチャルパッドの入力ボタンなど80種類以上。無料アイコンパック『Mobile Controls』、Webサイト「Kenney」で公開
2025.08.27

注目記事ランキング

2025.08.24 - 2025.08.31
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

ロード(Load)
ロード
  1. コンピューターの補助記憶装置(HDDなど)に保存されたデータを読み込んで、主記憶装置(メインメモリ)上に展開すること。
  2. ゲームにおいて、セーブデータを読み込んで中断時の状況を再現すること。
VIEW MORE

Xで最新情報をチェック!