問題タブ [entity-component-system]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Ashley ECS で有限ステート マシンを使用してプレーヤーをアニメーション化する
学校で大きなプロジェクトがあり、libGDX を使用して Pixel Platformer ゲームを開発しています。
ほとんどの部分で ECS を使用していますが、プレーヤーの状態または少なくとも攻撃の状態を区別できないため、プレーヤーのアニメーションのレンダリングに問題がありました。
プレイヤー状態クラス
ちょっとお見せしましょう、だから私はこの「動き」の状態を持っています:
Player Animations Enum
ただし、プレーヤーのアニメーションには少なくとも次の状態が必要です。
このパックされたテクスチャには、さらに多くのものがあります: Player Animations Atlas
PlayerAgent クラス:
アニメーション コード
プレーヤーを処理する AnimationSystem のコード:
Grounded -> Idle, Walking のような状態の中に状態を持たせることを考えていました。しかし、プレイヤーを AttackStates にする方法はまだわかりません。
c# - ディクショナリ値を出力パラメータおよび参照として変更
Entity-Component-System の例を作成したいと考えています。私は次のようなコンポーネントを持っています
と
実装する
コンポーネントをループするときは、できるだけ早く見つけたいと思っています。コンポーネントの型をキーに、コンポーネントを値に取るディクショナリを作成することを考えました。
2つの問題が発生します。
誰かが を使用して新しい MovementspeedComponent を作成し、
float movementspeed
それを追加しようとした場合はどうなりますか? フロートが 2 つあると、重複キー例外がスローされます。IComponent
重複を防ぐためにインターフェイスを実装するカスタム構造体コンポーネントしか追加できませんでした。コンポーネントを変更しようとすると、参照によって変更されません
/li>
助言がありますか?