Skip to content

Commit f0232b3

Browse files
ludovic-theobaldGitHub Enterprise
authored andcommitted
[Fix 1351595] SDF Baker on PS4/5 failing due to explicit binding (#278)
* Actual number of RT offset for PS4/5 bindings * Reactivate tests * Adds a TODO for future unification of similar case * reformat + changelog
1 parent 988e8ed commit f0232b3

File tree

4 files changed

+20
-26
lines changed

4 files changed

+20
-26
lines changed

TestProjects/VisualEffectGraph_HDRP/Assets/TestCaseFilters.asset

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,21 +23,3 @@ MonoBehaviour:
2323
XrSdk:
2424
StereoModes: 0
2525
Reason: See https://jira.unity3d.com/browse/URP-723
26-
- FilteredScene: {fileID: 0}
27-
FilteredScenes:
28-
- {fileID: 102900000, guid: ebaa785ec5cfd50448e6b1fca17c280f, type: 3}
29-
ColorSpace: -1
30-
BuildPlatform: 31
31-
GraphicsDevice: 4
32-
XrSdk:
33-
StereoModes: 0
34-
Reason: See https://fogbugz.unity3d.com/f/cases/1351595/
35-
- FilteredScene: {fileID: 0}
36-
FilteredScenes:
37-
- {fileID: 102900000, guid: ebaa785ec5cfd50448e6b1fca17c280f, type: 3}
38-
ColorSpace: -1
39-
BuildPlatform: 44
40-
GraphicsDevice: 4
41-
XrSdk:
42-
StereoModes: 0
43-
Reason: See https://fogbugz.unity3d.com/f/cases/1351595/

com.unity.visualeffectgraph/CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ All notable changes to this package will be documented in this file.
33

44
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
55
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6+
## [13.0.0] - 2021-09-01
7+
### Fixed
8+
- Fix SDF Baker fail on PS4 & PS5 [Case 1351595](https://fogbugz.unity3d.com/f/cases/1351595/)
69

710
## [12.0.0] - 2021-01-11
811
### Added

com.unity.visualeffectgraph/Runtime/Utilities/SDF/MeshToSDFBaker.cs

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,13 @@ private GraphicsBuffer
5252

5353
internal static uint kMaxGridSize = 1 << 24;
5454

55+
//TODO: Use PLATFORM_UAVS_SEPARATE_TO_RTS (or equivalent) when it will be available
56+
#if (UNITY_PS4 || UNITY_PS5) && (!UNITY_EDITOR)
57+
private static int kNbActualRT = 1;
58+
#else
59+
private static int kNbActualRT = 0;
60+
#endif
61+
5562
internal VFXRuntimeResources m_RuntimeResources;
5663

5764
private struct Triangle
@@ -739,10 +746,10 @@ private void SecondDraw()
739746
for (var i = 0; i < 3; i++)
740747
{
741748
m_Cmd.SetRenderTarget(m_RenderTextureViews[i]);
742-
m_Cmd.SetRandomWriteTarget(3, m_TrianglesInVoxels, false);
743-
m_Cmd.SetRandomWriteTarget(2, m_AccumCounterBuffer, false);
744-
m_Cmd.SetViewProjectionMatrices(m_ViewMat[i], m_ProjMat[i]);
745749
m_Cmd.ClearRenderTarget(true, true, Color.black, 1.0f);
750+
m_Cmd.SetRandomWriteTarget(3 + kNbActualRT, m_TrianglesInVoxels, false);
751+
m_Cmd.SetRandomWriteTarget(2 + kNbActualRT, m_AccumCounterBuffer, false);
752+
m_Cmd.SetViewProjectionMatrices(m_ViewMat[i], m_ProjMat[i]);
746753
m_Cmd.DrawProcedural(Matrix4x4.identity, m_Material[i], 1, MeshTopology.Triangles, nTriangles * 3);
747754
}
748755

@@ -767,11 +774,11 @@ private void FirstDraw()
767774
{
768775
m_Cmd.ClearRandomWriteTargets();
769776
m_Cmd.SetRenderTarget(m_RenderTextureViews[i]);
770-
m_Cmd.SetRandomWriteTarget(4, m_AabbBuffer, false);
771-
m_Cmd.SetRandomWriteTarget(1, m_bufferVoxel, false);
772-
m_Cmd.SetRandomWriteTarget(2, m_CounterBuffer, false);
773-
m_Cmd.SetViewProjectionMatrices(m_ViewMat[i], m_ProjMat[i]);
774777
m_Cmd.ClearRenderTarget(true, true, Color.black, 1.0f);
778+
m_Cmd.SetRandomWriteTarget(4 + kNbActualRT, m_AabbBuffer, false);
779+
m_Cmd.SetRandomWriteTarget(1 + kNbActualRT, m_bufferVoxel, false);
780+
m_Cmd.SetRandomWriteTarget(2 + kNbActualRT, m_CounterBuffer, false);
781+
m_Cmd.SetViewProjectionMatrices(m_ViewMat[i], m_ProjMat[i]);
775782
m_Cmd.DrawProcedural(Matrix4x4.identity, m_Material[i], 0, MeshTopology.Triangles, nTriangles * 3);
776783
}
777784

com.unity.visualeffectgraph/Shaders/SDFBaker/RayMapVoxelize.shader

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,14 @@ Shader "Hidden/VoxelizeShader"
2020
float4 position : SV_POSITION;
2121
uint triangleID : TEXCOORD0;
2222
};
23-
RWStructuredBuffer<float4> voxels : register(u1);
2423
StructuredBuffer<float4> vertices;
2524
StructuredBuffer<int> coordFlip;
25+
26+
RWStructuredBuffer<float4> voxels : register(u1);
2627
RWStructuredBuffer<float4> aabb : register(u4);
2728
RWStructuredBuffer<uint> counter : register(u2);
2829
RWStructuredBuffer<uint> triangleIDs : register(u3);
30+
2931
int currentAxis;
3032

3133
int dimX, dimY, dimZ;

0 commit comments

Comments
 (0)