問題タブ [directx]
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.
c++ - 並列処理を使用して C++ でゲームを作成する
人気のフラッシュ ゲーム Chrontron を C++ で "エミュレート" したいと考えていたので、始めるにあたって助けが必要でした。(注: リリース用ではなく、自分用に練習しているだけです)
そういうわけで、ゲームがどのように機能するかを説明します。私の問題が何であるかを本当に理解するには、少しプレイする必要があります。
これを解決する良い方法は、リンクされたリストを使用して各状態を保存することであると考えています。これは、おそらく時間に基づくハッシュ マップ、または時間に基づいて反復するリンクされたリストのいずれかになります。私はまだ確信が持てません。
実際の質問:
大まかな仕様ができたので、これに使用するデータ構造とその理由を決定するための助けが必要です。また、これを行うためにどのグラフィックス API/レイヤーを使用する必要があるかを知りたい: SDL、OpenGL、または DirectX (現在の選択は SDL)。そして、パラレルステートを実装するにはどうすればよいでしょうか? 並列スレッドで?
編集 (より明確にするために):
OS -- Windows (これは趣味のプロジェクトなので、後で Linux でこれを行う可能性があります)
グラフィックス -- 2D 言語 -- C++ (C++ でなければなりません -- これは次の学期のコースの練習です)
Q-未回答: SDL : OpenGL : Direct X
Q-回答済み: 並列処理を避ける
Q-回答済み: STL を使用して時間ステップ アクションを実装します。
質問に加えて、私は以前に C#、PHP、および Java を主に使用したことがあるので、自分自身をホットショット プログラマーとは言いません。このプロジェクトを容易にするのに役立つ C++ 固有の知識は何ですか? (つまり、ベクトル?)
c# - Direct3dで凹多角形を描画する効率的で簡単な方法はありますか
c#とdirectxを使用してポリゴンを描画しようとしています
私が得るのはファイルからのポイントの順序付きリストだけであり、3Dワールドでフラットポリゴンを描画する必要があります。
三角形のファンとdrawuserprimitivesを使用して、ポイントをロードし、凸形状を描画できます。
ポリゴンが非常に凹面である場合(これは明らかに不正確な結果につながります)。
この問題に取り組むのは私だけだとは想像できません(私はgfx /directxの新人です-私のバックグラウンドはgui\windowsアプリケーション開発です)。
誰かが私を助けるかもしれないリソース\チュートリアル\アルゴリズムに従う簡単なものに私を向けることができますか?
c# - c# directsound アプリで一部の wav ファイルが再生されるのはなぜですか?
directsound を介して単純な wav ファイルを再生する ac# アプリケーションを持っています。私が持っていたテストデータでは、コードはうまくいきました。しかし、実世界のデータを使用すると、セカンダリ バッファーの作成時に非常に役に立たないエラーが発生しました:「ArgumentException: 値が期待される範囲内にありません。」
テスト wav のビット レートは 512kbps、オーディオ サンプル サイズは 16 ビット、オーディオ サンプル レートは 32kHz でした。新しいwavはそれぞれ1152kbps、24bit、48kHzです。これらのより大きな値に対処するためにdirectsoundを取得するにはどうすればよいですか、またはファイルを再生する前にこれらの値をプログラムで検出するにはどうすればよいですか?
私が使用しているマネージ DirectX v9.00.1126 です。サンプル コードを以下に示します。
追加情報: 実際の wav ファイルは Windows Media Player でも再生されず、ファイルを再生するにはコーデックが必要ですが、winamp では正常に再生されます。
追加情報 2: 動作中のテスト データと実際の不良データのバイト数を比較すると、RIFF チャンクを超えると、不良データには "bext" チャンクが含まれていることがわかります。これは、インターネットがブロードキャストに関連付けられたメタデータであると通知するものです。テスト データは直接 fmt チャンクに入ります。/is/ 不正なデータに fmt チャンクがあるため、形式が不適切なのか、それともローダーが fmt データをさらに探す必要があるのかはわかりません。データを提供してくれた人々から、このルージュ ベクスト チャンクに関する情報を入手できるかどうかを確認できます。彼らがそれを削除できれば、私のコードは引き続き機能する可能性があります。
directx - Direct3D テクスチャおよびサーフェスからのリードバックの実行
D3D テクスチャとサーフェスからシステム メモリにデータを戻す方法を理解する必要があります。そのようなことを行うための最速の方法と方法は何ですか?
また、サブレクトが 1 つだけ必要な場合、全体をシステム メモリに読み戻すことなく、その部分だけを読み戻すにはどうすればよいでしょうか。
要するに、以下をシステムメモリにコピーする方法の簡潔な説明を探しています:
- テクスチャ_
- テクスチャのサブセット_
- 表面_
- サーフェスのサブセット_
- D3DUSAGE_RENDERTARGETテクスチャ
- D3DUSAGE_RENDERTARGETテクスチャのサブセット
これは Direct3D 9 ですが、D3D の新しいバージョンに関する回答もいただければ幸いです。
opengl - ゲーム以外の場合、OpenGL は Direct3D よりも優れていますか?
標準モデルは、OpenGL がプロフェッショナル アプリ (CAD) 用であり、Direct3D がゲーム用です。
openGL 3.0 の崩壊により、openGl はまだテクニカル 3D アプリ (cad/GIS) の自然な選択ですか?
Direct3D 用のシーングラフ ライブラリはありますか?
(もちろん Direct3D は Windows のみです。)
wpf - 管理された DirectX または XNA で WPF の D3DImage を使用するにはどうすればよいですか?
D3D コーディングに取り組みたいのですが、趣味のプロジェクトに相当する C++ を学習する時間が最近ありません。
c# - 透明なウィンドウに透明な DirectX コンテンツを描画するにはどうすればよいですか?
DirectX コンテンツを描画して、デスクトップや実行中の他のアプリケーションの上に浮かんでいるように見せたいと考えています。また、directx コンテンツを半透明にして、他のものが透けて見えるようにする必要もあります。これを行う方法はありますか?
C# で Managed DX を使用しています。
directx - DirectSound は Windows 用の最高のオーディオ抽象化レイヤーですか?
DirectSound は Windows 用の最高のオーディオ抽象化レイヤーですか? 特定のチップセット用に構築された非常に悪いサウンド実装から、アブストレーション レイヤーにアプリを切り替えます。
アプリはネイティブの Winform、.net 3.5 です。DirectX/DirectSound を選択する可能性が高いですが、オーバーヘッドが少し気になります。他のオプションはありますか?それとも、他のことを考えるのはばかげていますか?
image-processing - DirectX を使用して画像のサイズを変更するサンプル コード
それが可能であり、GDI+ を使用するよりもはるかに高速であることはわかっています。ただし、DirectX を使用して画像のサイズを変更し、ディスクに保存する良い例は見つかりませんでした。私はこれを GDI+ で何度も実装しましたが、難しくありません。ただし、GDI+ はハードウェア アクセラレーションを使用しないため、グラフィック カードを利用してパフォーマンスを向上させたいと考えていました。
directx - Direct3D カメラのアスペクト比/スケーリングの問題
Direct3D アプリケーションを作成するために SlimDX/C# を使用しています。テキストボックスの方法に従ってカメラを構成しました:
Matrix.RotationYawPitchRoll
描画と回転方法はすべてまともmesh.DrawSubset(0)
です。他のすべては正常に見えます。
私の問題は、私の 3D メッシュ (薄い正方形のボックス) を横から見て、垂直に立てたときに、水平のときよりも厚く見えることです。を 1 に変更しようとしましたが、AspectRatio
もっと悪いです。で、試行錯誤してみたところ、AspectRatio
が2.6くらいで普通に見えることがわかりました。それはなぜですか、何が間違っている可能性がありますか?