2016-09-20 4 views
0

私は芸術的なサイドプロジェクトが、私が望むよりも遅く実行しています。基本的には、すでに描いた形や色をXORするような形や色を描きたいのです。プログラムは次のようなものにします:enter image description here図形の下で色を排除する方法は? (SDL2)

これは画面にXORされた7つの黒丸です。

私の方法はかなり遅いですが、各ピクセルごとに、各円をループしてXORするかどうかを判断しています。

SDL_gfxで円を描くことはできますが、XORの描画モードが見つからないようです。私の現在の考え方は、少なくとも特定のピクセルが奇数か偶数かを教えてくれる混合モードを使うことです。ただし、(SDL_TEXTUREACCESS_TARGET)にレンダリングできるSDL_Textureを作成すると、直接操作できなくなります(SDL_TEXTUREACCESS_STREAMING)。

簡単な質問は、黒い円を適用してその下のピクセルをXORする方法です。

答えて

1

私はSDL_Rendererでこれを行う方法はないと思いますが、まだ妥当なパフォーマンスを持っています。あなたはSDL_Surfaceで作業し、再度アップロードする必要があります。

SDLのビルトインレンダリングAPIに似たスタイルのモダンなグラフィックエフェクトを使用できるようにSDL_gpuを書きました。このような特殊な効果は、GLSLを多用した場合にはそれほど簡単ではありません。カスタムシェイダーを避けたい場合は、SDL_gpuが持つブレンドモードのオプションを拡張して、この効果が得られる可能性があります。

+0

ありがとうございました。私はこの外観をシンプルにするglslを使って絵を見つけました。私はちょっとスキルを磨かなければなりません。 SDL_gpuを調べます。 – Carl

関連する問題