2012-04-27 1 views
1

저는 응용 프로그램의 수명 동안 존재하는 시작시 OpenAL 컨텍스트를 만드는 iOS 게임을하고 있습니다. 우리는 OpenAL 소스 풀을 할당합니다. 지도가로드 될 때마다 사운드 효과 (.wav)가 OpenAL 버퍼에로드 된 다음 재생할 때 사용 가능한 소스를 찾습니다. 로드/언로드되는 것은 버퍼 자체뿐입니다.alGetError() (OpenAL에서)가 유효한 오류 코드 대신 -1을 반환 할 때의 의미는 무엇입니까?

잠시 실행 한 후에 alPlaySource()를 호출 할 때 소리가 들리지 않습니다. alGetError()를 호출하면 -1이 반환됩니까? alPlaySource 이전() alGetError()를 0

답변

0

내 생각을 이것은 극도로 미묘한 메모리 누수로 위와 같은 이상한 결과를 낳았습니다. 이 코드는 버그가있는 것으로 알려져 있으며 사용해서는 안되는 SoundEngine과 같은 몇 가지 예제 코드를 기반으로합니다.

결국 FMOD로 전환되었습니다.

2

이 때문에 아이폰 OS도 32

참조 동시 재생 소스의 수를 제한한다는 사실에 아마 반환 전화 : maximum number of OpenAL sound buffers on iPhone

+0

할당 된 버퍼 수를 32 개로 제한했습니다. –

+0

이것은 문제 일 수 있지만 -1을 반환하는 것은 사양에 맞지 않습니다. – Bram

관련 문제