2014-04-21 3 views
4

이것은 정말 쉬운 질문처럼 보입니다. 그러나 나는 어디에서나 대답을 찾을 수 없습니다. 스프라이트 키트를 사용하여 게임을 만들고 있는데 현재 스크린에 얼마나 많은 SKNode가 있는지 계산하고 싶습니다. 디버깅 정보의 오른쪽 하단에있는 개수를 볼 수 있지만 프로그래밍 할 수있는 정수로 액세스하는 방법을 모르겠습니다. 어떤 제안?스프라이트 키트 : 화면의 SKSpriteNodes 수

답변

5

애플의 문서 "는 SKScene 객체가 스프라이트 키트의 내용의 장면을 나타냅니다. 장면은 스프라이트 키트 노드의 트리의 루트 노드입니다 ..."라고

그래서에서 다음 문을 사용하여 SKScene 클래스, 올바른 숫자를 출력하는지 확인하십시오.

NSLog(@"%lu", (unsigned long)[self.children count]); 
+2

장면의 노드 수는 사용자가 볼 수있는 노드 만 계산하므로 'self.children.count'와 다를 수 있습니다. 따라서 OP가 정확히 묻는 것이 –

+0

과 같지 않습니다. 예를 들어 tmx 맵을 사용하는 경우 tmx 타일은 SKScene showsNodeCount에 표시되고 [self.children count]에는 표시되지 않습니다. 그러나 @MSU_Bulldog에는 적용되지 않습니까? 아니면 그렇습니까? – Roecrew

+5

self.children은 장면의 직계 형제만을 반환하며 자식을 부모로 가질 수있는 모든 노드를 재귀 적으로 계산하지 않습니다. – fuzzygoat