glBlendFuncによるCocos2Dのブレンドモード


9

私たちは、PhotoshopとQuartz 2Dで利用できる最も一般的な描画モードを再現しようと試みてきましたが、3つしか考え出せませんでした。

興味のある人のために、ここにあります:

  • 乗算 = GL_DST_COLOR、GL_ONE_MINUS_SRC_ALPHA
  • 画面 = GL_MINUS_DST_COLOR、GL_ONE
  • 線形覆い焼き= GL_ONE、GL_ONE

これらのモードやその他のモードをオンラインで試すことができます。この非常に便利なWebサイトhttp://www.andersriggelsen.dk/glblendfunc.php

私たちのOpen GLエクスペリエンスは本当に非常に制限されているため、Cocos2D内で再作成できる追加のブレンドモードを提供していただければ幸いです。

前もって感謝します!

アルギリス


1
線形覆い焼き(追加)= GL_ONE、GL_ONEこれは、andersriggelsen.dk / glblendfunc.phpおよびphotoshopと同じように動作しますか?スプライトを透明にしますか?私のために働いていない
Rakka Rage

回答:


4

悪いニュースは、使用できる組み合わせは無数にあるにもかかわらず、glBlendFuncですべてのphotoshopのブレンドモードを実装できないことです。

良いニュースは、シェーダーに移動すると、オレンジ色の本(OpenGLシェーディング言語、http://www.amazon.com/exec/obidos/ASIN/0321637631/khongrou-20)には、photoshopのブレンドをエミュレートするためのシェーダーの章が含まれていることですモード。

幸いなことに、プレシェーダーの世界でおそらく必要になるのは、最も一般的な3つのブレンドモードだけです。

  • 追加:GL_ONE、GL_ONE
  • ブレンド:GL_SRC_ALPHA、GL_ONE_MINUS_SRC_ALPHA
  • 乗算:あなたが言及したようなさまざまな:GL_DST_COLOR、GL_ONE_MINUS_SRC_ALPHA

編集

stackoverflowに関する関連(ほぼ重複)質問:https : //stackoverflow.com/questions/818230/photoshop-blending-mode-to-opengl-es-without-shaders

Photoshopブレンドシェーダー:http : //mouaif.wordpress.com/2009/01/05/photoshop-math-with-glsl-shaders/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.