mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-11 15:51:36 +00:00
25ade4c0f3
And provisionally parse shader stage defs.
87 lines
2.4 KiB
Text
87 lines
2.4 KiB
Text
{
|
|
modules = (
|
|
// specify shader modules to load into memory
|
|
{
|
|
// the name of the module for referecy by the pipeline
|
|
name = passthrough;
|
|
// the path to the spv file to load
|
|
// $shader refers to the shader install path
|
|
// $builtin refers to compiled-in shaders
|
|
file = $builtin/passthrough.vert;
|
|
},
|
|
{
|
|
name = pushcolor;
|
|
file = $builtin/pushcolor.frag;
|
|
},
|
|
);
|
|
renderpass = {
|
|
attachments = (
|
|
{
|
|
flags = 0;
|
|
format = $swapchain.format;
|
|
samples = $msaaSamples;
|
|
loadOp = VK_ATTACHMENT_LOAD_OP_CLEAR;
|
|
storeOp = VK_ATTACHMENT_STORE_OP_STORE;
|
|
stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
|
|
stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
|
|
initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
|
|
finalLayout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
|
|
},
|
|
{
|
|
flags = 0;
|
|
format = VK_FORMAT_D32_SFLOAT;
|
|
samples = $msaaSamples;
|
|
loadOp = VK_ATTACHMENT_LOAD_OP_CLEAR;
|
|
storeOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
|
|
stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
|
|
stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
|
|
initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
|
|
finalLayout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
|
|
},
|
|
{
|
|
flags = 0;
|
|
format = $swapchain.format;
|
|
samples = VK_SAMPLE_COUNT_1_BIT;
|
|
loadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
|
|
storeOp = VK_ATTACHMENT_STORE_OP_STORE;
|
|
stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
|
|
stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
|
|
initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
|
|
finalLayout = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR;
|
|
},
|
|
);
|
|
subpasses = (
|
|
{
|
|
pipelineBindPoint = VK_PIPELINE_BIND_POINT_GRAPHICS;
|
|
colorAttachments = (
|
|
{
|
|
attachment = 0;
|
|
layout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
|
|
}
|
|
);
|
|
resolveAttachments = (
|
|
{
|
|
attachment = 2;
|
|
layout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
|
|
}
|
|
);
|
|
depthStencilAttachment = {
|
|
attachment = 1;
|
|
layout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
|
|
};
|
|
preserveAttachments = ();
|
|
},
|
|
);
|
|
dependencies = (
|
|
{
|
|
srcSubpass = VK_SUBPASS_EXTERNAL;
|
|
dstSubpass = 0;
|
|
srcStageMask = VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT;
|
|
dstStageMask = VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT;
|
|
srcAccessMask = 0;
|
|
dstAccessMask = "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT | VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT";
|
|
dependencyFlags = 0;
|
|
}
|
|
);
|
|
}
|
|
}
|