Page MenuHome

Missing textures during Eevee render for "Tree Creature" scene Blender ARM64 version.
Closed, ArchivedPublic

Description

System Information
Operating system: Darwin-20.2.0-arm64-arm-64bit 64 Bits
Graphics card: Apple M1 Apple 4.1 Metal - 71.0.7

Blender Version
Broken: version: 2.91.0 Beta, branch: master (modified), commit date: 2020-11-24 10:03, hash: rB5d82d2a2075d
Worked: (newest version of Blender that worked as expected)

Short description of error
Blender default Tree Creature scene is missing textures when trying to view in Eevee. Same file works fine on Windows version.

Exact steps for others to reproduce the error
Viewport render scene with Eevee enabled. Tree bark textures are missing (Pink).

Event Timeline

Robert Guetzkow (rjg) changed the task status from Needs Triage to Needs Information from User.Dec 21 2020, 1:49 PM

Please test this again with the release version of 2.91 and the current daily build of 2.92.

If the problem persists, please start Blender from a terminal with the --debug and --debug-gpu flags, redirect the output into a file, repeat the steps to get the pink shader, close Blender and attach the log file to your report.

/Applications/Blender.app/Contents/MacOS/Blender --debug --debug-gpu > ~/blender_debug_output.txt 2>&1

(Note: The path to Blender might be different on your system)

@Robert Guetzkow (rjg) Same results as before when trying on the "Rosetta" translated version of Blender 2.91 final. I saved the Terminal script for the ARM64 version in a file as asked.
Let me know if there is any thing else I can do to help as I'm positive no one at the BF has a M1 Mac to run test with.

Hope this helps.

Tagging @Stefan Werner (swerner) just incase he wants to peek at that Terminal file, since he has been the developer heading up the ARM builds

ERROR (gpu.shader): GPU_material_compile Linking: 
      | 
      | Error: Implementation limit of 16 active fragment shader samplers (e.g., maximum number of supported image units) exceeded, fragment shader uses 21 samplers

So is that just a limitation in the code, or a hardware limitation?

@Timothy Cook (CookItOff) can you upload your blender_system_info.txt to check if this a hardware limitation?
Help->Save System Info

@Evan Wilson (EAW) no problem.
Here you go

This appear to be limit set by macOS, see this comment by Brecht and the many other applications that report the same problem.

@Timothy Cook (CookItOff) Could you please try to simplify the material and check if this allows you to render it? If it works, then this is the same issue as discussed in the linked ticket.

Relevant part of the system-info.txt:

Implementation Dependent OpenGL Limits:
==========================================

Maximum DrawElements Vertices:	1048575
Maximum DrawElements Indices:	150000

GLSL:
Maximum Varying Floats:	150000
Maximum Vertex Attributes:	16
Maximum Vertex Uniform Components:	4096
Maximum Fragment Uniform Components:	4096
Maximum Vertex Image Units:	16
Maximum Fragment Image Units:	16
Maximum Pipeline Image Units:	80

I agree with @Robert Guetzkow (rjg), the material in question just looks like it is going over the limit. Easy enough to test @Timothy Cook (CookItOff), just connect only one of the Principled BSDFs instead of the two that are currently connected. Or just delete part of the node tree.

@Robert Guetzkow (rjg) Thanks for the link.
I disconnected one of the node inputs in the "Bark" material and it indeed render as expected, minus of course the previous linked nodes.
Thanks for working with me to diagnose the issue.
I wonder if other DCCs are having this same issue when working with materials on a Mac.

Robert Guetzkow (rjg) closed this task as Archived.Dec 23 2020, 3:21 PM

@Timothy Cook (CookItOff) thanks you for checking. Yes, it seems that other software had the same issue, for instance Substance Designer had a long forum post about this as well.