if (CMAKE_BUILD_TYPE STREQUAL "Debug")
ADD_DEFINITIONS (-DDEBUG)
+ OPTION(ENABLE_VALIDATION "enable vulkan validation layer" ON)
+ELSE()
+ OPTION(ENABLE_VALIDATION "enable vulkan validation layer" OFF)
ENDIF()
-set(VULKAN_SDK "$ENV{VULKAN_SDK}" CACHE STRING "LunarG Vulkan SDK path")
-if (VULKAN_SDK)
- set(ENV{VULKAN_SDK} ${VULKAN_SDK})
- SET(ENV{VK_LAYER_PATH} "${VULKAN_SDK}/etc/explicit_layer.d")
+IF (ENABLE_VALIDATION)
+ ADD_DEFINITIONS (-DVKH_USE_VALIDATION)
+ENDIF ()
+
+if (NOT VULKAN_SDK)
+ set(VULKAN_SDK "$ENV{VULKAN_SDK}" CACHE STRING "LunarG Vulkan SDK path")
+ if (VULKAN_SDK)
+ set(ENV{VULKAN_SDK} ${VULKAN_SDK})
+ SET(ENV{VK_LAYER_PATH} "${VULKAN_SDK}/etc/explicit_layer.d")
+ endif ()
endif ()
MESSAGE(STATUS "VULKAN_SDK = $ENV{VULKAN_SDK}")
VkFormat preferedFormat, VkPresentModeKHR presentMode);
void vkh_presenter_destroy (VkhPresenter r);
bool vkh_presenter_draw (VkhPresenter r);
-void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource);
+void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource, uint32_t width, uint32_t height);
/************
* VkhImage *
************/
.pEngineName = ENGINE_NAME,
.engineVersion = ENGINE_VERSION,
.apiVersion = VK_API_VERSION_1_0};
-/*#if DEBUG
+#if VKH_USE_VALIDATION
const uint32_t enabledLayersCount = 1;
const char* enabledLayers[] = {"VK_LAYER_LUNARG_standard_validation"};
-#else*/
+#else
const uint32_t enabledLayersCount = 0;
const char* enabledLayers[] = {NULL};
-//#endif
+#endif
VkInstanceCreateInfo inst_info = { .sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
.pApplicationInfo = &infos,
return true;
}
-void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource){
+void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource, uint32_t width, uint32_t height){
for (int32_t i = 0; i < r->imgCount; ++i)
{
.dstSubresource = {VK_IMAGE_ASPECT_COLOR_BIT, 0, 0, 1},
.srcOffset = {},
.dstOffset = {0,0,0},
- .extent = {1024,800,1}};
+ .extent = {width, height,1}};
vkCmdCopyImage(cb, blitSource, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, bltDstImage, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
1, &cregion);