|
|
|
@ -445,7 +445,6 @@ public: |
|
|
|
})}; |
|
|
|
// TODO: Read this from TIC
|
|
|
|
texture_descriptors[index].is_multisample |= desc.is_multisample; |
|
|
|
texture_descriptors[index].is_integer |= desc.is_integer; |
|
|
|
return index; |
|
|
|
} |
|
|
|
|
|
|
|
@ -608,7 +607,6 @@ void TexturePass(Environment& env, IR::Program& program, const HostTranslateInfo |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
const bool is_integer = IsTexturePixelFormatInteger(env, cbuf); |
|
|
|
u32 index; |
|
|
|
switch (inst->GetOpcode()) { |
|
|
|
case IR::Opcode::ImageRead: |
|
|
|
@ -629,6 +627,7 @@ void TexturePass(Environment& env, IR::Program& program, const HostTranslateInfo |
|
|
|
} |
|
|
|
const bool is_written{inst->GetOpcode() != IR::Opcode::ImageRead}; |
|
|
|
const bool is_read{inst->GetOpcode() != IR::Opcode::ImageWrite}; |
|
|
|
const bool is_integer{IsTexturePixelFormatInteger(env, cbuf)}; |
|
|
|
if (flags.type == TextureType::Buffer) { |
|
|
|
index = descriptors.Add(ImageBufferDescriptor{ |
|
|
|
.format = flags.image_format, |
|
|
|
@ -673,7 +672,6 @@ void TexturePass(Environment& env, IR::Program& program, const HostTranslateInfo |
|
|
|
.type = flags.type, |
|
|
|
.is_depth = flags.is_depth != 0, |
|
|
|
.is_multisample = is_multisample, |
|
|
|
.is_integer = is_integer, |
|
|
|
.has_secondary = cbuf.has_secondary, |
|
|
|
.cbuf_index = cbuf.index, |
|
|
|
.cbuf_offset = cbuf.offset, |
|
|
|
|