問題タブ [xna-4.0]

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.

0 投票する
2 に答える
1129 参照

f# - XNA 4.0-ウィンドウが最小化されるとどうなりますか?

私はF#を学んでいて、F#(純粋な熱意)を使用してウィンドウ用の単純なXNAゲームを作成してみることにしました。そして、いくつかの画像が表示されたウィンドウを取得しました。

コードは次のとおりです。

そして、AddSpriteメソッド:

_listオブジェクトにはContentManagerがあります。コンストラクターは次のとおりです。

しかし、ウィンドウを最小化することはできません。ウィンドウがフォーカスを取り戻すと、次のエラーが発生するためです。

ObjectDisposedException

破棄されたオブジェクトにアクセスできません。
オブジェクト名:'GraphicsDevice'。

何が起こっている?

0 投票する
1 に答える
810 参照

c# - ピボットを中心とした 2 つの Vector2 間の回転を計算する

代替テキスト皆さんこんにちは。

長い日曜日のグーグルの後、私は頭を下げて恥ずかしがり、質問をしなければなりません...

私が持っているのは、ピボット vector2、「前の」vector2、および「現在の」vector2 です。

それらの間のラジアンで回転を計算できるようにしたいと思います。少し複雑なのは、ピボットが以前と現在の間で移動する可能性があるという事実ですが、それをフォールドに持ち込む時間がない場合、別の問題としてオフセットをうまく処理できません。

明確にするために、ピボットとベースの2つのベクトルを持つオブジェクト...中央にあるピボットと下部のベースは、外部ピボットを中心に回転します。上記の 2 つのベクトルを使用して、オブジェクト自体の中心を中心とした回転を計算する必要があります。

助けてくれる人にとても感謝します。

問題の背景

オブジェクトが外部ピボットを中心に回転するゲームがあります。2 つのポイント (オブジェクトの中心に 1 つ、オブジェクトのベースに 1 つ) を使用して、適用されたより大きな回転に適合するために、その中心の周りのオブジェクト スプライトに適用する必要がある回転を計算したいと考えています。 .

0 投票する
3 に答える
2041 参照

c# - ある点の別の点の回転をラジアンで計算する

私はこの問題を1週間解決しようとしてきましたが、解決策にたどり着きました. 私が持っているのは 2 次元空間の 2 点です。解決する必要があるのは、一方の回転が他方の周りにあることです。運が良ければ、添付の図が役に立ちます。計算できるようにする必要があるのは、a の周りの b の回転値です。

代替テキスト

内積などを見つけることを示す多くのものを見つけましたが、まだその黄金の解決策を探しています:o(

ありがとう!

0 投票する
3 に答える
595 参照

c# - 小さな3Dアプリケーションに最適なフレームワーク

WindowsOS用の3Dオブジェクトを使った簡単なアプリケーションを書きたいです。

アプリケーションは非常にシンプルで、移動して写真を見ることができるギャラリーのようです。ユーザーがいくつかの写真に移動してクリックすると、ウィンドウが開き、いくつかの情報を含む写真が表示されます。

このタスクのWPF、XNA、またはその他に最適なフレームワークはどれですか?アプリケーションはC#で記述されます。

0 投票する
1 に答える
792 参照

c# - GraphicsDevice.Viewportが間違った場所にあるのはなぜですか?

私はから派生GraphicsControlControlます:

次に、派生したCanvas コントロールは次のようになります。

マウスの動きに反応する領域は、画面の左上(0、0)にあります。全体の領域は目的の基本コントロールとオーバーラップしますが、ドッキングされておらず、親コントロールを満たします。画像を参照してください:

ビューポートは、目的の親コントロール領域を埋めません。

誰かが私が間違っているかもしれないことを教えてもらえますか?追加のコードが必要な場合は、質問してください。

また、MSDNはClientRectangle使用するプロパティとして参照しているようです。

0 投票する
3 に答える
660 参照

c# - Xna とシステムの名前空間の競合

新しい抽象クラスを宣言しようとしています

しかし、私がそれをコンパイルしたとき、私はこの警告を受けました:

「WinFormsContentLoading.GraphicsDeviceControl.Update()」は、継承されたメンバー「System.Windows.Forms.Control.Update()」を非表示にします。非表示が意図されている場合は、new キーワードを使用します。

しかし、システムではなく Microsoft.Xna 名前空間を使用したい

0 投票する
4 に答える
5224 参照

xna - XNAのToggleFullScreenは、エラーのようなデバイスの紛失を引き起こします

最初のXNAゲームを作成しようとしていますが、ALT+ENTER機能を組み込んでフルスクリーンモードとウィンドウモードを切り替えたいと思います。私のゲームは今のところ非常に基本的で、派手なものは何もありません。LoadContent関数でウィンドウ(デフォルト)またはフルスクリーン(ToggleFullScreenを呼び出す)のいずれかで実行することができ、すべてがうまく機能します。

ただし、まったく同じコードを使用してUpdate関数でToggleFullScreenを呼び出すと、ゲームが失敗します。ウィンドウを開始して全画面に切り替えると、フリーズし、1つのフレームしか表示されず、キーボード入力を受け入れないように見えます(CTRL + ALT + DELを実行する必要があります)。フルスクリーンを開始してウィンドウに切り替えると、DrawIndexedPrimitiveでエラーが発生し、「現在の頂点宣言には、現在の頂点シェーダーに必要なすべての要素が含まれていません。Normal0がありません。」というメッセージが表示されます。(これは正しくありません。私の頂点バッファーはVertexPositionNormalTextureであり、データが含まれており、GraphicsDeviceのステータスはNormalです)。

これらの問題はどちらも、何らかの理由でデバイスとの接続が失われていることを示しているようですが、その理由はわかりません。私がオンラインで見つけたすべてのリソースは、フルスクリーンの切り替えはToggleFullScreen関数を呼び出すのと同じくらい簡単であり、デバイスやバッファーのリセットについては言及していません。何か案は?

編集:ここにいくつかのコードがありますが、無関係なものは省略されています:

0 投票する
1 に答える
738 参照

windows-7 - XNA 4.0 WP7 ゲーム ボリューム コントロール

app-hub にゲームを送信する前に、ここで少しクエリを実行したいと思います。マイクロソフトは、ゲーム内の音楽の中断に関して厳格なポリシーを設定しています。私は、「.../バックグラウンド ミュージックを調整する」と書かれているものを除いて、すべてに従いました。ただし、MediaPayer音量の値は変更される可能性があります。ゲーム内のユーザーがこのコントロールを調整できるようにします (ボリューム)。ご意見やご提案をお待ちしております。

0 投票する
1 に答える
1118 参照

xna - XNA マウス ピッキングの問題

私はこのネズミを摘むものの上で髪を引っ張っています。問題がレイの計算にあるのか、BoundingSpheres にあるのかはわかりませんが、レイの計算のコードは次のとおりです。

交差チェックの場合:

まったく機能していないわけではありませんが、非常に不正確なようです...または何か。モデルはただの球体で、非常に単純です。どんな助けや洞察も大歓迎です!ありがとう!

0 投票する
1 に答える
2259 参照

c# - 画像からその場で XNA スプライトを作成する

ユーザーがアップロードした .png としましょう。この画像のサイズは固定です。たとえば、100x100 とします。

この画像で4つのスプライトを作成したいと思います。

(0,0) から (50,50) までの 1 つ

(50, 0) から (100, 50) までの別の

(0, 50) から (50, 100) までの 3 番目

最後は (50, 50) から (100, 100) まで

好みの C# でそれを行うにはどうすればよいですか?

助けてくれてありがとう