問題タブ [rendertarget]
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.
alpha - モノゲーム: RenderTarget の一部のピクセルを半透明にする
これは説明するのが非常に難しい問題です (私は Windows 8 の MonoGame を使用しています)。
.png などの半透明の「スプライト」画像を、画面ではなく透明な画像にレンダリングできるようにしたいのですが、これを数回実行して、実際にはさまざまな画像をブレンドして新しいスプライト画像を作成します。 ..次に、この新しいスプライト画像を、描画していない領域を透明のままにして画面にレンダリングできるようにしたいと考えています (つまり、主にエッジの周り)。
確かに、半透明の「スプライト」.png 画像を読み込んで、RenderTarget に「貼り付ける」ことができます。これを数回行うと、「スプライト」がうまくブレンドされます。次に、その合成イメージである RenderTarget を画面に「貼り付ける」(つまり、描画/レンダリングする) ことができます。
問題は、RenderTarget が画面に描画されると、その周りに固体ブロックが表示されることです。
おそらく、RenderTarget の各ピクセルのデフォルトのアルファ値はソリッドです。描画しないピクセルは、絵筆をつかんで紙ではなくガラスに描いたかのように、完全に透明のままにしたいと考えています。次に、そのガラスのシートを、たとえば、渦巻き模様のカーペットの上に置くと、塗料がない場所ならどこでも渦巻き模様のカーペットが見えます。しかし、それは私が見ているものではなく、「ガラスに描いた」のではなく「黒い紙に描いた」ように、ただ黒を見ているだけです.
画像を別の画像に直接レンダリングできる場合、問題はありません (これは可能ですか?): おそらく PhotoShop で「空の」.png 画像を作成します。つまり、何も描画せずに透明で保存します。有効にして、その上に画像をレンダリングして、結果を保存します。しかし、RenderTarget は既に不透明のようです。
上記が明確であることを願っています。Texture2D オブジェクトのアルファの操作に関する多くの回答を検索して見つけましたが、RenderTarget2D のアルファの操作については何も見つかりません。
助けてくれてありがとう!
directx - DX11 レンダー ターゲット ビューを作成できません
DirectX 11 ゲーム プログラミングを始めようとしていますが、何らかの理由で ID3D11Device::CreateRenderTargetView() を使用してレンダー ターゲット ビューを作成できません。
(ところで、VS for Desktop 2013 を使用しています。GPU がサポートする最高の機能レベルは 11_0 です。Windows 8.1 を実行しています。)
関連すると思われるコードは次のとおりです。
mfc - CHwndRenderTarget のサイズが正しくありません
このバグは私を夢中にさせています。描画と対話ができるウィンドウを備えた MFC アプリケーションがあります。問題は、 のサイズがCHwndRenderTarget
ウィンドウの実際のサイズと一致しないことです (取得した を使用してこれを比較しますCRect
) GetClientRect()
。これにより、マウス ポインターが実際にある場所からすべての操作がオフセットされます (理想的ではありません)。正しい値を使用しようとしましReSize()
たCHwndRenderTarget
が、常に false を返します。なぜCHwndRenderTarget
間違ったサイズになるのでしょうか?
サイズを確認するために使用しているコードは次のとおりです。
javascript - THREE JS ピクセル化レンダー ターゲット?
1 つのシーンにレンダリングし、それをテクスチャとして使用してクワッド上でレンダリングする基本的なレンダー ターゲットを機能させようとしています。基本的なデモがありますが、実行すると結果はすべてピクセル化され、小さな画面にレンダリングされてからクワッド全体に引き伸ばされているかのようになります。
これが私のコードです:
何か案は?
textures - GLSL シェーダー呼び出し間でのデータの保持
私は概念を理解するのに苦労していて、誰かが私にそれを正してくれることを望んでいました.
各描画呼び出し間でデータを保持する GLSL シミュレーションを構築しようとしていますが、迅速かつ効率的にするために、すべてを GPU で実行したいと考えています。必要なデータをテクスチャにレンダリングし、そのテクスチャから読み取ることでこれを行うことを理解しています。
色を描画しているrendertargetがあり、各描画呼び出しで現在の色を読み取って0.01を追加することで色の値を0.01増やしたい簡単なデモがありますが、エラーが発生します:
現在のレンダーターゲットをテクスチャとして渡すことができないという印象を受けるため、この概念を完全に誤解していると思います。私は今かなり混乱しているので、誰かが私のためにこれを片付けてもらえますか
opengl - FBO へのレンダリング、サンプリングの失敗
FBO にレンダリングしてから OpenGL / LWJGL でスクリーンしようとしていますが、奇妙な結果が得られます。
フレームバッファに直接レンダリングされた場合、私のシーンは問題なく動作し、次のようになります。
しかし、FBO にレンダリングしてから、デフォルトのフレームバッファのクワッドにレンダリングすると、次のようになります。
画像内のすべての色が単一の色で平均化され、画面がその色でクリアされたように見えます。
私の推測では、クワッドのテクスチャのサンプリングに何か問題があると思いますが、それを理解することはできません。
glPolymode - GL_LINEでエッジを見ると、クワッドは明らかにそこにあります。また、ゲーム内カメラを動かすとクワッドの単一の色が変化し、どういうわけか画面上で最も目立つ色も反映されます. おそらく明白な解決策を教えていただけますか?この投稿の最後に、関連すると思われるコードをいくつか入れます。
これが、分隊の頂点と UV 座標を設定する方法です。キューブに同じメソッドと親クラスを使用しているので、これが機能することがわかります。
これは私がそれらをvbosにバインドする方法です:
これは、クワッドのシェーダーで属性の場所をバインドする方法です。
これは私がスクリーンクワッドをレンダリングする方法です:
これは私の頂点とフラグメント シェーダーです: 頂点:
断片:
最後に、これが私のレンダリング プロシージャです。drawScene(); 現在();
これらの機能を使用すると:
編集:FBOの設定方法を追加する必要があるかもしれません: