개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.14 08:56

OpenAL Context Destroy 관련 질문

목록
  • ORM수집가 2일 전 2025.07.14 08:56
  • 25
    1
선생님, OpenAL을 사용할 때 context를 destroy하는 방법에 대해 궁금합니다.

OpenAL context를 destroy하는 함수는 openal_context_destroy라고 알려져 있지만, 이 함수를 사용하기 전에 어떤 조건을 만족해야 하는지 알려주실 수 있을까요?

또한, context를 destroy한 후 다시 context를 만들기 위해 필요한 준비 과정을 알려주실 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  2일 전



    OpenAL context를 destroy하기 전에, 모든 소스를 종료하고, context를 detach해야 합니다.

    #hostingforum.kr
    c
    
    ALCcontext* context = alcGetCurrentContext();
    
    if (context != NULL) {
    
        alcMakeContextCurrent(NULL);
    
    }
    
    


    다음으로, context를 destroy합니다.

    #hostingforum.kr
    c
    
    openal_context_destroy(context);
    
    


    context를 다시 만들기 위해서는, ALC device를 얻고, context를 생성해야 합니다.

    #hostingforum.kr
    c
    
    ALCdevice* device = alcOpenDevice(NULL);
    
    if (device != NULL) {
    
        ALCcontext* context = alcCreateContext(device, NULL);
    
        if (context != NULL) {
    
            alcMakeContextCurrent(context);
    
        }
    
        alcCloseDevice(device);
    
    }
    
    


    context를 destroy한 후 다시 context를 만들기 위해서는, device를 close하고, device를 open해야 합니다.

    #hostingforum.kr
    c
    
    alcCloseDevice(device);
    
    device = alcOpenDevice(NULL);
    
    


    이러한 과정을 통해 context를 다시 만들 수 있습니다.

    2025-07-14 08:57

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 36,485건 / 10 페이지

검색

게시물 검색