SM5 on Linux is limited to 16 texture samplers
Using Unreal Engine 4.10.1 on Linux, Shader Model 5 (OpenGL 4.3) is limited to 16 texture samplers per material, no matter what the samplers are set to use as their texture source (clamp or wrap).
I'm running the editor from the terminal, using the -opengl4 switch. The default memory allocator (binned) is used.
The engine is a direct-from-github compilation of the Release branch.
Fix ended up being fairly trivial. Per Epic's wishes the OpenGL 3 path limit was left at 16 shaders for Mac compatibility, but the OpenGL 4.3 path limit was increased to 32 shaders. Testing the modification on OpenGL 4.3 (Gallium / mesa 12) showed much improved graphics and no obvious glitches when compared with the previous codebase.
Pull request: https://github.com/EpicGames/UnrealEngine/pull/2610
answered Jul 18 '16 at 06:48 PM
After setting up a material based on your description/screenshot I realized that the problem is the OpenGL rendering path. As mentioned in the release notes linked below, DirectX can support more textures than OpenGL. Since Linux uses the OpenGL path to enable SM5 it falls into the same restrictions.
Here is the link to the release notes I mentioned.(https://docs.unrealengine.com/latest/INT/Support/Builds/ReleaseNotes/2014/4_6/index.html)
answered Jan 07 '16 at 09:11 PM
Still broken with the latest UE for the ocean project: https://forums.unrealengine.com/showthread.php?42092-Community-Project-WIP-Weather-amp-Ocean-Water-Shader/page28
Ubuntu, OpenGL 4.5, shadermodel 5
Will continue on Windows and hope it gets fixed before my game is finished. Thanks
answered Feb 06 '16 at 11:34 AM
Follow this question
Once you sign in you will be able to subscribe for any updates here