タグ付けされた質問 「timer」

2
ゲームプレイアクションを特定のアニメーションタイミングに同期するための良いテクニックは?
私が取り組んでいるゲームで問題に遭遇しましたが、それはおそらく多くのゲームで登場するかなり基本的なことのようです。 私のゲームでは、キャラクターアニメーションの特定の時点でゲームプレイ機能を実行する必要があります。そして、タイトルが示すように、ゲームプレイ関連のイベント/機能/アクションをキャラクターのアニメーションの特定のポイントに同期するためのいくつかの優れたテクニックと基本的な戦略は何なのかと思っています。 ここでは、さまざまな種類のゲームで私が話していることの簡単な例をいくつか示します。 あなたのキャラクターはシューティングゲームで彼らの銃をリロードします。キャラクターは「リロード」アニメーションを再生しますが、currentAmmo変数を設定する関数は、マガジンが交換されて銃がコックされた直後にのみ呼び出されることが重要です。これは、リロードアニメーションの途中の可能性があります。 では、ターンベースのRPGあなたのキャラクターは敵のラインが直面しているラインに立ちます。攻撃するように命じられると、キャラクターの1人が敵の1人まで走ったりジャンプしたり、立っている場所に走ったりジャンプしたりする前に巨大な剣を斬ったりします。スラッシュアニメーションが再生される正確なタイミングで敵がダメージを受けていることを確認する必要があります。 ではステルスゲーム、あなたのキャラクターがこっそりすることができ、世界でコンピューターとボタンと対話します。多分あなたが浸透している前哨のライトへの電力供給をオフにするボタンがあるでしょう。アクションボタンを押すと、キャラクターが手を伸ばしてボタンを押し、アイドル状態に戻ります。ボタンが押されたときに、「push_button」アニメーションの正確なポイントでライトをオフにしたい。 確かに、私の特定のケースは2番目の例に最も似ています。この例では、攻撃中にターンベースのキャラクターが前方に突進するアニメーションを作成し、アニメーションが接触していると思われる瞬間にダメージを適用したいと考えています。 。私のゲームはターンベースのシステム(ファイナルファンタジーやファイアーエンブレムのようなものを想像してください)を使用しているので、ダメージ/ヒーリング/マジックなどが必要です。実際にコリジョン/ヒットボックスを使用していなくても、各キャラクターアニメーションの正しいタイミングで適用されます。 私は人気のあるゲームエンジンでゲームを作成していること、そして今はアニメーションイベントまたは通知を使用してこれを処理し、望ましい結果に近い何かを達成することを言及しなければなりません-キャラクターが特定のコマンドを実行してトリガーしますコマンド固有のアニメーション(つまり、「attack_command」)と各コマンドのアニメーションアセットには、アニメーションイベントを含める/キャラクターのExecuteCommand関数に「コールバック」を通知する必要があります。言い換えると、キャラクターは攻撃アニメーションに再生を指示し、攻撃アニメーションはダメージが与えられるべきアニメーションの正確な瞬間にイベント/通知コールバックをキャラクターに送信します。 正直なところ、これは今のところ機能しますが、ここでは全体像の一部が欠けているように感じられます。このメソッドが間違っていると感じる理由の1つは、ゲームロジックとアニメーションアセットを結合することです。アニメーションアセットにExecuteCommand()イベント/コールバックを含めるのを忘れた場合、コマンドは正しく実行されず、コマンドを実行せずにコマンドアニメーションが終了したかどうかを確認するには追加のコードが必要です。それは乱雑で、私のゲームプレイがそのアセットに奇妙な依存関係を持っていることを意味します。もちろん、攻撃アニメーションの特定の時点でダメージが発生するようにしたいのですが、アニメーションアセット内のゲームプレイコードを呼び出すのはとても変です。 だから私はここで見落としているものは何ですか?アニメーション中に特定の時間に特定の重要なゲームプレイアクションを発生させたい場合に、このようなタイプの状況を処理するための優れた一般的なテクニックは何ですか? 編集:明確にするために、これはエンジン固有の質問ではなく、エンジン固有の設計/手法も探していません。使用しているテクノロジーに関係なく、ゲームプロジェクトで使用できる一般的なアニメーション/ゲームプレイ同期手法に興味があります。

2
Java 2Dゲームプログラミング:ゲームループを作るためのさまざまなアプローチ
私はJavaゲームプログラミングに不慣れですが、ゲームループを作成するためのいくつかの異なるアプローチを見てきたので、読むほど、混乱します。1. Timerクラスを使用する標準的なアプローチ(少ないようです)正確)。2. System.nanoTimeを使用するより正確なアプローチ。3. scheduleAtFixedRateを使用する単純なアプローチ。 一般的にどちらを優先する必要があり、各アプローチの利点と欠点はどこにありますか?事前に情報をありがとうございました。

5
Vector3で演算子 '> ='を使用できないのはなぜですか?
私は私がように参照する2つの位置の間を移動するための四角形を取得しようとしている_positionAとします_positionB。どちらもタイプVector3です。長方形はうまく動きます。ただし、到達_positionBしても、本来のように反対方向に移動することはありません。 コードをもう一度見てみました。オブジェクトが移動ifすると、コード内のステートメントは、rectsの位置がに等しいフレームを逃したという結論に達しました_positionB。rectsの位置がより大きいか等しい 場合は、コードを変更して方向を逆にすることにしました_positionB。私のコードは長すぎないので、以下に表示します。 using UnityEngine; using System.Collections; public class Rectangle : MonoBehaviour { private Vector3 _positionA = new Vector3(-0.97f, -4.28f); //Start position private Vector3 _positionB = new Vector3(11.87f, -4.28f); //End position private Transform _rect_tfm; private bool _atPosA = false, _atPosB = false; public Vector2 speed = new Vector2(1f, 0f); private …
9 unity  c#  vector  mathematics  vector  matrix  unity  c#  transformation  java  3d  terrain-rendering  shading  ios  opengl-es  opengl  rendering  optimization  python  scripting  minecraft-modding  modding  pc  3d-meshes  mesh  culling  point-cloud  networking  interpolation  mathematics  game-design  ai  game-mechanics  animation  unreal-4  skeletal-animation  3dsmax  unity  c#  3d  opengl  c++  textures  unity  ide  cocos2d  cocos2d-x-js  unity  c#  mono  il2cpp  c++  game-loop  timer  linux  flash  actionscript-3  java  glsl  c++  vector  entity-component  c++  directx11  windows  visual-studio  libgdx  mouse  unity  c#  architecture  storage  unity  c#  rotation  coordinates  quaternion  vrpn  movement  vector  unreal-4  unity  shaders  unity  gui  text  bug  shooter  3d  animation  rendering  voxels  c++  mmo  multithreading  linux  textures  procedural-generation  terrain-rendering  multiplayer  mmo  game-state  java  android  libgdx  opengl  procedural-generation  unity  gui  3d  animation  tools  geometry-shader  mobile  advertisements  unity  c#  animation  scripting  unity  animation  unityscript  coroutines  unity  shaders  lighting  camera 


3
タワーの防衛ゲームで動きを継続的に更新する効果的な方法は?
私たちは大学の1年生のプロジェクトとしてタワーディフェンスゲームを作っている4人の男です。ゲームは本当にシンプルになるでしょう! 3つの異なる塔 3つの異なるモンスター 1つのマップ(時間があれば、さらに追加する可能性があります) ゲームはオブジェクト指向でなければなりません。 クラス構造は以下の通りです ゲーム -グラフィックの描画など レベル -すべてのレベルはこのクラスのオブジェクトです。各レベルには、有限数のウェーブオブジェクト(リスト内)があります。 Wave-モンスターオブジェクトのリストが含まれています。 モンスター -これはスーパークラスです。モンスターの種類ごとにサブクラスを作成します タワー - タワーのスーパークラス。タワーのタイプごとにサブクラスがあります。 多くのオブジェクトが同時に何かをしなければならないという問題を解決する方法を考えています。たとえば、1ピクセルを1方向に移動します。 私たちが思いついたのは、オブジェクトがいつ動作するかを制御するために、avクラスTimerを実装するという考えです。これが最善の方法かどうかはわかりません。誰かが継続的な更新ケースを解決する方法についていくつかの良いアイデアを与えることができますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.