前提・実現したいこと
- Cocos2d-JSでシェーダを自作してSpriteにアウトラインをつけたい。
- アウトラインをつけたSprite同士が重なった部分にはアウトラインが表示されないようにしたい。
詳細
Cocos2d-JSでゲームを作っています。
https://github.com/cocos2d/cocos2d-x/blob/v3/tests/cpp-tests/Resources/Shaders/example_Outline.fsh
こちらを参考にして自作シェーダを用意し、Spriteにアウトラインが表示されるようにしました。
問題なくアウトラインは表示されたのですが、Spriteが重なった場合にアウトラインが手前に表示されてしまいます。
http://light11.hatenadiary.com/entry/2018/05/13/183314
こちらのページはUnityの例ですが、「モデルを拡大してステンシルバッファを使う方法」で実現しているような事を実現したいです。
しかし上記ページの例は3Dモデルのため法線方向にモデルを拡大するという事が出来るかと思いますが、現在作成中のゲームは2Dのため同じ手法では実現出来ないなと考えております。
重なった部分のアウトラインが手前に表示されない方法はないでしょうか。
何か分かる方いましたらよろしくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。