@@ -205,7 +205,8 @@ std::optional<nlohmann::json> Reflector::GenerateTemplateArguments() const {
205205 if (auto uniform_buffers_json =
206206 ReflectResources (shader_resources.uniform_buffers );
207207 uniform_buffers_json.has_value ()) {
208- for (const auto & uniform_buffer : uniform_buffers_json.value ()) {
208+ for (auto uniform_buffer : uniform_buffers_json.value ()) {
209+ uniform_buffer[" descriptor_type" ] = " DescriptorType::kUniformBuffer" ;
209210 buffers.emplace_back (std::move (uniform_buffer));
210211 }
211212 } else {
@@ -214,7 +215,8 @@ std::optional<nlohmann::json> Reflector::GenerateTemplateArguments() const {
214215 if (auto storage_buffers_json =
215216 ReflectResources (shader_resources.storage_buffers );
216217 storage_buffers_json.has_value ()) {
217- for (const auto & uniform_buffer : storage_buffers_json.value ()) {
218+ for (auto uniform_buffer : storage_buffers_json.value ()) {
219+ uniform_buffer[" descriptor_type" ] = " DescriptorType::kStorageBuffer" ;
218220 buffers.emplace_back (std::move (uniform_buffer));
219221 }
220222 } else {
@@ -244,12 +246,15 @@ std::optional<nlohmann::json> Reflector::GenerateTemplateArguments() const {
244246 }
245247 auto & sampled_images = root[" sampled_images" ] = nlohmann::json::array_t {};
246248 for (auto value : combined_sampled_images.value ()) {
249+ value[" descriptor_type" ] = " DescriptorType::kSampledImage" ;
247250 sampled_images.emplace_back (std::move (value));
248251 }
249252 for (auto value : images.value ()) {
253+ value[" descriptor_type" ] = " DescriptorType::kImage" ;
250254 sampled_images.emplace_back (std::move (value));
251255 }
252256 for (auto value : samplers.value ()) {
257+ value[" descriptor_type" ] = " DescriptorType::kSampledSampler" ;
253258 sampled_images.emplace_back (std::move (value));
254259 }
255260 }
0 commit comments