- memset(&cat, 0, sizeof cat);
- cat.format = r->fmt;
- cat.samples = r->num_samples;
- cat.loadOp = r->clear ? VK_ATTACHMENT_LOAD_OP_CLEAR : VK_ATTACHMENT_LOAD_OP_DONT_CARE;
- cat.storeOp = VK_ATTACHMENT_STORE_OP_STORE;
- cat.stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
- cat.stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
- cat.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
- cat.finalLayout = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR;
+ zidx = r->num_colbuf;
+ memset(att, 0, sizeof att);
+ for(i=0; i<r->num_colbuf; i++) {
+ att[i].format = r->fmt;
+ att[i].samples = r->num_samples;
+ att[i].loadOp = r->clear ? VK_ATTACHMENT_LOAD_OP_CLEAR : VK_ATTACHMENT_LOAD_OP_DONT_CARE;
+ att[i].storeOp = VK_ATTACHMENT_STORE_OP_STORE;
+ att[i].stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
+ att[i].stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
+ att[i].initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
+ att[i].finalLayout = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR;
+ }
+ att[zidx].format = r->zfmt;
+ att[zidx].samples = 1;
+ att[zidx].loadOp = r->clear ? VK_ATTACHMENT_LOAD_OP_CLEAR : VK_ATTACHMENT_LOAD_OP_DONT_CARE;
+ att[zidx].storeOp = VK_ATTACHMENT_STORE_OP_STORE;
+ att[zidx].stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE;
+ att[zidx].stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE;
+ att[zidx].initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
+ att[zidx].finalLayout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;