2017-12-06 11 views
1

유효화 레이어를 인스턴스에 추가했습니다. 다음으로 나는 디버그 콜백과 기타 불가사의 객체를 생성했다. 테스트 케이스의 경우 내가 지우는 유일한 객체는 인스턴스입니다 (왜냐하면 유효성 검사 레이어는 인스턴스 파손을보고해야하기 때문입니다). 그리고 모든 개체에서 나는 레이어 보고서에 약 VkDebugReportCallbackEXT 있습니다유효성 검사 레이어에서 장치 또는 표면을 파괴하는 것을 잊어 버린 이유가 무엇이라고 말하지 않는 이유가 무엇입니까?

검증 층 : 디버그 보고서 DestroyInstance 전에 제거하지 콜백

는 (나에게 약 VkSurfaceKHRVkDevice 말을하지 않는 이유 그들은 확실히 창조된다).

답변

1

일부는 was fixed이지만 아직 SDK로 출시되지 않았습니다.

다른 점은 vkDestroyInstance 관련 메시지는 pNextvkCreateInstance을 통해 제공된 임시 디버그 보고서 콜백을 통해서만보고 될 수 있다는 것입니다. 그 이유는 디버그 콜백을 포함하여 vkDestroyInstance 이전에 모든 하위 객체를 파괴해야하므로 vkDestroyInstance 동안 사용할 수 없습니다.

따라서 VkDebugReportCallbackCreateInfoEXTpNext 체인 vkCreateInstance으로 연결할 수도 있습니다.

+0

감사합니다. 나는 일시적인 디버그 콜백 트릭을 시도했지만 아직 최대의 것은 디버깅 콜백 백킹에 대한 4 가지 메시지이다. 그러나 그것이 고정되었다고 말하면 나는 기다릴 것입니다. 추신 : 그 임시 콜백은 어디에서 읽을 수 있습니까? 문서는 그것에 대해 아무것도 말하지 않지만'pNext'는'NULL'이어야한다고 말합니다. – nikitablack

+2

아니면 직접 만들 수도 있습니다 ... ;; [여기] (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInstanceCreateInfo-pNext-pNext) 및 [여기] (https : //www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#_examples_14). – krOoze