Skip to content

Commit 72a469a

Browse files
committed
Fixed long-standing memory locality oversight
1 parent 8536dd9 commit 72a469a

File tree

11 files changed

+92
-33
lines changed

11 files changed

+92
-33
lines changed

Source/Engine/Engine.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@
101101
<PreprocessorDefinitions>QUARTZ_DEBUG;QUARTZ_API_EXPORT;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
102102
</ClCompile>
103103
<Link>
104-
<AdditionalDependencies>core.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
104+
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
105105
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);</AdditionalLibraryDirectories>
106106
</Link>
107107
</ItemDefinitionGroup>
@@ -115,7 +115,7 @@
115115
<PreprocessorDefinitions>QUARTZ_DEBUG;QUARTZ_64;QUARTZ_API_EXPORT;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
116116
</ClCompile>
117117
<Link>
118-
<AdditionalDependencies>core.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
118+
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
119119
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);</AdditionalLibraryDirectories>
120120
</Link>
121121
</ItemDefinitionGroup>
@@ -135,7 +135,7 @@
135135
<Link>
136136
<EnableCOMDATFolding>true</EnableCOMDATFolding>
137137
<OptimizeReferences>true</OptimizeReferences>
138-
<AdditionalDependencies>core.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
138+
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
139139
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);</AdditionalLibraryDirectories>
140140
</Link>
141141
</ItemDefinitionGroup>
@@ -155,7 +155,7 @@
155155
<Link>
156156
<EnableCOMDATFolding>true</EnableCOMDATFolding>
157157
<OptimizeReferences>true</OptimizeReferences>
158-
<AdditionalDependencies>core.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
158+
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
159159
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);</AdditionalLibraryDirectories>
160160
</Link>
161161
</ItemDefinitionGroup>

Source/Engine/src/graphics/VGFXContext.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,6 +491,8 @@ namespace Quartz
491491

492492
virtual void UnmapBuffer(HGFXBuffer buffer) = 0;
493493

494+
virtual void CopyBuffer(HGFXBuffer source, HGFXBuffer dest) = 0;
495+
494496
virtual void CopyBufferToImage(HGFXBuffer buffer, HGFXImage image) = 0;
495497

496498
virtual void TransitionImage(HGFXImage image, GFXImageLayout oldLayout, GFXImageLayout newLayout) = 0;

Source/Sandbox/Sandbox.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@
9393
<PreprocessorDefinitions>QUARTZ_DEBUG;_CRT_SECURE_NO_WARNINGS;QUARTZ_DEBUG;_MBCS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
</ClCompile>
9595
<Link>
96-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
96+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
9797
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
9898
</Link>
9999
<PostBuildEvent>
@@ -116,7 +116,7 @@ call compile_and_resources.bat</Command>
116116
<PreprocessorDefinitions>QUARTZ_DEBUG;QUARTZ_64;_CRT_SECURE_NO_WARNINGS;QUARTZ_DEBUG;QUARTZ_64;_MBCS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
117117
</ClCompile>
118118
<Link>
119-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
119+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
120120
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
121121
</Link>
122122
<PostBuildEvent>
@@ -145,7 +145,7 @@ call compile_and_resources.bat</Command>
145145
<Link>
146146
<EnableCOMDATFolding>true</EnableCOMDATFolding>
147147
<OptimizeReferences>true</OptimizeReferences>
148-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
148+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
149149
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
150150
</Link>
151151
<PostBuildEvent>
@@ -174,7 +174,7 @@ call compile_and_resources.bat</Command>
174174
<Link>
175175
<EnableCOMDATFolding>true</EnableCOMDATFolding>
176176
<OptimizeReferences>true</OptimizeReferences>
177-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
177+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan_win32.lib;vulkan.lib;vulkan-1.lib;%(AdditionalDependencies)</AdditionalDependencies>
178178
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
179179
</Link>
180180
<PostBuildEvent>

Source/Sandbox/src/Sandbox.cpp

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ namespace Quartz
4242
SCENE RESOURCES
4343
=====================================*/
4444

45-
#define MODEL_PATH "models/testscene.obj"
45+
#define MODEL_PATH "models/sponza2.obj"
4646
#define DIFFUSE_PATH "textures/stone.png"
4747
#define NORMAL_PATH "textures/stone_normal.png"
4848
#define SPECULAR_PATH "textures/stone_specular.png"
@@ -400,17 +400,28 @@ int main(int argc, char* argv[])
400400
BUFFERS
401401
=====================================*/
402402

403-
HGFXBuffer vertexBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_VERTEX_BUFFER_BIT,
403+
HGFXBuffer vertexStagingBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_VERTEX_BUFFER_BIT | GFX_BUFFER_USAGE_TRANSFER_SRC_BIT,
404404
GFX_BUFFER_ACCESS_HOST_VISIBLE_BIT | GFX_BUFFER_ACCESS_HOST_COHERENT_BIT, mModel.vertexData.buffer.Size());
405-
void* pVertexData = pVulkanContext->MapBuffer(vertexBuffer);
405+
void* pVertexData = pVulkanContext->MapBuffer(vertexStagingBuffer);
406406
memcpy(pVertexData, mModel.vertexData.buffer.Data(), mModel.vertexData.buffer.Size());
407-
pVulkanContext->UnmapBuffer(vertexBuffer);
407+
pVulkanContext->UnmapBuffer(vertexStagingBuffer);
408408

409-
HGFXBuffer indexBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_INDEX_BUFFER_BIT,
409+
HGFXBuffer indexStagingBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_INDEX_BUFFER_BIT | GFX_BUFFER_USAGE_TRANSFER_SRC_BIT,
410410
GFX_BUFFER_ACCESS_HOST_VISIBLE_BIT | GFX_BUFFER_ACCESS_HOST_COHERENT_BIT, mModel.indexData.buffer.Size());
411-
void* pIndexData = pVulkanContext->MapBuffer(indexBuffer);
411+
void* pIndexData = pVulkanContext->MapBuffer(indexStagingBuffer);
412412
memcpy(pIndexData, mModel.indexData.buffer.Data(), mModel.indexData.buffer.Size());
413-
pVulkanContext->UnmapBuffer(indexBuffer);
413+
pVulkanContext->UnmapBuffer(indexStagingBuffer);
414+
415+
HGFXBuffer vertexBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_VERTEX_BUFFER_BIT | GFX_BUFFER_USAGE_TRANSFER_DEST_BIT,
416+
GFX_BUFFER_ACCESS_DEVICE_LOCAL_BIT, mModel.vertexData.buffer.Size());
417+
418+
HGFXBuffer indexBuffer = pVulkanContext->CreateBuffer(GFX_BUFFER_USAGE_INDEX_BUFFER_BIT | GFX_BUFFER_USAGE_TRANSFER_DEST_BIT,
419+
GFX_BUFFER_ACCESS_DEVICE_LOCAL_BIT, mModel.vertexData.buffer.Size());
420+
421+
pVulkanContext->CopyBuffer(vertexStagingBuffer, vertexBuffer);
422+
pVulkanContext->CopyBuffer(indexStagingBuffer, indexBuffer);
423+
424+
//pVulkanContext.DestroyBuffer();
414425

415426
/*=====================================
416427
TEXTURES
@@ -476,7 +487,7 @@ int main(int argc, char* argv[])
476487
GFX_IMAGE_VIEW_TYPE_2D, GFX_IMAGE_USAGE_SAMPLED_TEXTURE, 0, 1, 0, 1);
477488

478489
HGFXSampler textureSampler = pVulkanContext->CreateSampler(GFX_SAMPLER_FILTER_LINEAR,
479-
GFX_SAMPLER_FILTER_LINEAR, GFX_SAMPLER_MODE_REPEAT, 16);
490+
GFX_SAMPLER_FILTER_LINEAR, GFX_SAMPLER_MODE_REPEAT, 8);
480491

481492
/*=====================================
482493
GENERATE COMMAND BUFFERS

Source/Vulkan/Vulkan.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898
</ClCompile>
9999
<Link>
100100
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
101-
<AdditionalDependencies>core.lib;engine.lib;vulkan-1.lib;spirv-cross-c.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
101+
<AdditionalDependencies>engine.lib;vulkan-1.lib;spirv-cross-c.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
102102
</Link>
103103
</ItemDefinitionGroup>
104104
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -112,7 +112,7 @@
112112
</ClCompile>
113113
<Link>
114114
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
115-
<AdditionalDependencies>core.lib;engine.lib;$(VULKAN_SDK)\Lib\*.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
115+
<AdditionalDependencies>engine.lib;$(VULKAN_SDK)\Lib\*.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
116116
</Link>
117117
</ItemDefinitionGroup>
118118
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -132,7 +132,7 @@
132132
<EnableCOMDATFolding>true</EnableCOMDATFolding>
133133
<OptimizeReferences>true</OptimizeReferences>
134134
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
135-
<AdditionalDependencies>core.lib;engine.lib;vulkan-1.lib;spirv-cross-c.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
135+
<AdditionalDependencies>engine.lib;vulkan-1.lib;spirv-cross-c.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
136136
</Link>
137137
</ItemDefinitionGroup>
138138
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -153,7 +153,7 @@
153153
<EnableCOMDATFolding>true</EnableCOMDATFolding>
154154
<OptimizeReferences>true</OptimizeReferences>
155155
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
156-
<AdditionalDependencies>core.lib;engine.lib;$(VULKAN_SDK)\Lib\*.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
156+
<AdditionalDependencies>engine.lib;$(VULKAN_SDK)\Lib\*.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
157157
</Link>
158158
</ItemDefinitionGroup>
159159
<ItemGroup>

Source/Vulkan/src/VulkanContext.cpp

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1312,6 +1312,48 @@ namespace Quartz
13121312
pVulkanBuffer->pMemory->UnmapMemory();
13131313
}
13141314

1315+
void VPLVulkanContext::CopyBuffer(HGFXBuffer source, HGFXBuffer dest)
1316+
{
1317+
// @TODO: Probably clean this up to not have to recreate command buffers
1318+
1319+
VulkanBuffer* pVulkanBufferSource = static_cast<VulkanBuffer*>(source);
1320+
VulkanBuffer* pVulkanBufferDest = static_cast<VulkanBuffer*>(dest);
1321+
1322+
VkCommandBufferAllocateInfo allocInfo{};
1323+
allocInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO;
1324+
allocInfo.level = VK_COMMAND_BUFFER_LEVEL_PRIMARY;
1325+
allocInfo.commandPool = mpDevice->GetTransferCommandPoolHandle();
1326+
allocInfo.commandBufferCount = 1;
1327+
1328+
VkCommandBuffer commandBuffer;
1329+
vkAllocateCommandBuffers(mpDevice->GetDeviceHandle(), &allocInfo, &commandBuffer);
1330+
1331+
VkCommandBufferBeginInfo beginInfo{};
1332+
beginInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO;
1333+
beginInfo.flags = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT;
1334+
1335+
vkBeginCommandBuffer(commandBuffer, &beginInfo);
1336+
1337+
VkBufferCopy copyRegion{};
1338+
copyRegion.srcOffset = 0;
1339+
copyRegion.dstOffset = 0;
1340+
copyRegion.size = pVulkanBufferSource->sizeBytes;
1341+
1342+
vkCmdCopyBuffer(commandBuffer, pVulkanBufferSource->vkBuffer, pVulkanBufferDest->vkBuffer, 1, &copyRegion);
1343+
1344+
vkEndCommandBuffer(commandBuffer);
1345+
1346+
VkSubmitInfo submitInfo{};
1347+
submitInfo.sType = VK_STRUCTURE_TYPE_SUBMIT_INFO;
1348+
submitInfo.commandBufferCount = 1;
1349+
submitInfo.pCommandBuffers = &commandBuffer;
1350+
1351+
vkQueueSubmit(mpDevice->GetTransferQueue().GetQueueHandle(), 1, &submitInfo, VK_NULL_HANDLE);
1352+
vkQueueWaitIdle(mpDevice->GetTransferQueue().GetQueueHandle());
1353+
1354+
vkFreeCommandBuffers(mpDevice->GetDeviceHandle(), mpDevice->GetTransferCommandPoolHandle(), 1, &commandBuffer);
1355+
}
1356+
13151357
void VPLVulkanContext::CopyBufferToImage(HGFXBuffer buffer, HGFXImage image)
13161358
{
13171359
// @TODO: Probably clean this up to not have to recreate command buffers

Source/Vulkan/src/VulkanContext.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,8 @@ namespace Quartz
285285

286286
void UnmapBuffer(HGFXBuffer buffer) override;
287287

288+
void CopyBuffer(HGFXBuffer source, HGFXBuffer dest) override;
289+
288290
void CopyBufferToImage(HGFXBuffer buffer, HGFXImage image) override;
289291

290292
void TransitionImage(HGFXImage image, GFXImageLayout oldLayout, GFXImageLayout newLayout) override;

Source/Vulkan/src/VulkanDeviceMemory.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,13 +88,15 @@ namespace Quartz
8888
return nullptr;
8989
}
9090

91-
VulkanDeviceMemoryAllocation allocation(mpParentDevice->GetDeviceHandle(), deviceMemory, memoryProperties, memoryTypeBits, sizeBytes);
92-
VulkanDeviceMemoryAllocation* pStoredAllocation = mDeviceHeapAllocations.PushBack(allocation);
93-
mAllocationIndexMap.Put((VulkanDeviceMemoryHandle)pStoredAllocation, mDeviceHeapAllocations.Size() - 1);
91+
VulkanDeviceMemoryAllocation* pAllocation = new VulkanDeviceMemoryAllocation(mpParentDevice->GetDeviceHandle(),
92+
deviceMemory, memoryProperties, memoryTypeBits, sizeBytes);
93+
94+
mDeviceHeapAllocations.PushBack(pAllocation);
95+
mAllocationIndexMap.Put((VulkanDeviceMemoryHandle)pAllocation, mDeviceHeapAllocations.Size() - 1);
9496

9597
mTotalAllocatedSize += sizeBytes;
9698

97-
return pStoredAllocation;
99+
return pAllocation;
98100
}
99101

100102
void VulkanDeviceMemoryAllocator::Free(VulkanDeviceMemoryAllocation* deviceAllocation)

Source/Vulkan/src/VulkanDeviceMemory.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ namespace Quartz
4545
{
4646
private:
4747
VulkanDevice* mpParentDevice;
48-
Array<VulkanDeviceMemoryAllocation> mDeviceHeapAllocations;
48+
Array<VulkanDeviceMemoryAllocation*> mDeviceHeapAllocations;
4949
Map<VulkanDeviceMemoryHandle, UInt32> mAllocationIndexMap;
5050
UInt64 mTotalAllocatedSize;
5151

Source/VulkanWin32/VulkanWin32.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@
104104
</ClCompile>
105105
<Link>
106106
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
107-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
107+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
108108
</Link>
109109
</ItemDefinitionGroup>
110110
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
@@ -118,7 +118,7 @@
118118
</ClCompile>
119119
<Link>
120120
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
121-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
121+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
122122
</Link>
123123
</ItemDefinitionGroup>
124124
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -138,7 +138,7 @@
138138
<EnableCOMDATFolding>true</EnableCOMDATFolding>
139139
<OptimizeReferences>true</OptimizeReferences>
140140
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib32</AdditionalLibraryDirectories>
141-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
141+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
142142
</Link>
143143
</ItemDefinitionGroup>
144144
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -158,7 +158,7 @@
158158
<EnableCOMDATFolding>true</EnableCOMDATFolding>
159159
<OptimizeReferences>true</OptimizeReferences>
160160
<AdditionalLibraryDirectories>$(SolutionDir)$(Configuration);$(VULKAN_SDK)\Lib</AdditionalLibraryDirectories>
161-
<AdditionalDependencies>core.lib;engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
161+
<AdditionalDependencies>engine.lib;platform_win32.lib;vulkan.lib;vulkan-1.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
162162
</Link>
163163
</ItemDefinitionGroup>
164164
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

0 commit comments

Comments
 (0)