2012-07-07 2 views
0

SimpleAudioEngine 효과 미리로드를위한 최상의 전략은 무엇입니까? 게임 시작시 모든 사운드 효과를 미리로드 하시겠습니까? 또는 각 화면의 생성시이 화면에 사용 된 효과 만 미리로드 할 수 있습니까? 로드 된 효과가 어느 시점에서 출시 되었습니까?cocos2d-iphone SimpleAudioEngine 미리로드 전략

답변

2

처음으로 사운드 효과를 재생하면 눈에 띄는 지연이 발생합니다. 액션 게임의 경우 모든 게임 플레이 효과를 미리로드하고 싶습니다. 턴 기반 또는 달리 느린 속도의 게임의 경우 사운드 효과를 미리로드하지 않는 것이 좋습니다.

언제 어디서 미리로드할까요? 일반적으로 게임 플레이 시작시 (예 : init 또는 onEnter).

미리로드 된 효과는 unloadEffect를 호출하지 않으면 해제되지 않습니다. 내부적으로 오디오 엔진은 사운드 효과를 캐시하므로 미리로드하는 것만은 아닙니다. 사운드 효과를 재생하기 만하면 사운드 효과가로드되어 메모리에 유지됩니다.

+0

미리로드 된 (또는 방금 사용 된) 사운드 효과가 언젠가 언로드되지 않으면 해당 메모리가 메모리 누출이됩니까? 예제는 HelloWorldLayer 내에서만 사용되는 사운드 효과이며, 해당 레이어 (또는 장면 ...)에서 나가면 HelloWorldLayer에 사용 된 사운드 효과가 여전히 남아 있고 메모리를 사용할 수 없게됩니까? – Jonny