OpenAL 랩으로 개체 지향 모델을 만들고 장치, 버퍼 및 컨텍스트를 이해하는 데 약간의 문제가 있습니다.OpenAL 장치, 버퍼 및 컨텍스트 관계
프로그래머 가이드에서 볼 수 있듯이 여러 장치가 있으며 각 장치에는 다중 컨텍스트와 여러 버퍼가있을 수 있습니다. 각 컨텍스트에는 청취자가 있고 alListener*()
함수는 모두 활성 컨텍스트의 수신기에서 작동합니다. (내가 청취자를 바꾸고 싶다면 먼저 다른 컨텍스트를 활성화해야한다는 것을 의미한다. 나는 그 권리를 얻는다.) 지금까지는 그렇게 좋았다. 나를 괴롭히는 것은 alcCreateContext()
함수에 장치를 전달해야하지만, 아무 것도 alGenBuffers()
으로 전달해야한다는 것입니다.
어떻게 작동하나요? 여러 장치를 열면 어떤 장치에 버퍼가 생성됩니까? 버퍼가 모든 장치간에 공유됩니까? 열려있는 모든 장치를 닫으면 버퍼는 어떻게됩니까?
(또는 내가 빠진 것이 있습니까?)