CCSpriteBatchNode를 사용하여 OpenGL 호출 및 메모리 사용량을 줄이려고합니다. [: Z : 태그 : CCMenuItemSprite하는 AddChild]Cocos2D 2.0 - CCSpriteBatchNode, CCMenuItem 및 CCmenu 사용
단서 -
CCSpriteBatchNode *batchNode = [CCSpriteBatchNode batchNodeWithFile:@"atlasGeral.png"];
CCSprite *inputNormal = [CCSprite spriteWithSpriteFrameName:@"normalInput.png"];
CCSprite *inputPressed = [CCSprite spriteWithSpriteFrameName:@"PressedInput.png"];
[batchNode addChild:inputNormal];
[batchNode addChild:inputPressed];
CCMenuItem *input =
[CCMenuItemSprite itemWithNormalSprite:inputNormal
selectedSprite:inputPressed
target:self
selector:@selector(InputMenu:)];
CCMenu *mInputMenu = [CCMenu menuWithItems:input, nil];
이 상기 메시지 어설 실패로 catrastophically 충돌되어
이 코드를 사용하여 CCMenu을 만들어야? BTW 누군가 CCMenus, CCMenuItems 및 다른 미녀처럼 이러한 다른 요소와 함께이 CCSpriteBatchNode를 사용하는 방법을 설명하는 자습서를 만들거나 가리킬 수 있습니까? Cocos2D는 거의 모든 주요 기능에 대한 문서가 거의 없습니다.
감사합니다.
감사합니다. 내가 본 CCSpriteBatchNode는 정말 유용한 것이 아닙니다. 그들은 매우 제한된 사용과 많은 문제가 있습니다. 유일한 해결책은 아마도 내 자신의 CCMenu와 같은 클래스를 만드는 것입니다! – SpaceDog
CCSpriteBatchNode는 이미지가 다소 크거나 크기가 조정되고 회전되는 경우 성능이 크게 향상 될 수 있습니다. 스프라이트 배치 노드에는 스프라이트를 자식으로 허용하는 것 외에 다른 제한 사항이 없으므로이를 초기에 디자인에 통합하십시오. – LearnCocos2D
@ LearnCocos2D - 계층의 여러 zOrders에서 여러 텍스처의 그래픽 객체를 삽입하려고하지 않는다고 가정 할 때 유스 케이스에 동의했습니다. 레이어에 여러 배치 노드를 추가하는 방법을 놓친 것일 수도 있지만 모든 하위 스프라이트가 고유 한 z 축 (레이어)을 참조하도록해야합니다. – YvesLeBorg