bumping spirv interpreter
Test / build_and_test (push) Successful in 1m32s
Build / build (push) Successful in 3m4s

This commit is contained in:
2026-07-03 14:46:11 +02:00
parent 912b510c67
commit ea1e613fd1
3 changed files with 34 additions and 5 deletions
+2 -2
View File
@@ -32,8 +32,8 @@
// Soft dependencies // Soft dependencies
.SPIRV_Interpreter = .{ .SPIRV_Interpreter = .{
.url = "git+https://github.com/Kbz-8/SPIRV-Interpreter#4a8b24d67659ad6c70b655c3f65fbe0b9727451e", .url = "git+https://github.com/Kbz-8/SPIRV-Interpreter#58cf66b6c9797a3b8f1d47ac2437850738faf83b",
.hash = "SPIRV_Interpreter-0.0.1-ajmpnwKACQBTadk3BJ7tNsz-vQv_07pwuffX4iXOOX8I", .hash = "SPIRV_Interpreter-0.0.1-ajmpn9OKCQAK8P9M3hN6IuUqy08O8hlqAVowAzC0YWCR",
.lazy = true, .lazy = true,
}, },
//.SPIRV_Interpreter = .{ //.SPIRV_Interpreter = .{
+9 -1
View File
@@ -298,7 +298,15 @@ fn copyDescriptorRange(dst_desc: *Descriptor, dst_array_element: usize, src_desc
return true; return true;
} }
fn copyDescriptorRangePreservingImmutableSamplers(self: *Self, dst_binding: usize, dst_desc: *Descriptor, dst_array_element: usize, src_desc: Descriptor, src_array_element: usize, descriptor_count: usize) bool { fn copyDescriptorRangePreservingImmutableSamplers(
self: *Self,
dst_binding: usize,
dst_desc: *Descriptor,
dst_array_element: usize,
src_desc: Descriptor,
src_array_element: usize,
descriptor_count: usize,
) bool {
const immutable_samplers = self.interface.layout.bindings[dst_binding].immutable_samplers; const immutable_samplers = self.interface.layout.bindings[dst_binding].immutable_samplers;
if (immutable_samplers.len == 0) { if (immutable_samplers.len == 0) {
return copyDescriptorRange(dst_desc, dst_array_element, src_desc, src_array_element, descriptor_count); return copyDescriptorRange(dst_desc, dst_array_element, src_desc, src_array_element, descriptor_count);
+23 -2
View File
@@ -498,7 +498,18 @@ fn readSampledInt4(
); );
} }
fn sampleImageFloat4Level(image: *SoftImage, image_view: *SoftImageView, sampler: *Self, dim: spv.SpvDim, x: f32, y: f32, z: f32, mip_level: u32, filter: vk.Filter, offset: ImageOffset) VkError!F32x4 { fn sampleImageFloat4Level(
image: *SoftImage,
image_view: *SoftImageView,
sampler: *Self,
dim: spv.SpvDim,
x: f32,
y: f32,
z: f32,
mip_level: u32,
filter: vk.Filter,
offset: ImageOffset,
) VkError!F32x4 {
const extent = image.getMipLevelExtent(mip_level); const extent = image.getMipLevelExtent(mip_level);
const coord: CubeCoordinate = switch (image_view.interface.view_type) { const coord: CubeCoordinate = switch (image_view.interface.view_type) {
.@"1d_array" => .{ .@"1d_array" => .{
@@ -552,7 +563,17 @@ fn sampleImageFloat4Level(image: *SoftImage, image_view: *SoftImageView, sampler
); );
} }
pub fn sampleImageFloat4(image: *SoftImage, image_view: *SoftImageView, sampler: *Self, dim: spv.SpvDim, x: f32, y: f32, z: f32, lod: ?f32, offset: ImageOffset) VkError!F32x4 { pub fn sampleImageFloat4(
image: *SoftImage,
image_view: *SoftImageView,
sampler: *Self,
dim: spv.SpvDim,
x: f32,
y: f32,
z: f32,
lod: ?f32,
offset: ImageOffset,
) VkError!F32x4 {
const range = image_view.interface.subresource_range; const range = image_view.interface.subresource_range;
const mip_count = viewMipCount(image_view); const mip_count = viewMipCount(image_view);
const clamped_lod = sampleLod(image_view, sampler, lod); const clamped_lod = sampleLod(image_view, sampler, lod);