|
|
|
@ -3,7 +3,6 @@ |
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
|
|
#include <algorithm>
|
|
|
|
#include <bit>
|
|
|
|
#include <memory>
|
|
|
|
#include <ranges>
|
|
|
|
#include <vector>
|
|
|
|
@ -144,7 +143,9 @@ IR::Program TranslateProgram(ObjectPool<IR::Inst>& inst_pool, ObjectPool<IR::Blo |
|
|
|
program.is_geometry_passthrough = sph.common0.geometry_passthrough != 0; |
|
|
|
if (program.is_geometry_passthrough) { |
|
|
|
const auto& mask{env.GpPassthroughMask()}; |
|
|
|
program.info.passthrough.mask |= ~std::bit_cast<std::bitset<256>>(mask); |
|
|
|
for (size_t i = 0; i < program.info.passthrough.mask.size(); ++i) { |
|
|
|
program.info.passthrough.mask[i] = ((mask[i / 32] >> (i % 32)) & 1) == 0; |
|
|
|
} |
|
|
|
} |
|
|
|
break; |
|
|
|
} |
|
|
|
|