728x90
DirectX11을 이용한 Application을 개발하는 도중에 이상한 현상을 발견하였다.
이 현상은 NVidia 계열의 그래픽 카드에서는 발생하지 않고, AMD 계열의 그래픽 카드에서만 발생하였다.
이 현상은 Application 내에서 Device 및 Context 등의 자원들을 계속 생성 및 해제 하다가 DirectX 함수에서 빠져나오지
못하고 계속 멈춰있는 현상이다.
며칠 테스트를 해본 결과...
CreateBlendState() 함수를 사용할 때 ID3D11BlendState 변수를 생성하고, 해제를 하지 않거나,
CreateSamplerState() 함수를 사용할 때 ID3D11SamplerState 변수를 생성하고, 해제를 하지 않거나,
CreateRasterizerState() 함수를 사용할 때 ID3D11RasterizerState 변수를 생성하고, 해제를 하지 않거나,
등등의 다양한 경우가 있을 것이다.
뭐든 이러한 변수들을 해제하지 않으면서, ID3D11Device등의 리소스를 생성 및 해제를 반복하게 되면, DirectX 함수에서 빠져나오지 못한다.
ps. 생성한 것은 반드시 해제하도록 하자...
728x90
'Visualization Programming > DirectX11' 카테고리의 다른 글
DirectX11 - 리소스 관련 함수 및 구조체 (0) | 2017.04.19 |
---|---|
DirectX11 - 그래픽 카드 정보 확인 (0) | 2017.04.18 |
DirectX11 - Windows 7이상 부터는 DXSDK_Jun10을 설치 하지 않아도 된다 (0) | 2016.11.29 |
DirectX11 - D3DX11CreateShaderResourceViewFromMemory()에서 E_INVALIDARG 발생. (0) | 2016.11.22 |
DirectX11 - Device Lost (0) | 2016.10.24 |