Search Issue Tracker

By Design

Votes

0

Found in

2022.3.17f1

2023.2.4f1

2023.3.0b1

Issue ID

UUM-59594

Regression

No

Blend shape vertex displacement buffer contains incorrect values when blend shapes are read asynchronously

--

-

How to reproduce:
1. Open the attached “blendshapes“ project
2. Open the “DreamingImLatios_HolidayExperiments2023” Scene (Assets/Dev Dungeons/DreamingImLatios/HolidayExperiments2023)
3. In the Hierarchy window, ensure the “HolidaySubscene” (checkbox) is enabled
4. Observe the Console window

Expected result: No errors or warnings are thrown
Actual result: The Console displays a warning, meshes are sometimes not rendered properly

Reproducible in: 2022.3.17f1, 2023.2.4f1, 2023.3.0b1
Could not test with 2021.3.34f1 (the project uses ECS which is not supported in Unity 2021)

Reproducible on: Windows 10, Windows 11
Not reproducible on: No other environments tested

Note: The retrieved values are inconsistent, which can prevent this issue from appearing at first when the project is opened. If no warnings are shown in the Console, disabling and re-enabling the “HolidaySubscene” in the Hierarchy window, or entering and exiting Play Mode will cause the mesh to re-bake and will likely make the warning appear.

  1. Resolution Note:

    The third argument passed into 'AsyncGPUReadback.RequestIntoNativeArray' should be the size, in bytes, of the data to retrieve from the GraphicsBuffer. See first documentation link below. The code supplied does not pass in a size in bytes. Instead it passes in cpuBuffer.Length, where cpuBuffer is a NativeArray<BlendShapeVertexDisplacement> and BlendShapeVertexDisplacement is a struct consisting out of an uint and 3x float3. As a result only a part of the blend shape buffer is read back to the CPU. The rest of the memory in the cpu buffer is left uninitialized.

    https://docs.unity3d.com/ScriptReference/Rendering.AsyncGPUReadback.RequestIntoNativeArray.html

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.