Влияет ли CCLiquid на конкретную область CCSprite? - PullRequest
0 голосов
/ 13 февраля 2012

Разработка игры для iPhone с Cocos2d-iphone.У меня огромный спрайт, и я хочу применить к нему CCLiquid (или любой другой эффект, похожий на жидкую волну).

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

Ну, я подумал, что могу попытаться «применить эффект жидкости только к области, видимой игроку» (размеры такой области 480x320).Это может очень помочь.

Я уже получил CGRect, представляющий область CCSprite, которая должна быть затронута.Однако, как бы я на самом деле применил эффект только в пределах этой области ?Есть идеи?

1 Ответ

1 голос
/ 13 февраля 2012

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...