spirv: Implement image buffers

This commit is contained in:
ReinUsesLisp 2021-04-14 21:36:36 -03:00 committed by ameerj
parent d8ec99dada
commit 416e1b7441
9 changed files with 142 additions and 49 deletions

View file

@ -149,7 +149,8 @@ Id Image(EmitContext& ctx, const IR::Value& index, IR::TextureInstInfo info) {
throw NotImplementedException("Indirect image indexing");
}
if (info.type == TextureType::Buffer) {
throw NotImplementedException("Image buffer");
const ImageBufferDefinition def{ctx.image_buffers.at(index.U32())};
return ctx.OpLoad(def.image_type, def.id);
} else {
const ImageDefinition def{ctx.images.at(index.U32())};
return ctx.OpLoad(def.image_type, def.id);