Search Issue Tracker
Fixed in 2017.2.0f3
Votes
0
Found in
2017.1.0f1
Issue ID
926975
Regression
No
[Metal] Unable to access Texture2DArray from compute shader
Reproduction steps:
1. Open the attached project.
2. Make sure Editor is running with Metal graphics API.
3. Play and stop the scene.
- Metal runtime fails to compile a compute shader that accesses a Texture2DArray
4. Open the Editor log.
- The following compilation error can be found in the Editor log.
...
Compilation failed:
<program source>:12:18: error: no matching member function for call to 'write'
TextureArray.write(u_xlat0, mtl_ThreadID.xyz);
~~~~~~~~~~~~~^~~~~
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:1026:21: note: candidate function not viable: requires at least 3 arguments, but 2 were provided
METAL_FUNC void write(vec<T,4> color, uint2 coord, uint array, uint lod = 0) METAL_VALID_LOD_ARG(lod) {
^
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:1035:21: note: candidate function not viable: requires at least 3 arguments, but 2 were provided
METAL_FUNC void write(vec<T,4> color, ushort2 coord, ushort array, ushort lod = 0) METAL_VALID_LOD_ARG(lod) {
^
#include <metal_stdlib>
#include <metal_texture>
using namespace metal;
kernel void computeMain(
texture2d_array<float, access::write > TextureArray [[ texture (0) ]] ,
uint3 mtl_ThreadID [[ thread_position_in_grid ]])
{
float4 u_xlat0;
u_xlat0.xyz = float3(mtl_ThreadID.xyz);
u_xlat0.xyz = u_xlat0.xyz * float3(0.125, 0.125, 0.125);
u_xlat0.w = 0.0;
TextureArray.write(u_xlat0, mtl_ThreadID.xyz);
return;
}
Metal: Failed to create compute library
...
Reproduced with:
5.6.0f1, 2017.2.0b2
Metal
Not reproducible with:
OpenGL
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
- Physics.Raycast fails when a Capsule Collider at a default position is used
- [Silicon] Crash on mono_get_hazardous_pointer when disconnecting Bluetooth Headhpones while in Play Mode
- Switching Project when importing complete project does not import all assets and project opens incomplete
- [Linux] Input.mouseScrollDelta is inconsistent when limiting framerate
- Undoing the branch rotation resets only wireframe and not mesh when undoing the action first time after launching the project
Lars-Steenhoff
Dec 06, 2017 15:55
backport fix to 5.6?
kristoof
Nov 27, 2017 14:40
Nop, still there
MrChromaroid
Sep 24, 2017 14:29
Is this fix included in 2017.2.0 f1?