| 145 | } |
| 146 | |
| 147 | void FramePass::addInputStorage( Attachment const & attachment |
| 148 | , uint32_t binding ) |
| 149 | { |
| 150 | if ( attachment.isImage() ) |
| 151 | { |
| 152 | auto attachName = fpass::adjustName( *this, attachment.view().data->name ) + "/IStr"; |
| 153 | auto attach = addOwnAttach( attachment.imageAttach.views |
| 154 | , std::move( attachName ) |
| 155 | , Attachment::FlagKind( Attachment::Flag::Input ) |
| 156 | , ImageAttachment::FlagKind( ImageAttachment::Flag::Storage ) |
| 157 | , AttachmentLoadOp::eDontCare, AttachmentStoreOp::eDontCare |
| 158 | , AttachmentLoadOp::eDontCare, AttachmentStoreOp::eDontCare |
| 159 | , ClearValue{} |
| 160 | , PipelineColorBlendAttachmentState{} |
| 161 | , ImageLayout::eGeneral |
| 162 | , &attachment ); |
| 163 | m_inputs.try_emplace( binding, attach ); |
| 164 | } |
| 165 | else |
| 166 | { |
| 167 | auto attachName = fpass::adjustName( *this, attachment.buffer().data->name ) + "/IStr"; |
| 168 | auto attach = addOwnAttach( attachment.bufferAttach.buffers |
| 169 | , std::move( attachName ) |
| 170 | , Attachment::FlagKind( Attachment::Flag::Input ) |
| 171 | , BufferAttachment::FlagKind( BufferAttachment::Flag::Storage ) |
| 172 | , AccessState{} |
| 173 | , &attachment ); |
| 174 | m_inputs.try_emplace( binding, attach ); |
| 175 | } |
| 176 | } |
| 177 | |
| 178 | Attachment const * FramePass::addInOutStorage( Attachment const & attachment |
| 179 | , uint32_t binding ) |