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
- Assets are created in the Package folders when creating assets via custom buttons in the Inspector window or other windows
- “Select” windows are named differently on Windows and macOS
- [Windows] No minimum “Select” window size
- Enabling “Editor Extension Authoring” in UI Builder doesn’t dirty the document and saving with shortcut doesn’t persist the state
- WebRequest.Create() function fails with "URI prefix is not recognized" errors when the project is built for Linux Standalone or Windows Dedicated Server
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.