Scattershot - How to Add Displacement

Question Materials and Textures

Hi everyone,

I was wondering if their is a way to properly add displacement when using the scattershot addon. Currently, whenever I try to utilize the displacement map through the addon I end up with a lot of jagged edges. I attached a link to the file and some screenshots of the problem and my node tree below. Thank you for the assistance.

Jagged Edges.png

Jagged Edges2.png

Google Drive Link:https://drive.google.com/drive/folders/1D-w52F7CIlcxl29bvFOCG9JJSsq25cm8?usp=sharing

Edit: Link Updated

  • spikeyxxx replied

    Probably not enough geometry; remember, your Viewport Subdiv is set to 8 px.

    Also check that all Textures, apart from Albedo,  are set to Non-Color and make sure that everything is connected correctly (if the Normal output of the Scatter Node is indeed a Normal Map, then you shouldn't connect it to a Bump Node.

    And next time you add your .blend file (which is almost always a good idea!), please pack your External Files (in this case the Images).

    1 love
  • Michal Dziewiatkowski(dzcannon) replied

    Thanks for the response Spikey. Oops, forgot to include the texture files! I'll be sure to update that. Thanks for pointing out the normal output, it is now directly linked from normal to normal. I also tried it with 1px, and the problem actually got worse, image below:

    Jagged Edges3.png

    Link with all files included this time:

    https://drive.google.com/drive/folders/1D-w52F7CIlcxl29bvFOCG9JJSsq25cm8?usp=sharing

  • spikeyxxx replied

    Hi Miichal,

    I don't get any spikes with your settings (only changed the HDRI, because it wasn't included and used a Normal Map Node):

    Displ.png

    Probably a GPU issue. There has been a version of Blender, where the GPU Subdivision had a bug; try disabling that:

    GPU.png

    If that doesn't help, try CPU Rendering.

    Maybe you need to update your driver.


    1 love
  • spikeyxxx replied

    Okay, forget the above; I found the spiked area.

    I will look into it a bit more, but my guess is, that this happens because your UV's are not even:

    A.png


    1 love
  • spikeyxxx replied

    Also, what doesn't help, is that you are using a jpeg as a displacement texture, that is never a good idea!

    Try textures from Polyhaven, they are free and CC0 and supr high quality up to 8K and available as  jpeg, png and exr.

    1 love
  • spikeyxxx replied
    Solution

    Reducing the Cell Blending seems to help a lot with the spikes:

    Cell0.png

    vs:

    Cell1.png

    But of course cell borders become more obvious. A Blending of around  0.1 might be best.

    Muddyness and stretching are due to UV's and jpeg, like I mentioned above.



    1 love
  • spikeyxxx replied

    SO, the reason for this, is, that to blend between cells, a (probably White) Noise Texture is used to 'mix' between the two, which works great for images, to "blur' the border, but when you have a border with a hieght difference like in A, it doesn't give a result like B:

    Blend.png, but it picks either one or the other height (and maybe some in between, depending on how the Noise is used), thus producing those spikes and higher Subdivision only makes the spikes more and thinner.

    1 love
  • Michal Dziewiatkowski(dzcannon) replied
    Thank you for taking the time again spikey. Do you have any suggestion or alternatives on what can be done to blend cells but also add a displacement, or is this mostly wishful thinking? Just curious if it can be done at this point, thank you again.
    1 love
  • spikeyxxx replied

    Well, you'd need a gradient between the cells, in stead of a 'blur', but that offers many problems, the most obvious being that the cells have different rotations of the Texture and when going smoothly from one rotation to an other, the Texture starts to 'swirl' on the cell borders like this:

    Swirl.png

    I don't think there is a way around that, when using  rotations to hide pattern repetitions.

    The question is, do you really need it; the pattern repetition is only noticeable, when you look at it from far away, but then you wouldn't need displacement and when you are close enough to need displacement, you wouldn't need the Scattershot... (of course, when zooming in or out you'd need both, but not at the same time...).

    What I would do, is to take two (or more) similar looking textures and mix between them (Color > MixRGB Node) with a Musgrave Texture as Factor, because that can have a smooth transition between black and white. (I know it produces values outside the 0 to 1 range, but the MixRGB Node automatically clamps its input.)


    1 love
  • Michal Dziewiatkowski(dzcannon) replied

    "The question is, do you really need it; the pattern repetition is only noticeable, when you look at it from far away, but then you wouldn't need displacement and when you are close enough to need displacement, you wouldn't need the Scattershot... (of course, when zooming in or out you'd need both, but not at the same time...)."

    The faraway makes sense to me, and I'm guessing that when I am up close, since I am not trying to shift the original texture, the cell border problem doesn't occur since I am using a different setup altogether. 

    This was incredibly informative! I realize I was trying to shoehorn the scattershot addon into something that doesn't necessarily need it, especially when the tiling won't be as noticeable. Thank you for your time again spikey!

    1 love
  • Michal Dziewiatkowski(dzcannon) replied

    One last question since you had mentioned it, regarding the UV's being uneven: Is it better practice to use unwrap since its an uneven surface and gives you more uniform squares, or should I just use project from view, which gives me even UV's, but when plugged in, the UVs appear stretched? Just a comparison of the two below from my test:

    Uneven UV's, regular unwrap

    Uneven UV's.png

    Appears clean on model:

    Appears Clean On Model.png

    VS

    Even UV's, project from view

    Even UV's.png

    Appears stretched on model:

    Visible Stretching from side.png

    Im guessing the first approach is better,  but I just wanted to confirm.

    1 love
  • spikeyxxx replied

    Yes, the first method is better. You want it to look as even as possible on the model, otherwise you get stretching of the Texture and that will be very noticeable and ugly.

    1 love
  • Michal Dziewiatkowski(dzcannon) replied

    Sounds good, thank you for the help again spikey! :)

    1 love