Как иметь тот же спрайт в нескольких местах Cocos2d Пожалуйста, помогите Я искал во всем и не могу найти ответКак иметь тот же спрайт в нескольких местах Cocos2D
ответ
Просто создать несколько спрайтов (CCSprite экземпляров). Они могут использовать одну и ту же текстуру (bitmap-файл).
CCSprite * mySprite1;
CCSprite * mySprite2;
CCSprite * mySprite3;
// create several sprites from the same bitmap file
mySprite1 = [CCSprite spriteWithFile:@"spriteBitmap.png"];
mySprite2 = [CCSprite spriteWithFile:@"spriteBitmap.png"];
mySprite3 = [CCSprite spriteWithFile:@"spriteBitmap.png"];
mySprite1.position = ccp(100, 100);
mySprite2.position = ccp(200, 200);
mySprite3.position = ccp(300, 300);
Вы не можете добавить такое же CCSprite как ребенок к нескольким CCNodes, но вы можете сделать Cocos2D сделать то же CCSprite несколько раз. Для этого вам нужно создать подкласс CCNode, который сохранит ссылку на ваш CCSprite и нарисует его в методе -draw с применением необходимых преобразований. Например
-(void)draw
{
[super draw];
CGPoint initialPosition = [_node position];
float initialScale = [_node scale];
[_node setScale:self.scale];
[_node setPosition:self.position];
[_node visit];
[_node setPosition:initialPosition];
[_node setScale:initialScale];
}
Вы, возможно, придется использовать glScissor, если вам нужна картинка-в-картинке внешний вид.
Тогда вам просто нужно добавить экземпляр класса thisChild для каждого раза, когда вы хотите получить дополнительную копию оригинального рендеринга CCSprite.
Положить метод в цикл for.
Внутри метода создайте CCSprite и измените его.
Это лучше всего подходит для статических спрайтов, так как я не знаю, как вы могли бы получить доступ к этим за пределами метода.
- 1. Обработать тот же флажок в нескольких местах
- 2. Тот же UIView в двух местах сразу?
- 3. Тот же элемент xml в разных местах
- 4. добавить тот же элемент в двух местах
- 5. Wicket - Показать один и тот же текст на нескольких местах
- 6. Ограничение спрайт в cocos2d
- 7. как удалить спрайты и использовать тот же спрайт снова
- 8. Используя тот же угловой контроллер в нескольких местах на той же странице
- 9. cocos2d swift как показать спрайт?
- 10. Cocos2D. Как отменить спрайт назад?
- 11. Как переместить спрайт с задержкой в cocos2d?
- 12. Рисование нескольких растровых изображений на один спрайт в разных местах
- 13. cocos2d изменение спрайт текстуры
- 14. cocos2d-x TouchEvent Удалить спрайт SameColor
- 15. Cocos2d getChildByTag Не возвращающийся спрайт
- 16. OpenGL: Как затемнить спрайт в Cocos2d
- 17. Как сменить спрайт с массивом изображений cocos2d?
- 18. Рисование UIImage в нескольких местах в UIImageView
- 19. Выберите Случайный спрайт Cocos2d 3.0
- 20. Regex replace - как заменить тот же шаблон в нескольких местах разными строками?
- 21. Как повторно использовать один и тот же ресурс SVN в нескольких местах
- 22. cocos2d autoremove спрайт после анимации
- 23. Как иметь одну и ту же страницу в нескольких местах, не мешая навигации
- 24. Тот же файл в двух местах с использованием git
- 25. Cocos2d-x: создать спрайт процедурно или слой?
- 26. Cocos2d исправить спрайт на экране?
- 27. Управление рендерингом в нескольких местах
- 28. воспроизводить тот же овал в разных местах android
- 29. Используя тот же самый спрайт Compass в разных таблицах стилей
- 30. Как сделать спрайт вращаться на ощупь Cocos2d