Search Issue Tracker
By Design
By Design in 6000.4.X
Votes
1
Found in
6000.0.60f1
6000.2.8f1
6000.3.0b6
6000.4.0a2
Issue ID
UUM-122600
Regression
No
CommandBuffer.DrawProcedural fails to render when RenderGraph and Metal Graphics API are enabled
How to reproduce:
1. Open the ‘GraphDrawProceduralIssue.zip' project
2. Navigate to Project settings → Graphics → Render Graph and enable Render Graph
3. Observe the GameView
Expected result: The triangle is rendered with Render Graph turned on
Actual result: The triangle is not rendered with Render Graph turned on
Reproducible with: 2023.3.0a16, 6000.0.60f1 (61dfb374e36f), 6000.2.8f1 (c9992ac36c34), 6000.3.0b6 (211490bb75a6), 6000.4.0a2 (79bd4f638ac0)
Could not test with: 2023.1.0a1 (Unresolvable console errors)
Reproducible on: macOS 26.0.1 (M1 Max), Windows 11
Not reproducible on: No other environments tested
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
- Invalid Clip Method
- WebGPU error with Fantasy Kingdom and GPU Resident Drawer
- WebGPU fails with height fog in Fantasy Kingdom
- Crash on UndoManager::RegisterUndoInternal when applying added GameObjects to a Prefab
- [Asset Bundles] A new bundle hash is not generated when the name of a serialized field is changed
Resolution Note:
When using an UnsafePass, you must specify which RenderTarget attachment you are rendering to.
Instead of doing this:
```
builder.UseTexture(resourceData.activeColorTexture, AccessFlags.ReadWrite);
builder.UseTexture(resourceData.activeDepthTexture, AccessFlags.ReadWrite);
```
You should do:
```
builder.SetRenderAttachment(resourceData.activeColorTexture, 0, AccessFlags.Write);
builder.SetRenderAttachmentDepth(resourceData.activeDepthTexture, AccessFlags.ReadWrite);
```
Alternatively, you could continue using the UseTexture functions, but you would need to use context.cmd.SetRenderTarget to specify the RenderTarget attachment.
Validated on D3D12 and Vulkan, it fixes the described problem.
Resolution Note (6000.4.X):
When using an UnsafePass, you must specify which RenderTarget attachment you are rendering to.
Instead of doing this:
```
builder.UseTexture(resourceData.activeColorTexture, AccessFlags.ReadWrite);
builder.UseTexture(resourceData.activeDepthTexture, AccessFlags.ReadWrite);
```
You should do:
```
builder.SetRenderAttachment(resourceData.activeColorTexture, 0, AccessFlags.Write);
builder.SetRenderAttachmentDepth(resourceData.activeDepthTexture, AccessFlags.ReadWrite);
```
Alternatively, you could continue using the UseTexture functions, but you would need to use context.cmd.SetRenderTarget to specify the RenderTarget attachment.
Validated on D3D12 and Vulkan, it fixes the described problem.