Search Issue Tracker
Feature Request
Feature Request in 2023.2.X
Votes
0
Found in
2022.2.13f1
2023.1.0b10
2023.2.0a8
Issue ID
UUM-31847
Regression
No
GraphicsBuffer.LockBufferForWrite does not render GameObjects when using Direct3D12 Graphics API
How to reproduce:
1. Open the “Million_Cubes” project
2. Open the “SampleScene”
3. Enter Play Mode and observe Game View
Expected result: a large amount of cube GameObjects are rendered
Actual result: no cube GameObjects are rendered
Reproduced with: 2022.2.13f1, 2023.1.0b10, 2023.2.0a8
Could not test with: 2020.3.46f1, 2021.3.22f1 → “GraphicsBuffer” does not contain a constructor that takes 4 arguments
Reproduced on: Windows 11
Notes:
1. Not reproducible when using Direct3D11 or Vulkan Graphics APIs
2. Also reproducible in Player
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
- Visible instance buffer returns 0 for every instance when using BatchDrawCommandIndirect on Adreno devices with Vulkan API
- [Android][Vulkan] Native crash in AndroidVulkanVideo::ProcessFrame and AndroidVulkanVideo::Context::~Context() when switching screens
- Screen brightness is not set to a default value when Screen.brightness is set to a negative value
- macOS app window title is not localized when built from generated Xcode project
- Unity Hub doesn't preserve the changed Channel when manually restarting the Hub
Resolution Note:
The PSO creation in DX12 fails due to color data not being fully written in vertex stage. This is a request for shader compiler to give better debug output for this. If an output is declared in vertex shader and is read on the pixel shader all the values must be written into with no values being left as undefined. So a float4 needs to have all 4 components filled. Shader compiler could theoretically do it it automatically but currently it does not.
After manually setting all the unfulfilled output values in the vertex shader it works.
Resolution Note (2023.2.X):
The PSO creation in DX12 fails due to color data not being fully written in vertex stage. This is a request for shader compiler to give better debug output for this. If an output is declared in vertex shader and is read on the pixel shader all the values must be written into with no values being left as undefined. So a float4 needs to have all 4 components filled. Shader compiler could theoretically do it it automatically but currently it does not.
After manually setting all the unfulfilled output values in the vertex shader it works.