volk define

This commit is contained in:
ouczbs 2024-03-12 00:00:43 +08:00
parent 0f2d9c589f
commit e7c702113f
6 changed files with 19 additions and 14 deletions

View File

@ -22,7 +22,7 @@ namespace vulkanapi {
void CommandThreadWorker::SyncInvoke(voidFn fn) void CommandThreadWorker::SyncInvoke(voidFn fn)
{ {
Invoke([&]() { Invoke([=]() {
fn(); fn();
mSemaphore.release(); mSemaphore.release();
}); });

View File

@ -19,7 +19,7 @@ namespace vulkanapi {
void CommandWorker::InvokeBuffer(commandFn fn) void CommandWorker::InvokeBuffer(commandFn fn)
{ {
mWork->Invoke([&]() { mWork->Invoke([=]() {
Buffer(fn); Buffer(fn);
}); });
} }
@ -34,7 +34,7 @@ namespace vulkanapi {
void CommandWorker::InvokeSubmit() void CommandWorker::InvokeSubmit()
{ {
mWork->Invoke([&]() { mWork->Invoke([=]() {
Submit(); Submit();
}); });
} }

View File

@ -1,14 +1,6 @@
#pragma once #pragma once
#include <Windows.h> #include <Windows.h>
#include <functional> #include <functional>
#if defined(_WIN32)
# define VK_USE_PLATFORM_WIN32_KHR
#elif defined(__linux__) || defined(__unix__)
# define VK_USE_PLATFORM_XLIB_KHR
#elif defined(__APPLE__)
# define VK_USE_PLATFORM_MACOS_MVK
#else
#endif
#define VK_NO_PROTOTYPES #define VK_NO_PROTOTYPES
#include "volk.h" #include "volk.h"
#include <string> #include <string>

View File

@ -4,10 +4,10 @@
namespace vulkanapi { namespace vulkanapi {
InstanceCreator::InstanceCreator() InstanceCreator::InstanceCreator()
: appName("Vulkan Application") : appName("Vulkan Application")
, appVersion(VK_MAKE_VERSION(1, 0, 0)) , appVersion(VK_API_VERSION_1_3)
, engineName("zengine") , engineName("zengine")
, engineVersion(VK_MAKE_VERSION(1, 0, 0)) , engineVersion(VK_API_VERSION_1_3)
, apiVersion(VK_API_VERSION_1_0) , apiVersion(VK_API_VERSION_1_3)
#ifdef Z_USE_GRAPHIC_DEBUG #ifdef Z_USE_GRAPHIC_DEBUG
, messageSeverity(VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT) , messageSeverity(VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT)
, messageType(VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT) , messageType(VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT)

View File

@ -1,9 +1,11 @@
includes("3rdparty/xmake.lua") includes("3rdparty/xmake.lua")
includes("xmake/**xmake.lua")
--includes("test/**xmake.lua") --includes("test/**xmake.lua")
add_requires("assimp") add_requires("assimp")
target("zengine") target("zengine")
set_kind("binary") set_kind("binary")
set_rundir(".") set_rundir(".")
add_rules("volk.env")
add_deps("zcoro","zlog") add_deps("zcoro","zlog")
add_packages("vulkansdk","tinyobjloader","assimp") add_packages("vulkansdk","tinyobjloader","assimp")
add_includedirs("src/engine") add_includedirs("src/engine")

View File

@ -0,0 +1,11 @@
rule("volk.env")
-- before load
on_load(function (target)
if is_plat("windows") then
target:add("defines", "VK_USE_PLATFORM_WIN32_KHR=1")
elseif is_plat("linux") then
target:add("defines", "VK_USE_PLATFORM_XLIB_KHR=1")
elseif is_plat("macosx") then
target:add("defines", "VK_USE_PLATFORM_MACOS_MVK=1")
end
end)