問題タブ [xbox360]
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.
testing - XNA開発を行っているときにコードが360で動作することを確認する方法はありますか?
Xbox 360に展開することを目的として、XNAでカジュアルゲームに取り組んでいます。数週間はハードウェアにアクセスできず、締め切りが迫っているので、テストしたいと思います。いくつかのこと(Booといくつかのカスタムライブラリ)が360で正しく機能すること。そうでない場合は、後でではなく早く回避する必要があるため、これをテストすることは非常に重要です。
それを説明した上で、実際に360にデプロイする前に、ある種の「シミュレーター」に入って.NET Compact Framework for 360でコードを実行する方法はありますか?
matrix - Xbox 360 での GPU プログラミング
Xbox 360 での XNA についての洞察を探しています。主に GPU でベクトルベースの浮動小数点演算を実行できるかどうか?
方法があれば、正しい方向に向けてもらえますか?
xna - XBOX 360 で DVD または CD から XNA でコンパイルされたゲームを実行しますか?
XBOX 360 用にコンパイルされた XNA ゲームを DVD または CD から実行することは可能ですか? それとも HD にコピーする必要がありますか?
.net コンパクト フレームワークの一部ではないライブラリを XBOX 360 プロジェクトに含めることはできますか?
xna - XBox 用のカスタム DVD プレーヤーを作成するにはどうすればよいですか?
XBox 360 (XBox Live を使用してダウンロード) で動作し、トレイの DVD ムービーを再生するアプリケーションを作成したいと考えています。XBox には既にこの機能があることは知っていますが、カスタム DVD プレーヤーで、ユーザーが映画の好きな部分のブックマークを保存し、後で DVD を挿入したときにブックマークを参照できるようにしたいと考えています。ばかげているように聞こえるかもしれませんが、それは私が行っているビジネスベンチャーのためのものです。
私の質問は:
1. これは可能ですか?
2. これを作成するには、どのプラットフォームを使用できますか? (XNA?)
3. その方法を学ぶにはどこに行けばよいですか?
私は非常に経験豊富な .NET 開発者ですが、メディアやゲーム プログラミングの専門家ではありません (まだ)。ありがとうございました!
3d - XNA でのウィンドウ システムのレンダリング戦略 (RenderTarget のパフォーマンス)
現在、XNA ゲーム用のウィンドウ システムをゼロから作成しています。私は主に Windows 向けに開発していますが、将来どのプラットフォームをサポートするかは誰にもわかりません。パフォーマンスのセマンティクスは似ているはずなので、ネイティブ Direct3D についてこれを知っている場合は、自由に答えてください。可能であれば、ターゲット プラットフォームが X-Box 360 である場合に何が変わるかを検討してください。
私は順調に進んでいますが、ウィンドウを正確にレンダリングする方法がわかりません。私は4つのアプローチを思い付きました:
すべてのコントロールを画面に直接レンダリングするだけです。これが私が今していることです。コントロールは、半透明でない限り、状態をブレンドしてアニメーション化できます。任意の数の状態の間でアニメーション化する良い方法が見つかりませんでした (現在、ボタンアップからボタンダウン、マウスアウトからマウスオーバーにアニメーション化されているボタンが無効になっているとします。最後の状態から新しい状態にスムーズにブレンドします。このアプローチでは、最後のアニメーションが終了した後に 1 つのアニメーションが再生される場合にのみ機能します。そうしないと、アニメーションにジャンプが発生します。
各トップレベル ウィンドウとすべてのコントロールをレンダー ターゲットにレンダリングし、それを使用して半透明のトップレベル ウィンドウを画面にレンダリングします。これにより、トップレベルの作業で半透明になり、管理が容易になりますが、アニメーションの内容は変わりません。
各コントロールをレンダー ターゲットにレンダリングします。レンダー ターゲットは、コントロールがダーティになった場合 (つまり、アニメーション化する必要があるか、テキストが変更された場合) にのみ更新されます。このようにして、コントロールごとの半透明が機能します。
前と同様ですが、アニメーションの問題を解決することに加えて、各コントロールに 2 番目のレンダー ターゲットを用意します。アニメーションが開始するたびに、レンダー ターゲットを交換して、アニメーションが開始したときの状態を取得し、それを目的の状態とブレンドして他のレンダー ターゲットに入れます。これにより、以前のアプローチよりもオーバーヘッドが増えることはありません。レンダー ターゲットの数が 2 倍になり、任意のフレームで (最大で) 1 つだけがレンダリングされます。しかし、ここで問題が発生します。これを機能させるには、「古い」レンダー ターゲットのコンテンツを保持する必要があります。これは、Windows では良好なパフォーマンスで動作するはずですが、X-Box 360 ではパフォーマンスに重大な影響があるようです。一方、「保存」ビットは、アニメーションがアクティブな間のみ必要です。
そして、実際の質問が来ます。明確にするものは何でも大歓迎です。パフォーマンスの問題については、これはゲームのウィンドウ システムにすぎないことを覚えておいてください。ゲームの背後にあるゲームは、多くのレンダー ターゲットを使用し、パフォーマンスも低下させる可能性があり、ウィンドウ システムよりもはるかに多くの可能性があります。最悪の場合、画面上にそれぞれ 20 ~ 40 のコントロールを持つ 5 つのトップレベル ウィンドウがあるとします。
- これらのアプローチのどれをお勧めしますか?またその理由は? もちろん、別のアプローチを自由に追加してください。
- 200 個または 400 個のレンダー ターゲットを利用できる場合、各フレームに 20 個しかレンダリングされない場合、パフォーマンスに影響はありますか?
- PreserveContents のパフォーマンスへの影響は、X-Box 360 では本当に悪いのでしょうか? Windowsではどれくらい悪いですか?
- RenderTarget2D.RenderTargetUsage プロパティに書き込むことができます。PreserveContents を必要に応じてのみ有効にするために、実行時にこれを切り替えることは良い考えですか?
- ボタンの上にマウスを移動し、マウスを移動してから再び移動するなど、特定の状況でコントロールアニメーションがジャンプすることを (プレイヤーとして) 気にしますか?あなたより遅い?
networking - winsock と linux ソケットの違い
多数の小さなファイルを Xbox 360 devkit (Winsock を使用) にダウンロードする FTP のようなプログラムを開発し、それを Playstation3 (これも devkit で、Linux AFAIK を使用) に移植しています。このプログラムは、BSD スタイルのソケット (TCP) を使用します。どちらのプログラムも同じサーバーと通信し、同じデータをダウンロードします。プログラムは、次のようにループ内のすべてのファイルを反復処理します。
Xbox 360 の実装では、ダウンロード全体に 1:27 かかり、最後の送信から最初の受信までの時間は約 14 秒です。これは私にはかなり理にかなっているように思えます。
Playstation3 の実装では、同じデータに対して 4:01 かかります。ボトルネックは、最後の送信と最初の受信の間にあるようで、その時間の 3:43 を占めています。ネットワーク時間とディスク時間は、どちらも Xbox 360 より大幅に短縮されています。
これらの devkit は両方とも、ファイル サービスを行う PC と同じスイッチ上にあり、そのスイッチには他のトラフィックはありません。
フラグを設定してみましたが、状況はTCP_NODELAY
大幅に変わりませんでした。SO_SNDBUF
/を 625KB に設定してみましたがSO_RCVBUF
、これも時間に大きな影響はありませんでした。
Winsock と Linux の TCP/IP スタックの実装に違いがあると思います。Linux の実装を Winsock のように動作させるために設定できるソケット オプションはありますか? 私が説明していないものは他にありますか?
唯一の解決策は、すべてのファイル要求をまとめて送信し、すべてを受信するように書き直すことです。
残念ながら、Sony の実装には TCP_CORK オプションがないため、それが違いかどうかはわかりません。
graphics - ラインを 3D 地形に動的に投影するにはどうすればよいですか?
Xbox 360 用の XNA でゲームを作成しています。このゲームには、リンクのグラフで接続された静的オブジェクトのコレクションを含む 3D 地形があります。オブジェクトを接続するリンクを、地形に投影された線として描画したいと考えています。また、リンクを移動する必要はありませんが、プレーヤーが選択を移動するときにリンクの色などを変更できるようにしたいと考えています。ただし、これを正しく効率的に機能させる上で問題が発生しています。
私が持っていたいくつかのアイデアは次のとおりです。
1) 四角形を別のレンダー ターゲットにレンダリングし、テクスチャを地形の上のオーバーレイとして使用します。私は現在これを機能させており、現在カメラに表示されている領域に対してのみテクスチャを生成して、エイリアシングを最小限に抑えています。ただし、まだエイリアシングの問題が発生しています-線がギザギザに見え、カメラを動かすとゲームが頻繁にチャグします編集:常にチャグします.Xboxにフレームレートカウンターがないため、気付くだけです.物事が動くとき。
2) 事前に線をテクスチャに焼き付けます。これによりパフォーマンスが向上する可能性がありますが、エイリアシングの問題が悪化します。また、あまり変更せずに行のプロパティを動的に変更することはできません。
3) 地形上にライン クワッドをテッセレーションして、地形の形状に一致するジオメトリを作成します。このオプションは役に立ちそうですが、もっと簡単な方法があれば時間をかけて試してみる必要があるかどうかはわかりません.
私が思いもよらなかったこれを行うための魔法の方法はありますか?正しく実行された場合、これらのパスの 1 つが最適ですか?
c# - 360 をアプリケーションに接続する
私が書いたアプリケーションを 360 に接続する方法 (.net を使用) はありますか? 私がやりたいことは、カスタム メディア共有アプリケーションを作成し、コンテンツを xbox にストリーミングすることです。
これを行うConnect360というMac用のアプリケーションがあることがわかりましたので、方法があるはずですよね?
web-services - XBox Live と PSN からゲーム統計を取得する
XBox Live と PSN でプレイされているゲームから、ゲームの統計情報 (誰がプレイしているか、誰が勝っているかなど) を取得することはできますか? 次のような追加の制約はありますか。
- ゲームは追加の API をサポートする必要がありますか?
- ゲーム サーバー (コンソール) に直接アクセスする必要がありますか?
Microsoft や Sony、さらにはゲーム ベンダーが API 自体を提供していれば、それも素晴らしいことです。
facebook - XBox 360コンソール履歴エクスポートプロジェクトの詳細を知っている人はいますか?
最近、Charlotte 2009 Code Campで、XBox 360コンソールの履歴をエクスポートし、XBoxの日記やジャーナルを作成するプロジェクト/製品について誰かが教えてくれました。
彼は詳細を本当に知りませんでしたが、Xbox Consoleの履歴を取得し、それをFaceBookのようなソーシャルネットワーキングサイトの1つに変換すると考えました。
したがって、次のようになります。
クリスは今日3時間「HaloWars」をプレイしました...スコアなどのより具体的な詳細。
今日はクリスに全く会いませんでした。彼がすぐに立ち寄ることを願っています。
クリスは今日2時間「ギャラクシーウォーズ」をプレイしました...さらに詳細。
それがFaceBookのコンテンツになるかどうかはわかりません。それはブログ、ツイッター、または他のものであった可能性があります。
それは素晴らしいアイデアだと思い、それをチェックしたいと思っていました。オープンソースであることを望んでいました。それで、私は自分自身のアイデアをいくつか持っているからです。
いずれにせよ、最初にそれを見つける必要があります。そしてこれまでのところ、私の検索はすべて無駄でした。
詳細をご存知でしたら、ぜひ共有してください。今、興味を持っている人もいると思います。:D