Decouple the tiling
Kattey
Posts: 2,899
Hello
Presently in standard DS surface shader all various parameters (diffuse, opacity, specularity) tile automatically and usually it is a very handy feature to have. But is it possible to decouple opacity tiling from the main, so tiling of opacity and other maps can be changed separately? Sometimes I need to use tiled 5 diffuse with tile 1 opacity maps.
Comments
Yes, but it requires manipulating the shader in Shader Mixer.
Load you item, apply the maps and then go to ShaderMixer and select New > Import from Scene. That will load the shader. There will be one tiling brick connected to all the maps, except Normal. Disconnect it from the Opacity and any other you don't want tiled. Then click the Apply button. DS defaults to tiling 1 time when no other tiling parameters are established. Alternately, you can add more tiling bricks (rename them...each parameter needs a new name...Horizontal Tiles become Opacity H Tiles, etc...) and connect them to the individual items.
Items without a map/value won't show up when you load the shader from the scene, so put something in every parameter, even if it isn't used...you can always reset it afterwards.
Then save the edited shader as both a new brick network and a preset...this gives you more editing options later without having to reload it from scratch.
I see the default DS material in Shader Mixer but there is no direct connection between tiler and opacity, how would I disconnect one from another?
You need to have a transparency map in the slot or it won't show up when imported...and anything else you want in the edited shader...
Like this
Yes, but when I disconnect Tiler (3) from Image Map (5) S and T Inputs, it stops affecting diffuse map as well
I wish I could post the entire map...but it gets too small to see.
But, you need to make sure you are just disconnecting the tiler from the image map on the Opacity...disconnect it from that end.
I did exactly that but when I applied the shader back, the tiling was broken for everything, it didn't work anymore on diffuse at all.
Or it worked like it did before, tiling everything at once :/
Strange...it's working correctly when rendering the previews in ShaderMixer, but when applied to the surface, it's not.
I take that back...it's RENDERING correctly when applied to the surface, it's just not showing correctly in the viewport...so you'll need to add another Tiling brick attached to the Opacity Image map.
This is with a separate tiling brick on the opacity image map...
Both...Diffuse is 4 tiles. Top left: default shader, so Opacity is also 4. Bottom right: separate tiling bricks, opacity 1.
Oh, yes, it is rendering fine now, huge thanks!
But even if I attached another tiler brick to opacity, the preview in viewport still doesn't show diffuse tiling properly O_o
Yeah...there's something up with some ShaderMixer stuff like that...not sure if it's a bug or what.
Preview doesn't give a reliable representation of Shader Mixer shaders (or any other shader which doesn't use the standard names, or haev its own GL shader).
Ok, thanks Richard, I didn't know DS had a bug like that -_-
Thank you again, Mjc1016, I really like to have that handy feature :)
Hey cool, this is new to me too. :-)
Little tip, only import from scene if you want to import an SM shader, doing it with the default surface shader will leave you with a couple of bugs in the mimicked SM shader, main one being an inverted displacement, always build from scratch in the SM to avoid them.