For a bit more information, we only support 4 UV sets per vertex on skeletal meshes (8 per pixel still to allow Customized UVs) and SpeedTree needs to use 6 to 8 which is why it's only supported on static meshes and now triggers this error. The level of support here hasn't changed with 4.15, we're merely reporting the error now. I've also updated the 4.15 release notes to more clearly show how to address this.
Disabled 'Used with skeletal mesh' on materials that were producing the warnings/errors.
Full set of warnings:
LogShaderCompilers:Warning: Failed to compile Material /Game/KiteDemo/Environments/Trees/HillTree_02/HillTree_01_Leaves_Mat.HillTree_01_Leaves_Mat for platform PCD3D_SM5, Default Material will be used in game. LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthVertexShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyPixelShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyVertexShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/LightMapDensityShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyPixelShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyVertexShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DebugViewModeVertexShader.usf: 10: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassPixelShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexCommon.usf: 11: #include "VertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexShader.usf: 7: #include "BasePassVertexCommon.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthPixelShader.usf: 13: #include "VertexFactory.usf" LogTemp:Display: Finished compile of shader map 0x000000005493E780 LogTemp:Display: Shader map HillTree_01_Fronds_Mat complete, GameThreadShaderMap 0x000000005493E780, marking material HillTree_01_Fronds_Mat as finished LogTemp:Display: Marking material as finished 0x0000000048488B80 LogShaderCompilers:Warning: Failed to compile Material /Game/KiteDemo/Environments/Trees/HillTree_02/HillTree_01_Fronds_Mat.HillTree_01_Fronds_Mat for platform PCD3D_SM5, Default Material will be used in game. LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthPixelShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthVertexShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyPixelShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyVertexShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/LightMapDensityShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyPixelShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyVertexShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DebugViewModeVertexShader.usf: 10: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassPixelShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexCommon.usf: 11: #include "VertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexShader.usf: 7: #include "BasePassVertexCommon.usf" LogTemp:Display: Finished compile of shader map 0x0000000056CEAE80 LogTemp:Display: Shader map HillTree_01_Branches_Mat complete, GameThreadShaderMap 0x0000000056CEAE80, marking material HillTree_01_Branches_Mat as finished LogTemp:Display: Marking material as finished 0x000000004848AB00 LogShaderCompilers:Warning: Failed to compile Material /Game/KiteDemo/Environments/Trees/HillTree_02/HillTree_01_Branches_Mat.HillTree_01_Branches_Mat for platform PCD3D_SM5, Default Material will be used in game. LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthVertexShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyPixelShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyVertexShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthPixelShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/LightMapDensityShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyVertexShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DebugViewModeVertexShader.usf: 10: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassPixelShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexCommon.usf: 11: #include "VertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexShader.usf: 7: #include "BasePassVertexCommon.usf" LogTemp:Display: Finished compile of shader map 0x0000000057FD8F00 LogTemp:Display: Shader map HillTree_01_Branches_2_Mat complete, GameThreadShaderMap 0x0000000057FD8F00, marking material HillTree_01_Branches_2_Mat as finished LogTemp:Display: Marking material as finished 0x0000000048499A80 LogShaderCompilers:Warning: Failed to compile Material /Game/KiteDemo/Environments/Trees/HillTree_02/HillTree_01_Branches_2_Mat.HillTree_01_Branches_2_Mat for platform PCD3D_SM5, Default Material will be used in game. LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthVertexShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyPixelShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/HitProxyVertexShader.usf: 12: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/LightMapDensityShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DepthOnlyVertexShader.usf: 9: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthPixelShader.usf: 13: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/DebugViewModeVertexShader.usf: 10: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassPixelShader.usf: 11: #include "VertexFactory.usf" LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexCommon.usf: 11: #include "VertexFactory.usf" from ../../../Engine/Shaders/BasePassVertexShader.usf: 7: #include "BasePassVertexCommon.usf"
Result:
Tons of warnings in the output log from LogShaderCompiler, they look like this:
LogShaderCompilers:Warning: Failed to compile Material /Game/KiteDemo/Environments/Trees/HillTree_02/HillTree_01_Leaves_Mat.HillTree_01_Leaves_Mat for platform PCD3D_SM5, Default Material will be used in game. LogShaderCompilers:Warning: GpuSkinVertexFactory.usf(89): error: #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. #err0r Too many texture coordinate sets defined on GPUSkin vertex input. Max: 4. from ../../../Engine/Shaders/VertexFactory.usf: 1: #include "GpuSkinVertexFactory.usf" from ../../../Engine/Shaders/ShadowDepthVertexShader.usf: 13: #include "VertexFactory.usf"
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-40736 in the post.
2 |
Component | UE - Graphics Features |
---|---|
Affects Versions | 4.15, 4.16 |
Target Fix | 4.15 |
Fix Commit | 3275990 |
---|---|
Main Commit | 3389599 |
Release Commit | 3275990 |
Created | Jan 17, 2017 |
---|---|
Resolved | Jan 27, 2017 |
Updated | Apr 27, 2018 |