mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-04-10 07:38:56 +02:00
Update src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
This commit is contained in:
parent
ac99ea96da
commit
547ca5e3ba
1 changed files with 7 additions and 5 deletions
|
|
@ -142,12 +142,14 @@ Id GetCbuf(EmitContext& ctx, Id result_type, Id UniformDefinitions::*member_ptr,
|
|||
|
||||
const auto is_float = UniformDefinitions::IsFloat(member_ptr);
|
||||
const auto num_elements = UniformDefinitions::NumElements(member_ptr);
|
||||
auto const zero_const = is_float ? ctx.Const(0.0f) : ctx.Const(0u);
|
||||
const std::array zero_vec{zero_const, zero_const, zero_const, zero_const};
|
||||
const std::array zero_vec{
|
||||
is_float ? ctx.Const(0.0f) : ctx.Const(0u),
|
||||
is_float ? ctx.Const(0.0f) : ctx.Const(0u),
|
||||
is_float ? ctx.Const(0.0f) : ctx.Const(0u),
|
||||
is_float ? ctx.Const(0.0f) : ctx.Const(0u),
|
||||
};
|
||||
const Id cond = ctx.OpULessThanEqual(ctx.TypeBool(), buffer_offset, ctx.Const(0xFFFFu));
|
||||
const Id zero = num_elements > 1
|
||||
? ctx.OpCompositeConstruct(result_type, std::span(zero_vec.data(), num_elements))
|
||||
: zero_const;
|
||||
const Id zero = ctx.OpCompositeConstruct(result_type, std::span(zero_vec.data(), num_elements));
|
||||
return ctx.OpSelect(result_type, cond, val, zero);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue