forked from pupbrained/vulkan-test
few little things
This commit is contained in:
parent
7fd7beea60
commit
76fa86d622
13
src/main.cpp
13
src/main.cpp
|
@ -110,7 +110,6 @@ class VulkanApp {
|
||||||
vkfw::WindowHints hints;
|
vkfw::WindowHints hints;
|
||||||
|
|
||||||
hints.clientAPI = vkfw::ClientAPI::eNone;
|
hints.clientAPI = vkfw::ClientAPI::eNone;
|
||||||
hints.resizable = vkfw::eFalse;
|
|
||||||
|
|
||||||
mWindow = vkfw::createWindowUnique(WIDTH, HEIGHT, "Vulkan", hints);
|
mWindow = vkfw::createWindowUnique(WIDTH, HEIGHT, "Vulkan", hints);
|
||||||
}
|
}
|
||||||
|
@ -500,23 +499,21 @@ class VulkanApp {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn recordCommandBuffer(vk::CommandBuffer commandBuffer, u32 imageIndex) -> void {
|
fn recordCommandBuffer(vk::CommandBuffer commandBuffer, u32 imageIndex) -> void {
|
||||||
// might break
|
|
||||||
vk::CommandBufferBeginInfo beginInfo {};
|
vk::CommandBufferBeginInfo beginInfo {};
|
||||||
|
|
||||||
commandBuffer.begin(beginInfo);
|
commandBuffer.begin(beginInfo);
|
||||||
|
|
||||||
vk::ClearValue clearColor { { std::array<float, 4> { 0.0F, 0.0F, 0.0F, 1.0F } } };
|
vk::ClearValue clearColor { .color = { .float32 = std::array<float, 4> { 0.0F, 0.0F, 0.0F, 1.0F } } };
|
||||||
|
|
||||||
vk::RenderPassBeginInfo renderPassInfo {
|
vk::RenderPassBeginInfo renderPassInfo {
|
||||||
.renderPass = mRenderPass.get(),
|
.renderPass = mRenderPass.get(),
|
||||||
.framebuffer = mSwapChainFramebuffers[imageIndex].get(),
|
.framebuffer = mSwapChainFramebuffers[imageIndex].get(),
|
||||||
.renderArea = { .offset = { 0, 0 }, .extent = mSwapChainExtent },
|
.renderArea = { .offset = { .x = 0, .y = 0 }, .extent = mSwapChainExtent },
|
||||||
.clearValueCount = 1,
|
.clearValueCount = 1,
|
||||||
.pClearValues = &clearColor,
|
.pClearValues = &clearColor,
|
||||||
};
|
};
|
||||||
|
|
||||||
commandBuffer.beginRenderPass(renderPassInfo, vk::SubpassContents::eInline);
|
commandBuffer.beginRenderPass(renderPassInfo, vk::SubpassContents::eInline);
|
||||||
|
|
||||||
commandBuffer.bindPipeline(vk::PipelineBindPoint::eGraphics, mGraphicsPipeline.get());
|
commandBuffer.bindPipeline(vk::PipelineBindPoint::eGraphics, mGraphicsPipeline.get());
|
||||||
|
|
||||||
vk::Viewport viewport {
|
vk::Viewport viewport {
|
||||||
|
@ -527,20 +524,17 @@ class VulkanApp {
|
||||||
.minDepth = 0.0F,
|
.minDepth = 0.0F,
|
||||||
.maxDepth = 1.0F,
|
.maxDepth = 1.0F,
|
||||||
};
|
};
|
||||||
|
|
||||||
commandBuffer.setViewport(0, viewport);
|
|
||||||
|
|
||||||
vk::Rect2D scissor {
|
vk::Rect2D scissor {
|
||||||
.offset = { 0, 0 },
|
.offset = { 0, 0 },
|
||||||
.extent = mSwapChainExtent,
|
.extent = mSwapChainExtent,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
commandBuffer.setViewport(0, viewport);
|
||||||
commandBuffer.setScissor(0, scissor);
|
commandBuffer.setScissor(0, scissor);
|
||||||
|
|
||||||
commandBuffer.draw(3, 1, 0, 0);
|
commandBuffer.draw(3, 1, 0, 0);
|
||||||
|
|
||||||
commandBuffer.endRenderPass();
|
commandBuffer.endRenderPass();
|
||||||
|
|
||||||
commandBuffer.end();
|
commandBuffer.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -591,6 +585,7 @@ class VulkanApp {
|
||||||
};
|
};
|
||||||
|
|
||||||
vk::Result presentResult = mPresentQueue.presentKHR(presentInfo);
|
vk::Result presentResult = mPresentQueue.presentKHR(presentInfo);
|
||||||
|
|
||||||
if (presentResult != vk::Result::eSuccess)
|
if (presentResult != vk::Result::eSuccess)
|
||||||
throw std::runtime_error("Failed to present swap chain image!");
|
throw std::runtime_error("Failed to present swap chain image!");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue