swapping shaders while retaining diffuse/transparency/bump image equivalent

srieschsriesch Posts: 4,243

I'm guessing the answer is "no", but is there any easy way to swap shaders while simultaneously retaining the equivalent of the image-based diffuse parameter?

For example I have a MFD/kimono with a pattern I like, but wanted to get the reflections to make it look more like silk.  I wasn't sure what settings to use offhand (or even if it could be done with the default shader) but I have a bunch of silk shaders (Silkessense for example), I thought it might be easier to just use one of those to jump-start the settings, but they are of course different patterns.  So I ended up applying a random silkessense shader, then going back into each group of surfaces, finding the diffuse parameter, then selecting it for every single parameter that appeared applicable, changing the associated parameter's color as well, and also digging around and adjusting the transparency (I would also have had to do bump/displacement if I cared enough to.), then changing the tiling.  In the end I was having problems with transparency (unexplained shadows or black spots I couldn't explain nor eliminate) and lost the silk look as well (probably because I don't understand how the new shader works and was attempting to put something into the wrong parameter), and abandoned the attempted conversion, although presumably it may have been possible.  I'm wondering if there is a dramatically faster/simpler way I should be aware of to change the shader while retaining the diffuse/transparency/bump, essentially translating some, but not all, of the parameters from one shader to another.  Maybe a script for each possible to/from shader combination?

Comments

  • Richard HaseltineRichard Haseltine Posts: 107,953

    I thought Silkessence had some "build your own" presets. If not you could save a new preset and just select the properties you want to transfer in the options dialogue.

  • srieschsriesch Posts: 4,243

    I didn't locate the "build your own" presets, although possibly I'm overlooking them.

    It appears that saving as a materials preset copies the shader too, so I can't use it to transfer parameters between shaders (although thanks for the tip, that will help reduce the workload for some similar but unrelated tasks, since the checkboxes are easier than going through the surfaces pane and selecting image files.)

    I also spent some time trying to understand the settings of a silkessence shader, and it looks like I would need to create some new materials based on the same pattern as the diffuse for a variety of other parameters, it isn't something that's just going to transfer over via the diffuse and opacity. (I initially incorrectly thought the diffuse image was being used in some of the other parameters, but it isn't the same image.)  Plus I had to pick a material where the primary color is black, which appears to be a bit more difficult to work with than lighter colors.

    I think for this project I'm just going to have to rethink how I want to do this.  Not a big deal.

  • srieschsriesch Posts: 4,243

    I wonder if  I found the presets you were talking about.  (from description " Also included are a group of HSS presets so you can easily silkify any Fabricator-compatible fabric or plain color.").  In the content library, I see "Satinate.dsa", "Silk Jersify.dsa", and "Silky Weavy.dsa".  You'll then have to change the UV tiling parameters back from 10 to 1 and reapply transparencies though since those get lost, plus other than changing the shader being used I still have to determine what else to do to get them working.

  • srieschsriesch Posts: 4,243

    Well, I tried something and while I wasn't happy with the result in this case, I at least see the basic process to use in this case:

    Load the default material.  Use the Satinate.dsa or whatever utility from the Silkessence product to change the shader.  In the surfaces pane, change the two UV tiling paremeters from 10 to 1.  Use your suggestion above to save as a material preset (deselect all checkboxes, then re-check only the diffuse, opacity, and UV for each surface).  Apply some random Silkessense shader that's similar (for example, I picked another black fabric material since I was having trouble with that).  Then load your previously saved material preset to put your original diffuse and opacity back. 

    At this point I don't know what I'm doing and anybody following this will need to diverge and do their own research here, but based on what I saw in my deconstructed example material, I then made a copy of the diffuse image and maxed out the brightness in GIMP then used that instead of the image that came with the randomly-selected material in several other surface parameters to vaguely approximate what the professional material appeared to be doing for those additial parameters.  Doubtless it's a bit more complicated to get right and the product designer is cringing in horror reading this sentence... :-)  My results weren't quite up to par, but at least I can see the type of steps that need to be done to get the conversion completed this way.

Sign In or Register to comment.