Search Issue Tracker
Third Party Issue
Votes
0
Found in
2022.3.61f1
6000.0.47f1
6000.1.0b15
6000.2.0a9
Issue ID
UUM-103517
Regression
No
[Vulkan][OpenGL] Shader Internal error is shown when Graphics.RenderMeshPremitives is used with MatrixArray
How to reproduce:
1. Open the attached “IN-97707” project
2. Select the Android (or Windows) build Platform
3. In Player Settings (Project Settings > Player), Select any of the following Graphics APIs: D3D11, Vulkan, OpenGL
4. Build the Player (File > Build Profiles > Build)
Expected result: A specific shader error is shown with details about the error
Actual result: An Internal error is shown, asking to report a bug
Reproducible with: 2022.1.0a3, 2022.3.61f1, 6000.0.47f1, 6000.1.0b15, 6000.2.0a9
Reproducible environments: macOS 15.4 (M3 Max)
Not reproducible environments: No other environments tested
Notes:
- The internal error shown in the console:
{{Shader compiler: Compile Custom/ExampleShader - , Vertex Program: Internal error communicating with the shader compiler process. Please report a bug including this shader and the editor log. Error code 0x80000004 (Not connected).}}
- The shader in question: “Assets/__Test/ExampleShader.shader“
- Reproducible with D3D12, Vulkan and OpenGL Graphics APIs, Not reproducible with D3D11, Metal APIs
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
- Texture displays visual artifacts and has a broken aspect ratio when it is imported in RGB 48-bit format
- Diagnostic Warning Resets When Navigating Away and Returning to Diagnostics Settings
- Checkbox Collides with Text in Shader Graph Preferences Settings
- Crash on mecanim::animation::TransformValuesFromClip when entering the Play Mode in a project with Animancer Pro v8
- Connection to Named Pipes fails when server and client are run
Resolution Note:
Unfortunately, it's an issue with the D3D compiler executable (FXC).
As a workaround, you could wrap the matrix array in a separate cbuffer like this:
cbuffer MyMatrices
{
float4x4 _Matrices[1000];
};
It prevents the compiler crash.