728x90
반응형
튜토리얼 문서를 다 보고, 파일을 분할하고 있는데 instance를 분할하니까 이런 오류가 나타났다.
코드를 수정하지는 않았기 때문에 헤딩을 꽤 했다.
정답은 아래의 코드가 문제였다.
std::vector<const char*> Instance::getRequiredExtensions()
{
uint32_t glfwExtensionCount = 0;
const char** glfwExtensions;
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
if (enableValidationLayers)
{
extensions.push_back(VK_EXT_DEBUG_UTILS_EXTENSION_NAME);
}
return extensions;
}
glfw가 초기화 되지 않은 상태에서 glfwExtention을 가져왔기 때문에 여기서 window surface present Extension이 포함이 안되어버린 것이다.
이제 main에서 glfw를 초기화하고, vulkan을 초기화하도록 수정하니까 문제가 해결됐다.
int main()
{
if (!glfwInit())
{
std::cerr << "Failed to initialized GLFW\n";
return EXIT_FAILURE;
}
glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API);
//InitVulkan
}
728x90
반응형
'ComputerGraphics > Vulkan' 카테고리의 다른 글
[Vulkan] Multi Sampling (0) | 2025.05.16 |
---|---|
[Vulkan] Mipmap (1) | 2025.05.16 |
[Vulkan] Loading Models (0) | 2025.05.15 |
[Vulkan] Depth Buffer (0) | 2025.05.15 |
[Vulkan] Texture Mapping (0) | 2025.05.14 |