タイルベースのハック&スラッシュゲームで使用される一般的なキャラクターアニメーションテクニックは何ですか?


10

現代のハック&スラッシュタイプのタイルベースのゲームで、クリーチャーとキャラクターのアニメーションにはどのようなアニメーション技法が使用されているのでしょうか?さまざまなアクションのキーフレーミングは1つのオプションです。骨格フレーミングは別かもしれません。しかし、物理学はどうですか?それとも、スケルトン、物理学でサポートされ、よりリアルなアニメーションのために補間されたキーフレームと混合されたインバースキネマティクスの完全にハイブリッドなシステムを使用していますか?もしそうなら、どのようにそしてどのような理由で?以下の問題にはさまざまな解決策が考えられますが、次のような問題に何が使用され、最も適しているのでしょうか。

  1. 起伏のある地形での歩行または移動
  2. 戦闘の相互作用、戦闘の物理学、衝突
  3. 剛体アイテムをキャラクターとそれらの反復にアタッチする物理世界
  4. 髪の毛、植生、衣服、布地などのソフトボディのダイナミクスがアニメーションと反復に沿って表示されます。

回答:


6

3Dに見えるかもしれませんが、「ハックアンドスラッシュ」ゲーム(Diabloなど)は実際には2Dゲームです。多くの場合、コンポーネント(スプライト)は3Dモデリングツールで作成されますが、実際のゲームではスプライトの2Dレンダリングのみが使用されます。このタイプのゲームは、視覚的な表現よりも、データのやり取り(マップ、プレイヤー、宝物、モンスター)について多くの傾向があります。

2Dゲームは動的アニメーション(スケルトンと変形)を使用しない傾向があります。代わりに、アニメーションは3Dパッケージで作成され、画像のライブラリとして保存されることがよくあります。スプライトには、画像のルックアップテーブルがあります(1つの大きなスプライトシートまたは一連の個別の画像として保存されます)。ゲームアニメーションフェーズ中に、スプライトは、スプライトの現在の状態に基づいて、表示する画像を決定します。たとえば、8方向に歩く牛のアニメーション(http://www.aharrisbooks.net/pythonGame/ch08/cow.py)があります。各方向は10フレームのアニメーションです。

http://wwww.aharrisbooks.net/pythonGameにあるPythonのその他の例)

サンプルプログラムは、方向とフレームをチェックし、適切な画像を表示します。私の例はPythonで書かれていますが、言語は重要ではありません。考え方は変わりません。

スタックにアニメーションを追加するだけで、さまざまな状態(戦闘中、負傷中など)の視覚的側面を処理できます。

ただし、これらのもののより難しい側面はデータの側面です。たとえば、地形はどのように管理されますか。A *アルゴリズムのバリエーションを使用して、スプライトの場所と行きたい場所の間のパスを選択し、各ノードに何らかの重みを追加して、その地形の難しさを表現します。(道路は非常に軽量で、山と海は非常に「重い」でしょう)

おそらく、2Dエンジンのソフトボディダイナミクスについては心配しません。これは後で追加できますが、ゲームの機能にとって重要ではありません。

あなたは確かに3Dで「ハックアンドスラッシュ」を構築することができます。ただし、3Dモデリングに追加された課題により、この種のゲームにプレイヤーを引き付けることが多いゲームプレイメカニズムに集中することが難しくなっています。

幸運を祈ります。


まず、ゲームのダイナミクスと、ハックゲームとスラッシュゲームに違いをもたらす詳細について、あなたは非常に正しいです。そしてディアブロの例では真実です。スプライトのコンセプトは、ultima onlineのような多くのタイルベースのh&s、frp、mmorpgゲームで同じです。しかし、私が思っていたのは、ウォークラフトスタイルのモーションです。クリーチャーの足が見えるように十分にズームインすると、傾斜したタイルがあり、クリーチャーの片足が高地にあり、もう一方の足が低地にあり、衝突がないことがわかります。たぶんハック&スラッシュは私の質問の正しい言葉ではありません。
Gorky

WoWゲームファイルからメッシュ/オブジェクト情報を取得するためのツール/メソッドがあると聞きました。それが光を放つかもしれないのだろうか?
Kara Marfia、2011年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.