Search Issue Tracker
By Design
Votes
0
Found in
6000.0.30f1
6000.1.0a7
6000.2.0a1
6000.3.0a1
Issue ID
UUM-90463
Regression
No
[Vulkan] Crash on vk::DescriptorState::BindRandomWriteBuffer when using Lit shaders with Custom Render Pipeline
Reproduction steps:
1. Open the attached “IN-89723_vulkancrash” project
2. Make sure Vulkan Graphics API is used
3. Replace “Assets/Custom RP/Runtime/Passes/LightingPass.cs“ with the attached LightinPass.cs script
4. Open the “Assets/Scenes/LOD/LOD Scene.unity” scene
Expected results: Scene is opened
Actual results: Unity Editor crashes
Reproduced with: 2023.3.0b10, 6000.0.30f1, 6000.1.0a7
Couldn’t reproduce with: 2021.3.46f1, 2022.3.54f1, 2023.3.0b9 (Couldn’t downgrade the project)
Reproduced on: Ubuntu 24.04, Windows 11
First lines of the stack trace:
0x00007FF93911A74F (Unity) vk::DescriptorState::BindRandomWriteBuffer
0x00007FF93915E7C9 (Unity) GfxDeviceVKBase::BindComputeBufferVK
0x00007FF93910AF6D (Unity) VKGpuProgram::ApplyGpuProgram
0x00007FF939136943 (Unity) VKImmediateContext::SetShaders
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Warnings in the Bug Reporter window are cut off and not truncated when the Bug Reporter window is resized to its minimum size
- Color is incorrectly applied to objects when initialized with non-normalized parameters
- SerializationUtility.GetManagedReferencesWithMissingTypes() don't return null when “Prefab has missing SerializeReference Types“ warning banner is present
- Memory leak when VFX Graph is open and Camera has "Target Texture" enabled
- The Canvas component's warning box is missing an apostrophe when Additional Shader Channels is set to "Normal" and "Tangent" with Render Mode set to "Screen Space - Overlay"
Resolution Note:
It's by design based on [the C# reference|https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/how-to-initialize-objects-by-using-an-object-initializer,]
The initializer should be as below:
builder.WriteBuffer(renderGraph.CreateBuffer(new BufferDesc
{
name = "Other Light Data",
count = maxOtherLightCount,
stride = OtherLightData.stride,
target = GraphicsBuffer.Target.Structured
}));