タグ付けされた質問 「c#」

C#は、Microsoftが.NETプラットフォームと組み合わせて作成した、マルチパラダイムで管理され、強く型付けされ、ガベージコレクションされたプログラミング言語です。

1
列挙型と スキル値の整数
基本的なスキルと属性のシステムを実装していますが、どうすればよいかについて考え直しています。 たとえば、SkillType列挙型を使用してキーを表すDictionary / HashMapと、値を表す整数値を使用できます。しかし、これを行うべきですか? public class Skills { public IDictionary<StatType, Int> skills; //StatType is enum, being the key; the int //is the value. } vs. public class Skills { public int LongBlade, Armor, Marksman; //...etc } 基本的な整数だけを使用するのではなく、ここで型安全の利点を知りたいのですが。何かお勧めですか?
10 c# 

3
XNA Frameworkで構築されたIsometricゲームの優れた便利なリソースは何ですか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 6年前休業。 私は現在、Microsoft XNA Frameworkを使用してアイソメトリックゲームに取り組んでいます。等尺性エンジン、物理エンジン、スプライトエンジン(等尺性ゲーム用)、イベントハンドラーなど、このプロジェクトを成功させるために役立つリソースを探しています... 任意の入力をいただければ幸いです。

1
ジオメトリシェーダーから手続き型で生成された世界に物理を組み込むにはどうすればよいですか?
基本的に、CPUからGPUにコヒーレントノイズを生成する必要をなくしたいと思います。そこから、ボクセルポイントの密度としてこのノイズを使用して、3次元の世界の地形も生成したいと思います。この後、これらの密度を取得して、世界の地形を表すポリゴン化(頂点を生成)したいと思います。 これで問題ありません。でも、リアルタイムで世界を動的に変形させたい。この時点に到達すると、頂点をCPUに戻して、衝突検出や、GPUではなくCPUに関与させたいすべてのゲーム計算などを実行しようとして問題が発生します。 だから問題は、どうすれば他のものの間の衝突に対処するために頂点のサブセットをCPUに戻すことができますか? そしてもう1つの質問:頂点のセットを取得し、それらからGPUでインデックスを生成する簡単な方法はありますか? これらのさまざまな目的でどのようなシェーダーを使用する必要があるのか​​、また混乱しています。密度を収集するためにピクセルシェーダーを使用し、頂点からの地形生成を処理するためにジオメトリシェーダーを使用して、どういうわけか動的変形を行うために頂点シェーダーを組み込む人々の話を聞きました。 C#4.0、.NET 4.0、およびXNA Game Studio 4.0を使用しています。
10 c#  xna  shaders 

1
ゴルフボールの軌道方程式に空気抵抗を追加する
VB.NET 2005で2Dゴルフゲームを開発していますが、ボールに影響を与えるはずの空気または風の抗力を実装する方法に行き詰まっています。 すでに私は発射物のためのこれらの方程式を持っています: v0v0v_0は、ヒットまたは発射されたときのゴルフボールの初速度 垂直成分と水平成分、ゴルフボールの速度: vバツvy= v0c o s (θ )= v0s i n (θ )− gt ∗vx=v0cos(θ)vy=v0sin(θ)−gt∗ \begin{align} v_x &= v_0 cos(\theta) \\ v_y &= v_0 sin(\theta) - gt* \end{align} ゴルフボールの垂直および水平距離: バツy= v0c o s (θ )t= v0s i n (θ )t − (0.5 )gt2x=v0cos(θ)ty=v0sin(θ)t−(0.5)gt2 \begin{align} x &= v_0cos(\theta)t …

6
XNAでGame1を静的にするのは悪い考えですか?
私のGame1クラスを静的として持つのは本当に悪い考えですか?現在のところ、私のGame1クラスにはTileHandler、現在のタイルのセットに関係AnimalHandlerするすべてを処理し、すべての動物を(驚くほど)処理するというクラスがあります。 ここでAnimalHandler、タイルが歩き可能かどうかをチェックしたい場合にTileHandler問題が発生するか、歩き可能なタイルのリストをに渡す必要がありますがAnimalHandler、これは行いません。 何容易になるだろうことは作ることになりGame1、静的をし、その後にAnimalHandlerだけ行きますGame1._tileHandler.WalkableTile(position)。 これですぐに問題が発生したり、問題の原因となるものを確認したりすることはできませんが、静的クラスの使用を開始したばかりです。
10 xna  c#  architecture 

2
遅延レンダリングエンジンのシーングラフ
学習課題として、遅延レンダリングエンジンを作成しました。このエンジンにシーングラフを追加したいのですが、その方法に少し戸惑っています。 通常の(フォワードレンダリングエンジン)では、すべての項目(すべてIDrawableとIUpdateAbleを実装)をシーングラフに追加するだけで、最初にシーングラフの幅を移動し、どこにでもDraw()を呼び出します。 ただし、遅延レンダリングエンジンでは、描画呼び出しを分離する必要があります。すべてを組み合わせる前に、まずジオメトリを描画し、次にシャドウキャスター、次にライト(すべて異なるレンダーターゲットに対して)を描画する必要があります。したがって、この場合、シーングラフ上を移動して、drawを呼び出すだけでは済みません。私の見方では、シーングラフ全体を3回移動して、描画する必要があるオブジェクトの種類を確認するか、何らかの方法で相互に接続された3つの個別のシーングラフを作成する必要があります。これらはどちらも貧弱なソリューションのようですが、シーンオブジェクトをより透明に処理したいと考えています。 私が考えていたもう1つの解決策は、通常どおりシーングラフを移動し、アイテムを3つの個別のリストに追加し、ジオメトリ、シャドウキャスター、ライトを分離し、これらのリストを反復して正しいものを描画することでした。フレームごとに3つのリストを再入力するのは賢明ですか?
10 xna  c#  scene-graph 

3
エンティティを集約として作成する
私は最近、エンティティを動作から分離する方法と、この記事にリンクされている主な回答について尋ねました:http : //cowboyprogramming.com/2007/01/05/evolve-your-heirachy/ ここで書かれている究極のコンセプトは、純粋な集合体としてのオブジェクトです。 C#を使用してゲームエンティティを純粋な集約として作成する方法を知りたいのですが。これがどのように機能するかという概念はまだよく理解していません。(おそらく、エンティティは特定のインターフェースまたは基本タイプを実装するオブジェクトの配列ですか?) 私の現在の考え方には、関連するインターフェイス(IMoveable、ICollectable、ISpeakableなど)を実装する各エンティティタイプの具象クラスがまだ含まれています。 エンティティの具体的なタイプを持たずに、純粋に集約としてエンティティを作成するにはどうすればよいですか?

3
PBBGでC#よりもPHPを使用する理由 [閉まっている]
閉まっている。この質問は、オフトピック。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 2年前休業。 私はC#開発者であり、永続的なブラウザーベースのゲーム(PBBG)を構築する趣味のプロジェクトを開始したいと考えていました。私はC#、MSSQL、Angularを使用しており、趣味のプロジェクトでもこれらのテクニックを使用すると思いました。 doやdonts、tipsを検索し始めたとき、多くのプロジェクトがPHPを使用しており、C#を使用したPBBGを実際には見つけていないことに気付きました。私が使用しているスタック(C#、MSSQL、Angular)はPBBGに適しているようです。 C#が使用されていないと考えることができる唯一の理由は、Visual Studioの高額な価格と、それがオープンソースではなかったという事実です。 他に理由はありますか、それともC#を使用するプロジェクトを見つけるのが苦手ですか?それとも私は自分の仕事が苦手で、このスタックがPBBGに適していないことに気付かないのでしょうか?

7
何百もの「ゲーム内」キャラクターをどのように構成/管理するか
UnityでCrusader Kings 2のような何百ものキャラクターを含むシンプルなRTSゲームを作成してきました。それらを格納するための最も簡単なオプションはスクリプト可能なオブジェクトを使用することですが、実行時に新しいオブジェクトを作成できないため、これは良い解決策ではありません。 そこで、すべてのデータを含む「Character」というC#クラスを作成しました。すべてが正常に動作していますが、ゲームをシミュレートすると、常に新しいキャラクターが作成され、一部のキャラクターが殺されます(ゲーム内イベントが発生するため)。ゲームが継続的にシミュレートすると、数千のキャラクターが作成されます。機能の処理中にキャラクターが「生きている」ことを確認する簡単なチェックを追加しました。したがって、パフォーマンスは向上しますが、家系図を作成するときに彼/彼女の情報が必要になるため、死んでいる「キャラクター」を削除することはできません。 ゲームのデータを保存するには、リストが最善の方法ですか?または、10000のキャラクターが作成されると問題が発生しますか?考えられる解決策の1つは、リストが特定の量に達したら別のリストを作成し、その中のすべての無効な文字を移動することです。
10 unity  c# 

2
動的に変化するメッシュに泡跡を投影する方法
私は水を作成しようとしていますが、今はメッシュ上に動的に波を発生させています。しかし、今私は私のボートにこれらの波を操作させて、これの上にケルビンウェイクを起こさせたいです。 事実は、異なるパターンを使用して水を生成し、同じパターンを動的に繰り返します。それで、動的に生成されたメッシュ(平面)の上にこれをどのように生成しますか?他のタイル(プレーン)も操作せずに?
10 c#  unity  rendering 

6
Visual Studio 2012とゲーム開発[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 5年前休業。 わかりました。簡単な質問だと思いますが、いくつかの回答を見つけるのが難しくなりました。 XNAはVisual Studio 2012にはないことを既に読みました。最近XNAの使用方法を学びましたが、ゲームで作業したいので、Visual Studio 2012でC#を使用してゲームを開発する方法があるかどうか知りたいです。 、またはC ++とDirect3Dを使用してすべてをもう一度学ぶ必要がある場合はどうなりますか? C#は私が大好きな言語なので、C#でそれを行う方法がなくても、ゲーム開発にJavaを使用するのが非常に簡単なものであれば、私も興味があります。 どうもありがとう!
10 xna  c#  3d  directx  .net 

2
XNA Game Servicesと栄光のグローバル変数の違いは何ですか?
このMicrosoft.Xna.Framework.Gameクラスには、プログラマーがクラスのタイプとクラスのインスタンスをAddメソッドに提供することによってゲームにサービスを追加できるようにするServicesプロパティがあります。 これで、AudioComponentを必要とするすべてのクラスとメソッドにを渡す代わりに、Gameインスタンスを渡してサービスを検索するだけです。(サービスロケーター) ゲームには多くのサービス(GraphicsDevice、SceneGraph、AudioComponent、EffectsManagerなど)があるため、基本的にはすべてにGameを渡します。 では、なぜこれらのインスタンスをシングルトンにしないのですか?まあ、シングルトンはグローバルな状態を持ち、テストを防ぎ、設計をはるかに脆弱にするため、悪いからです。サービスロケーターは、オブジェクトへの依存関係を渡すだけでなく、そのクラスを他のサービスと結合するサービスロケーター(ゲーム)を渡すため、多くの人にとってアンチパターンと見なされます。 では、なぜXNAおよびゲーム開発でサービスが推奨されるのでしょうか。それは、ゲームが通常のプログラムとは異なり、それらのコンポーネントと密接に絡み合っており、クラスの機能に必要なすべてのコンポーネントを渡す必要が非常に煩雑になるためでしょうか?そのとき、ゲームサービスはゲームデザインに必要な悪ですか?長いパラメーターリストと結合を含まない代替手段はありますか?
10 xna  c#  architecture 


3
Farseer 2.xが一時ではなく、メンバーとしてスタックを格納するのはなぜですか?(。ネット)
更新:この質問は、Farseer 2.xに関するものです。新しい3.xではこれができないようです。 現在、Farseer Physics Engineを非常に広範囲に使用していますが、クラスのメンバーとして多くの一時的な値の型を格納しているように見え、期待どおりにスタックに格納されていないようです。 これはBodyクラスの例です: private Vector2 _worldPositionTemp = Vector2.Zero; private Matrix _bodyMatrixTemp = Matrix.Identity; private Matrix _rotationMatrixTemp = Matrix.Identity; private Matrix _translationMatrixTemp = Matrix.Identity; public void GetBodyMatrix(out Matrix bodyMatrix) { Matrix.CreateTranslation(position.X, position.Y, 0, out _translationMatrixTemp); Matrix.CreateRotationZ(rotation, out _rotationMatrixTemp); Matrix.Multiply(ref _rotationMatrixTemp, ref _translationMatrixTemp, out bodyMatrix); } public Vector2 GetWorldPosition(Vector2 …

2
クラスのあいまいさなしにUnityで乱数を生成する
Unity(C#)で乱数を作成したいのですが問題があります。私は使用したかったのですがSystem.Random(参照:using System)、Unityは自分自身にはあいまいだと不平を言っていUnityEngine.Randomます。名前空間ではないため、(を使用してSystem.Random)参照を指定できませんrandom。Unityシステムではなくシステムをランダムに使用するように指定するにはどうすればよいですか?
10 unity  c# 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.