私は2DのオーバーヘッドRPGゲーム上での開発を始めているし、武器の衝突を処理し、敵にダメージを与えるための最良の方法が何であるか疑問に思って。 私は現在、私のゲームオブジェクトのための基本的なエンティティ/コンポーネント構造を使用しています。 私はEquipableEntityデータメンバを持つCharacterEntityを、持っている。 CharacterEntityは、入力をリッスンするコンポーネントを持っています。 攻撃するコマンドを受信した場合、CharacterEntityは攻撃成分が整ったエンティティを取得し、攻撃動作中に移動攻撃モードに設定されている。
アディダス アディゼロ 世界における移動整っエンティティで検出された衝突は、その後、攻撃が成功するように登録されています。 現在はそれだけで刺すモーション(それが戻った後で、xの長さに外に移動)です。 私はこのようにそれをした理由はあった: 1)私は、剣ではなく、単に 攻撃は、この一般的な領域で発生しましたと言って、すべての敵を一度に更新するのでは、それらのパスを横切るように敵がダメージを受けると応えたかった。 実際剣エンティティはそれのパスを横切るまで刺す場合、剣の全長で敵はダメージを取らないだろう。 2)武器はそれが簡単にアニメーションやゲームと同期するようになり、画面上に自分の外観との境界を定義します。 私は、(あなたが既にあることを考え出していない場合)は、ゲーム開発に完全に新たなんだ。
adidas バッシュ これは私が探している結果を達成するための適切な方法、または完全なやり過ぎでしょうか? どのTerraria(武器は抜本的なモーションで動く場合)またはゼルダシリーズのハンドルのようなゲームは攻撃とヒットするかを敵に決定したときでしょうか? 私は右のパスまたは完全にオフの午前? 何かアドバイスや提案をいただければ幸いです。 ゲームは衝突にあなたがそれを望むように解決していますか? もしそうなら、私はあなたがオフに全く追従しているとは思わない。 ここには右または間違った答えはありません。 ロジックの決定これらの種類は完全にオープンであり、あなたが行動するあなたのゲームを想像する方法に基づいて行われなければならない。 ゲーム開発者は日常的にこのような決定を下す。 私は何を言うことはこれです:Terrariaは、プラットフォームのゲーム、およびその時点で非常にレトロです。 これが意味することは、通常衝突検出などへのより単純なアプローチで逃げることができるである。
アディダス バッシュ あなたが実装したアプローチ。 私はまた、近接戦闘でトップダウンのアクションゲームを書いています。 私のアプローチは、剣のスイングなどが、正確な現実、そしてプロセスに非常に高速になるように、衝突検出のためBOX2Dを使用することでした。 現実的な手段による攻撃は、オブジェクトへの線形および角度の衝撃を与えるでしょう。 だから、あなたが何かを打ったとき、それが回転することができますし、ノックバックする。 あなただけの、いわば、ゲーム開発の水をテストしている場合は、それをシンプルに保つ:スティックをあなたの現在のソリューションで、今の 。
PR