問題タブ [graphics]
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++ 複数のグラフィックオプションを持つ
現在、私のアプリはグラフィックスに Direct3D9 のみを使用していますが、将来的にはこれを D3D10 および場合によっては OpenGL に拡張する予定です。問題は、これをきちんとした方法で行うにはどうすればよいかということです。
現在、私のコードにはさまざまな Render メソッドがあります
渡される関数は、MainMenu->Render、Loading->Render などの正確な状態に依存します。これらは、多くの場合、他のオブジェクトのメソッドを呼び出します。
そして、entity::Base から派生したサンプル クラス
次に、各メソッドは、より詳細な設定 (ピクセル シェーダーがサポートされているかどうかなど) に応じて、最適なレンダリング方法を処理します。
問題は、これを拡張して、多少異なる(D3D v OpenGL)レンダリングモードのいずれかを使用できるようにする方法が本当にわからないことです...
c++ - C++ で非常に大きな 2 次元配列を回避する方法
サイズ 800x800 の 2D int 配列を作成する必要があります。しかし、そうするとスタック オーバーフローが発生します (ははは)。
私は C++ が初めてなので、ベクトルのベクトルのようなことをする必要がありますか? そして、2次元配列をクラスにカプセル化するだけですか?
具体的には、この配列はグラフィックス プログラムの zbuffer です。画面上のすべてのピクセルの z 値を保存する必要があります (したがって、800x800 の大きなサイズになります)。
ありがとう!
windows - グラデーション付きポリライン
線の方向に垂直な方向に勾配が変化する曲線パスに沿って線を描く方法はありますか? グラフィックに GDI+ フレームワークを使用しています。
graphics - DirectX 9 と 10 の両方をサポートするアプリ
グラフィックス プログラマーに初歩的な質問があります。
一部のゲーム (Crysis など) が DirectX 9 (XP の場合) と 10 (Vista の場合) の両方をどのようにサポートできるのか混乱していますか?
これまでのところ、DX10 アプリを作成すると、Vista でしか実行できないことがわかりました。
多分彼らは 2 つのコード ベースを持っています.1 つは DX9 で書かれ、もう 1 つは DX10 で書かれていますか? でもそれってやり過ぎじゃない?
graphics - グラフィックアプリ用の高速でピクセル精度の 2D 描画 API?
クロスプラットフォームの描画プログラムを作成したいと思います。アプリを作成するための要件の 1 つは、キャンバス上でピクセル レベルの精度を維持することです。たとえば、誰かに頼るのではなく、自分で線画のアルゴリズムを書きたいと思っています。アンチエイリアシングは一切必要ありません (やはり、ピクセル レベルの制御が必要です)。画面上でのユーザー インタラクションを迅速かつ応答性の高いものにしたいと考えています (高速アルゴリズムを記述できるかどうかは未定です)。
理想的には、これを Python で作成するか、2 つ目の選択肢として Java で作成したいと考えています。最終的なアプリを簡単にクロスプラットフォームにする機能は必須です。それらの周りに抽象化レイヤーを作成できる限り、必要に応じて、異なる OS の異なる API にサブミットします。何か案は?
補遺:画面に描画する機能が必要です。私が理解したファイルに描画します。
c++ - リアルタイム グラフィックス プログラミング用の C++ に代わる最良の方法は何ですか?
C++ は、私が自分のメモリを細かく管理したり、タイプしすぎたり (hello std::vector<Thingy>::const_iterator it = lotsOfThingys.begin()
) したり、長いコンパイル時間で私を退屈させたりすることで、私の時間を浪費しすぎています。本格的なリアルタイム グラフィックス プログラミングの唯一の最良の代替手段は何ですか? ガベージ コレクションは必須であり (必要に応じてその使用を回避する機能も同様)、速度は C++ に匹敵するものでなければなりません。C ライブラリにアクセスするための合理的な話も必須です。
(完全な開示: 私はこれに対する独自の回答を持っていますが、リアルタイム グラフィックス作業のための C++ の優れた代替手段であると他の人が見つけたものを知りたいと思っています。)
編集:思慮深い返信をありがとう。この質問に対する「正しい」答えは実際には存在しないため、特定の答えを選択するつもりはありません。それに、たまたま気に入った言語を C++ の代替として選択するだけですが、これは公平ではありません。
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++ 固有の知識は何ですか? (つまり、ベクトル?)
graphics - 汚い四角形
フレーム バッファの更新を最小限に抑えるための「ダーティ レクタングル」を計算するためのアルゴリズムの実装に関するリファレンスはどこにありますか? 任意の編集を許可し、表示の更新に必要な「ビット ブリット」操作の最小セットを計算する表示モデル。
math - 優れた 3D メッシュ ライブラリ
優れた 3D メッシュ ライブラリを探しています
- 一般的な形式 (OFF、OBJ...) を読み取ることができる必要があります。
- ハーフエッジ構造と三角スープの両方をサポートする必要があります
- 障害や不正なメッシュに対して寛容であるべきです。
- 基本的な幾何学的操作 - 交点、法線計算など'
- 最も重要なこと - 無限のテンプレートと継承階層で複雑にならないようにしてください。
CGAL と OpenMesh の両方を試しましたが、どちらも最後のポイントで惨めに失敗しました。
具体的には、最も高度なコード分析ツールを使用しても追跡できない CGAL です。
これまでのところ、私は自分自身を引っ張ることを真剣に考えています。
私の好みは C++ ですが、他のオプションも受け入れます。
graphics - 体積粒子
私は体積粒子のアイデアをいじっています。「体積」とは、実際には粒子ごとの3Dモデルを意味するものではありません。通常、他の粒子とブレンドするのはより高価で困難です。私が言いたいのは、体積測定に可能な限り近く見える2D粒子です。今私/私たちが試したのは、追加のローカルZテクスチャ(たとえば球形)を持つ粒子であり、アルファ値とZによる近さの組み合わせに従ってアルファ透明度を実行します。これは、粒子がないという事実によって改善されます。単一の平面Zがあります。クールな追加は照明(および影も)との相互作用だと思いますが、ここで問題となるのは、照明の公式がどのように見えるかです(透明度を考慮に入れてみましょう)。
また、ノーマルを追加して、実際にすべてを2つのテクスチャでスクイーズできるようにします。
- 拡散&アルファテクスチャ。
- 通常および256レベルの精度のZチャネルテクスチャ。
私はこの質問をして、他にどのような方向性が考えられるかを確認し、使用される可能性のある適切な照明方程式に関するアイデアを得ます。