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)
{
Invoke([&]() {
Invoke([=]() {
fn();
mSemaphore.release();
});

View File

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

View File

@ -1,14 +1,6 @@
#pragma once
#include <Windows.h>
#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
#include "volk.h"
#include <string>

View File

@ -4,10 +4,10 @@
namespace vulkanapi {
InstanceCreator::InstanceCreator()
: appName("Vulkan Application")
, appVersion(VK_MAKE_VERSION(1, 0, 0))
, appVersion(VK_API_VERSION_1_3)
, engineName("zengine")
, engineVersion(VK_MAKE_VERSION(1, 0, 0))
, apiVersion(VK_API_VERSION_1_0)
, engineVersion(VK_API_VERSION_1_3)
, apiVersion(VK_API_VERSION_1_3)
#ifdef Z_USE_GRAPHIC_DEBUG
, 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)

View File

@ -1,9 +1,11 @@
includes("3rdparty/xmake.lua")
includes("xmake/**xmake.lua")
--includes("test/**xmake.lua")
add_requires("assimp")
target("zengine")
set_kind("binary")
set_rundir(".")
add_rules("volk.env")
add_deps("zcoro","zlog")
add_packages("vulkansdk","tinyobjloader","assimp")
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)