How do you get layers in mobile shaders?
Been having this problem for a LOOONNNGGGG time. Started with a full level I had painted in shader model 5 while working but when I preview in the mobile shaders it doesnt display. At this point I have created a simple level that is just a landscape of the smallest size and quad number. I placed a cube and a static directional light, then a static point light (Kept showing with everything black so i needed some things to be able to see when trying the other shaders preview) I went through multiple steps. Apply the grass texture directly and checking all the previews. It displays just fine. Untill I add the layerblend node. Checking documents, layers should be avliable on mobile devices, and there is no longer a limit to just three. But as you can see I am currently, during this trouble shoot, using one layer of one texture. Everything displaces just fine in shaders 5 and 4 When I switch to any mobile preview, including "high end mobile", vulcan, andrioid, and GLES3.1 I get the same checker pattern on the landscape: There doesnt appear to be any problem with the complexity of the shaders Except that for some reason in mobile it's now showing brown? It didn't do this just yesterday, it was showing the same as shader 5 except that it was blank like there were NO shaders on the materials. Only think I changed was I ran the installs on android SDK again as it seemed that some of the files may have gotten lost during a windows update that really messed with some of my stuff (unreal engine lost 4.12 and updated all my projects to 4.20 without asking, skyrim mods are lost, steam couldnt find a couple games I clearly have installed also)
I have Installed andriod SDK, and I have installed the offline shaders. (just realized my skylight has been set to stationary, at this moment rebuilding lighting for it to be static, since that is the only "dynamic" light that touches the material-no change) Any setting here I found in documentation I set it to what the unreal docs recommended. The Rest I left at the default. In addition to the material being set to fully rough etc. It has been set here to override them to force fully rough and no directional lighting etc. And all the directories are set. It points to the files that match the names after I installed them. The last two are set to the options that the documents said to set them too.
It appears the problem is somewhere with the layer blend node as everything works fine until it is placed in the material. I have tried weight, height and alpha blends. I know it is painted as it shows up on the other shaders. Looking at the texture stats window I see that there are a large number of things assigned to the landscape; weightmaps, alpha, whitesquare(?) and then my grass texture. I am wondering if maybe these are using more samplers pushing me over the limits?
If anyone has any idea how to assign/layers in landscape that will work on mobile I would greatly appreciate it. My actual world material has three layers (meets requirements of old documents), and was just at the sampler limit with a couple left over for the default lighting ones that get used and such. (I have some room to optimize them with channel packing etc, just havent done it yet as I cant get ANYTHING to display).
Thanks for the help!
asked Oct 07 '18 at 12:23 PM in Rendering
As seen above I was moving everything through a material instance.
By simply changing that back to a normal material and feeding each input through a copied/pasted later node it started working
answered Dec 10 '18 at 01:57 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here