Jelajahi Sumber

Resolve merging mistakes

jiaweig 4 tahun lalu
induk
melakukan
446bc288fd
1 mengubah file dengan 11 tambahan dan 7 penghapusan
  1. 11 7
      Gem/Code/Source/RHI/BindlessPrototypeExampleComponent.cpp

+ 11 - 7
Gem/Code/Source/RHI/BindlessPrototypeExampleComponent.cpp

@@ -394,8 +394,8 @@ namespace AtomSampleViewer
 
         // Set up the SRGs
         {
-            const char* floatBufferSrgPath = "shaderlib/atom/rpi/shaderresourcegroups/bindlessprototypesrg_floatbuffersrg.azsrg";
-            const char* imageSrgPath = "shaderlib/atom/rpi/shaderresourcegroups/bindlessprototypesrg_imagesrg.azsrg";
+            const char* floatBufferSrgPath = "shaders/rhi/bindlessprototypesrg_floatbuffersrg.azsrg";
+            const char* imageSrgPath = "shaders/rhi/bindlessprototypesrg_imagesrg.azsrg";
 
             // Set the FloatBufferSrg
             m_bindlessSrg = std::make_unique<BindlessSrg>(BindlessSrg({
@@ -468,15 +468,19 @@ namespace AtomSampleViewer
         // Set the images
         {
             Data::Instance<AZ::RPI::ShaderResourceGroup> imageSrg = m_bindlessSrg->GetSrg(m_imageSrgName);
-            AZ::RHI::ShaderInputImageIndex imageIndex = imageSrg->FindShaderInputImageIndex(AZ::Name(textureArrayId));
+            AZ::RHI::ShaderInputImageUnboundedArrayIndex imageIndex = imageSrg->FindShaderInputImageUnboundedArrayIndex(AZ::Name(textureArrayId));
 
-            for (uint32_t textuerIdx = 0u; textuerIdx < InternalBP::ImageCount; textuerIdx++)
+            AZStd::vector<const RHI::ImageView*> imageViews;
+            for (uint32_t textureIdx = 0u; textureIdx < InternalBP::ImageCount; textureIdx++)
             {
-                AZ::Data::Instance<AZ::RPI::StreamingImage> image = LoadStreamingImage(InternalBP::Images[textuerIdx], InternalBP::SampleName);
-                [[maybe_unused]] bool result = imageSrg->SetImage(imageIndex, image, textuerIdx);
-                AZ_Assert(result, "Failed to set image into shader resource group.");
+                AZ::Data::Instance<AZ::RPI::StreamingImage> image = LoadStreamingImage(InternalBP::Images[textureIdx], InternalBP::SampleName);
+                m_images.push_back(image);
+                imageViews.push_back(image->GetImageView());
             }
 
+            [[maybe_unused]] bool result = imageSrg->SetImageViewUnboundedArray(imageIndex, imageViews);
+            AZ_Assert(result, "Failed to set image view unbounded array into shader resource group.");
+
             // Compile the image SRG
             imageSrg->Compile();
         }