2012-06-12 2 views
0

Im новичок в cocos2d.Альфа-оверлей в линии рисования в cocos2d-iphone

Im работает над графическим приложением, в котором я рисую линии различных цветов. Я реализовал его, и проблема Im сталкивается с смешиванием цветов. На краях линии, чтобы сделать сглаживание, на них накладывается цвет затухания. Когда я рисую еще одну линию над ней, линии выглядят не так хорошо i.e наложение смешивания видно как исчезающее цвет, как на картинке Edge blending.

Я пробовал использовать {GL_ONE, GL_ONE_MINUS_SRC_ALPHA} и {GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA} как функции blend, а также пробовал некоторые другие, но не смог получить правильное смешивание. Я не могу решить это в течение последних трех дней. Может ли кто-нибудь помочь мне разобраться с этим?

ответ

0

Если ваша цель состоит в том, что две линии, которые касаются друг друга, должны выглядеть как единый сплошной объект с выцветшим краем вокруг общей формы, я не думаю, что любой простой режим смешивания может достичь этого эффекта.

Один из способов сделать это может заключаться в том, чтобы нарисовать все строки во внешнем фреймбуфере, используя ровный сплошной цвет (без затухания края), а затем попытайтесь применить шейдер с размытием или обрезкой края над этим фрейм-буфером, чтобы поместить края вокруг объединенной формы.

Может быть сложно, если вы новичок, но он должен дать вам несколько условий, чтобы начать исследование, если вы заинтересованы.

+0

Hi @Tim, спасибо за ваш ответ. Могу ли я получить образец для этого? – Ananth

+0

Нет, извините, нет. – Tim

 Смежные вопросы

  • Нет связанных вопросов^_^