Skip to content

Commit 143f095

Browse files
Improved getGlslangResource()
1 parent ce74e57 commit 143f095

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

lvk/vulkan/VulkanUtils.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -387,12 +387,12 @@ VmaAllocator lvk::createVmaAllocator(VkPhysicalDevice physDev,
387387
glslang_resource_t lvk::getGlslangResource(const VkPhysicalDeviceLimits& limits) {
388388
const glslang_resource_t resource = {
389389
.max_lights = 32,
390-
.max_clip_planes = 6,
390+
.max_clip_planes = (int)limits.maxClipDistances,
391391
.max_texture_units = 32,
392392
.max_texture_coords = 32,
393393
.max_vertex_attribs = (int)limits.maxVertexInputAttributes,
394-
.max_vertex_uniform_components = 4096,
395-
.max_varying_floats = 64,
394+
.max_vertex_uniform_components = (int)limits.maxUniformBufferRange / 4,
395+
.max_varying_floats = (int)std::min(limits.maxVertexOutputComponents, limits.maxFragmentInputComponents),
396396
.max_vertex_texture_image_units = 32,
397397
.max_combined_texture_image_units = 80,
398398
.max_texture_image_units = 32,
@@ -401,10 +401,10 @@ glslang_resource_t lvk::getGlslangResource(const VkPhysicalDeviceLimits& limits)
401401
.max_vertex_uniform_vectors = 128,
402402
.max_varying_vectors = 8,
403403
.max_fragment_uniform_vectors = 16,
404-
.max_vertex_output_vectors = 16,
405-
.max_fragment_input_vectors = 15,
406-
.min_program_texel_offset = -8,
407-
.max_program_texel_offset = 7,
404+
.max_vertex_output_vectors = (int)limits.maxVertexOutputComponents / 4,
405+
.max_fragment_input_vectors = (int)limits.maxFragmentInputComponents / 4,
406+
.min_program_texel_offset = limits.minTexelOffset,
407+
.max_program_texel_offset = (int)limits.maxTexelOffset,
408408
.max_clip_distances = (int)limits.maxClipDistances,
409409
.max_compute_work_group_count_x = (int)limits.maxComputeWorkGroupCount[0],
410410
.max_compute_work_group_count_y = (int)limits.maxComputeWorkGroupCount[1],

0 commit comments

Comments
 (0)