DirectWrite support #28
3 changed files with 39 additions and 39 deletions
commit
bf03674b5d
|
|
@ -39,13 +39,18 @@ else()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(${CMAKE_SYSTEM_NAME} STREQUAL Windows)
|
if(${CMAKE_SYSTEM_NAME} STREQUAL Windows)
|
||||||
# DirectWrite stuff can only be used on Win10+
|
if(${CMAKE_CROSSCOMPILING})
|
||||||
if(${CMAKE_SYSTEM_VERSION} GREATER_EQUAL 10)
|
|
||||||
message(STATUS "DirectWrite support has been enabled")
|
message(STATUS "DirectWrite support has been enabled")
|
||||||
option(MW_USE_DIRECTWRITE "Use DirectWrite" ON)
|
option(MW_USE_DIRECTWRITE "Use DirectWrite" ON)
|
||||||
else()
|
else()
|
||||||
message(WARNING "DirectWrite support has been disabled (must be compiling on Win10+)")
|
# DirectWrite stuff can only be used on Win10+
|
||||||
option(MW_USE_DIRECTWRITE "Use DirectWrite" OFF)
|
if(${CMAKE_SYSTEM_VERSION} GREATER_EQUAL 10)
|
||||||
|
message(STATUS "DirectWrite support has been enabled")
|
||||||
|
option(MW_USE_DIRECTWRITE "Use DirectWrite" ON)
|
||||||
|
else()
|
||||||
|
message(WARNING "DirectWrite support has been disabled (must be compiling on Win10+)")
|
||||||
|
option(MW_USE_DIRECTWRITE "Use DirectWrite" OFF)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
@ -83,8 +88,8 @@ if(MW_TRY_OPENGL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(MW_TRY_VULKAN)
|
if(MW_TRY_VULKAN)
|
||||||
check_include_files(vulkan/vulkan.h HAVE_VULKAN_VULKAN_H)
|
find_package(Vulkan OPTIONAL VULKAN)
|
||||||
if(HAVE_VULKAN_VULKAN_H)
|
if(${Vulkan_FOUND})
|
||||||
set(MW_BUILD_VULKAN ON)
|
set(MW_BUILD_VULKAN ON)
|
||||||
message(STATUS "Vulkan widget has been enabled")
|
message(STATUS "Vulkan widget has been enabled")
|
||||||
else()
|
else()
|
||||||
|
|
|
||||||
|
|
@ -1,28 +1,30 @@
|
||||||
file(
|
file(
|
||||||
GLOB
|
GLOB
|
||||||
EXAMPLES_VULKAN_SOURCES
|
EXAMPLES_VULKAN_SOURCES
|
||||||
*.c
|
*.c
|
||||||
)
|
)
|
||||||
find_package(Vulkan)
|
find_package(Vulkan)
|
||||||
|
|
||||||
foreach(PATH IN LISTS EXAMPLES_VULKAN_SOURCES)
|
if(${Vulkan_FOUND})
|
||||||
get_filename_component(TARGET ${PATH} NAME_WE)
|
foreach(PATH IN LISTS EXAMPLES_VULKAN_SOURCES)
|
||||||
add_executable(${TARGET} MACOSX_BUNDLE ${PATH})
|
get_filename_component(TARGET ${PATH} NAME_WE)
|
||||||
target_include_directories(
|
add_executable(${TARGET} MACOSX_BUNDLE ${PATH})
|
||||||
${TARGET}
|
target_include_directories(
|
||||||
PRIVATE
|
${TARGET}
|
||||||
${Vulkan_INCLUDE_DIR}
|
PRIVATE
|
||||||
)
|
${Vulkan_INCLUDE_DIR}
|
||||||
target_link_libraries(
|
)
|
||||||
${TARGET}
|
target_link_libraries(
|
||||||
PRIVATE
|
${TARGET}
|
||||||
Mw
|
PRIVATE
|
||||||
)
|
Mw
|
||||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
)
|
||||||
target_link_libraries(
|
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||||
${TARGET}
|
target_link_libraries(
|
||||||
PRIVATE
|
${TARGET}
|
||||||
m
|
PRIVATE
|
||||||
)
|
m
|
||||||
endif()
|
)
|
||||||
endforeach()
|
endif()
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,3 @@
|
||||||
|
|
||||||
/**
|
|
||||||
* this example is quite minimal, you may need to modify it if your graphics card is more esoteric
|
|
||||||
*
|
|
||||||
* ioixd maintains this file. nishi doesn't know vulkan at all
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <Mw/Milsko.h>
|
#include <Mw/Milsko.h>
|
||||||
#include <Mw/Widget/Vulkan.h>
|
#include <Mw/Widget/Vulkan.h>
|
||||||
|
|
||||||
|
|
@ -264,8 +257,8 @@ void vulkan_setup(MwWidget handle) {
|
||||||
swapchainCreateInfo.imageExtent = (VkExtent2D){.width = ow, .height = oh},
|
swapchainCreateInfo.imageExtent = (VkExtent2D){.width = ow, .height = oh},
|
||||||
swapchainCreateInfo.imageArrayLayers = 1,
|
swapchainCreateInfo.imageArrayLayers = 1,
|
||||||
swapchainCreateInfo.imageUsage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT |
|
swapchainCreateInfo.imageUsage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT |
|
||||||
VK_IMAGE_USAGE_TRANSFER_DST_BIT |
|
VK_IMAGE_USAGE_TRANSFER_DST_BIT |
|
||||||
VK_IMAGE_USAGE_SAMPLED_BIT;
|
VK_IMAGE_USAGE_SAMPLED_BIT;
|
||||||
// th is how we specify no transformation.
|
// th is how we specify no transformation.
|
||||||
swapchainCreateInfo.preTransform = VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR;
|
swapchainCreateInfo.preTransform = VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR;
|
||||||
swapchainCreateInfo.compositeAlpha = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR;
|
swapchainCreateInfo.compositeAlpha = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue