Search Unity

[FREE]MicroSplat, a modular terrain shading system for Unity Terrains

Discussion in 'Assets and Asset Store' started by jbooth, Aug 9, 2017.

  1. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Managed to repro the missing texture 3 issue by installing into a fresh project from the asset store. I'll look into why the slider is slow as well..

    [Edit] slider being slow is fixed as well.
     
    Last edited: Aug 26, 2017
  2. nxrighthere

    nxrighthere

    Joined:
    Mar 2, 2014
    Posts:
    522
    Finally, a simple and powerful terrain shaders. Already in love with MicroSplat!
     
  3. Hitch42

    Hitch42

    Joined:
    May 12, 2015
    Posts:
    97
    Wow. The modules are all very fairly priced. Quite a bargain, really. I own Megasplat, but I'll be checking these out, especially the blending one. My only suggestion would be to make some shorter video for the store pages. When I shop for assets, if the only video is this 17-minute long instructional piece, I tend to not watch it. But if there's a 1-3 minute video showing off the asset's effects, I'm much more likely to watch it and look into an asset.
     
  4. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Yeah- I want to produce a real show-real video which shows off each module, but shader coding always seems to take precedence over marketing, at least in terms of how *I* want to spend my time ;)
     
  5. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    The displacement in the tessellation is really nice.

    Microsplat tesselation2.gif
     
    jbooth likes this.
  6. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Look at how nicely the rocks pops out.



    Note that you would have to add contrast and sharpen the height map to get a more exaggerated displacement. And I used some parallax to make it dig into the ground more.

    @jbooth is it possible that you add more features for layer blending, between the edges. I think I can make it work somehow, but helper effects for blending the edges will be useful.
     
    Last edited: Aug 26, 2017
  7. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    The Mip Bias setting currently allows you to bias towards a lower mip- I find this usually looks more stable, while increasing performance.

    I'm not sure I follow what you mean? The shaping parameter controls the blending between textures on the tessellation lookup, while interpolation contrast is a similar effect for the pixel shader.

    Also of note, if you turn on Per-Texture Offset and press the 'Generate Ideal Offset' button that appears below it, it will generate offsets to normalize all the displacements such that the average height of all textures is similar, and orientated from the original terrain. I find this not only increases tessellation blending quality, but brings everything much closer to the physics representation.
     
    Alverik and hippocoder like this.
  8. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Another hint, a small amount of parallax mapping can be used with tessellation to greatly increase the depth effect - often enough that you can use less tessellation/displacement, which can be a nice win for quality and performance. The parallax effect can also help much smaller details pop.
     
  9. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Yup I did both of those. Mip bias and parallax. It could be better if I didn't displaced as much and clean up displacement map better. But nonetheless this is the best displacement I've seen this far (barring LAM which I haven't purchased and not know)
     
    Last edited: Aug 26, 2017
  10. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Thanks, I'll try this out, I was looking for such a feature. But normalization might squash displacement map when you have even one exaggerated map (which came from different websites). But I'll try.

    I have to trouble you to look at RTP manual page 10 for what I'm referring to. http://www.stobierski.pl/unity/RTP.pdf
     
  11. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    It doesn't normalize the displacement data - it just figures out the average greyscale value and subtracts that from the displacement. So If you authored your grass height map's height value around 0.5, but then your moss, for whatever reason, was authored at 0.8 on average, then the transition between grass and moss moves the surface up, which is often not what you want, so this essentially subtracts 0.5 from the grass texture and 0.8 from the moss so they appear at the same height, and also end up closer to the physics geometry.

    This just describes height map blending, which I fully support, and can even be adjusted on a per-texture basis (Per Texture Interpolation Contrast).
     
    coverpage likes this.
  12. Veteran66

    Veteran66

    Joined:
    Jul 12, 2015
    Posts:
    21
    I buy Global Texturing for my project, it work fine but how i can set the Distance for blend out the Detail Texture.
    In MicroSplat i have only the setting Tint Texture Blend in /out
    I will not see my Detail Texture in 20m only my Tint Texture.
    You have a option for blend out the Detail Texture in far sight?
     
  13. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    It looks better now. Tesselation module is a great buy 5 stars.

    microsplat_displace2.gif
    tesselation.png
     
    Alverik, antoripa and recon0303 like this.
  14. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Detail Noise is part of the anti-tiling module. The docs for all modules are included with the core module, so I suggest looking them over to see which have the features you want.

    If you could take the time to rate it as such in the store I'd appreciate it, thanks!
     
    antoripa and coverpage like this.
  15. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Hey Everyone,
    I'll be camping in the woods with the family for until tomorrow night and likely won't have internet - unfortunate timing, but the asset took longer to get through approval than I expected.
     
  16. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,272
    Have a good trip.
     
    jbooth likes this.
  17. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Most definitely. And enjoy your time in nature.

    I finally solved my textures issues. It was the height maps.


    screen_1920x1080_2017-08-26_20-12-21.png

    screen_1920x1080_2017-08-26_20-29-34.png

    screen_1920x1080_2017-08-26_20-27-48.png

    screen_1920x1080_2017-08-26_20-21-07.png
     
    antoripa and jbooth like this.
  18. Ecocide

    Ecocide

    Joined:
    Aug 4, 2011
    Posts:
    292
    Exactly the kind of terrain shading system I was looking for. To be honest, on my main project the focus is not too much into visual details, so heavily customizable assets like MegaSplat scared me a little as I don't have the time to work days on details.

    The prices for the modules are completely reasonable. Great work!
     
    antoripa likes this.
  19. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Added grass and mixed materials better. Again this is the tessellation and anti-tiling modules from Microsplat.

    This is now my favourite terrain shader.

    Props to @nasos_333 Infinigrass.

    img02353.jpg

    img05652.jpg

    img05271.jpg

    img04896.jpg

    img02943.jpg
     
    Last edited: Aug 26, 2017
    Alverik, Teila and recon0303 like this.
  20. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,595
    anyone know if Jason added a module for caves openings?
    • Alpha Holes
    I believe was on the list? If so is it still planned? any idea if so when?


    Lastly, any plans for any sort of Vertex painter, like Mega Splats has I grown to like it a lot and used vertex painters with other tools, I like being able to hand paint areas...with my tablet as I'm an artist as well. So I like that kind of control. Just wondering.

    Thanks for any info. I have Mega Splats and really liked it a lot.. I'm thinking of getting all of these modules .


    @coverpage nice screen shots.
     
    antoripa and coverpage like this.
  21. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    Thanks @recon0303 . I haven't seen him announced about a cave hole feature and I don't see it in any of the modules. I think the one that is done but not yet released is the lava and fluid flow one. I really gotta give props to RTP for setting the bar high with all these features for others to compete with.
     
  22. broesby

    broesby

    Joined:
    Oct 14, 2012
    Posts:
    112
    This plugin looks great - as others wrote I will be hard pressed to choose from an array consisting of RTP/CTS/Megasplat and now Microsplat ;) ... not to mention it seems Lightbox is going to add terrain shading as well... :cool: ..

    Will you add actual global colormap support with distance blending to the global addon? Seems to me it is only tint now?? ... And if it was to have per texture blending it would be absolutely stellar :p

    Jesper, Denmark
     
  23. evilangel89

    evilangel89

    Joined:
    Feb 8, 2017
    Posts:
    268
    Check if anti tiling module has what you want. The videos are on YouTube. Per texture interpolation contrast is already available for microsplat
     
  24. broesby

    broesby

    Joined:
    Oct 14, 2012
    Posts:
    112
    Nope,.. That's not what I mean. Global Color Map is a single hi res texture for the whole terrain - most often satelite imagery - blending it with regular textures is the way RTP in combination with World Composer generated terrains can really achieve real world realism.

    If Microsplat could do this and perhaps even take it one step further and make it per-texture (on/off / tint or saturation / distance/opacity) could make this one the perfect terrain shader IMHO ;)
     
    Boz_1 and recon0303 like this.
  25. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,595
    • Alpha Holes is basically for cave openings or anything for terrain openings. , unless this is something else. Which is possible. . I assumed it was. but I could be wrong.
    His front page shows ALPHA Holes module.
    • This is an important feature so hoping so. RTP has it, and hoping this is brought over to MicroSplats. The blending is already there, so that would be all that is left. :) /cheers
     
    ranaUK, evilangel89 and coverpage like this.
  26. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    - alpha hole and height based clipping module is finished; just need to do the marketing and submit it.
    - Same for triplanar
    - streams is almost done; adding some auto-waterfall tech I want to try first.

    Right now the global module has a global tint map with multiply2x or overlay blending. Are you proposing more of a distance based crossfade? That would be very easy to add. I thought there were pertexture controls for all the global textures, but if not I can easily add them when I'm back.
     
    Boz_1, Teila, recon0303 and 2 others like this.
  27. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    You just use the Unity terrain tools to paint, so it's paintable. But if you mean a module to work on meshes, it's technically possible to do, but the splat data could not be stored in the mesh the way MegaSplat does- you'd have to have 1-4 textures for each object (depending on how many textures are used in the paint job) for the control data, along with fully unique UVs so that each area is mapped, etc. Basically, at that point, you really want something like the MegaSplat technique because it scales to having lots of uniquely painted meshes without needing a ton of texture data to store the control map.
     
  28. Veteran66

    Veteran66

    Joined:
    Jul 12, 2015
    Posts:
    21

    a distance based crossfade (Deteil / Tint Map) must be a part from the Global Module
    you will make it will be good :)
    when you will i can test this "new" option in my project
     
  29. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    239
    very nice work! purchased tesselation and blend module. seems to be more accessible than megaspalt. blending is good but it has still harsh lines at the intersection. could you modify the normal as other blend solutions do?
     
  30. evilangel89

    evilangel89

    Joined:
    Feb 8, 2017
    Posts:
    268
    Just bought all modules except the blending module. That's for next month haha. Bought too many assets this month. Gonna have fun with the others very soon!
     
    jbooth likes this.
  31. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    You mean the intersection of two textures? Just turn down the interpolation contrast and it will blend them softer.. The normal is blended..
     
  32. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    239
    no, not of two textures - i mean the very same texture /material on the ground and the object. i did not have the time to test microsplat extensively. i hope i have some time today. but basically what i mean is this - the normal is bend additionally to smooth the transition even more. at the first look it seems we are on the second image with microspalt. maybe i am wrong but ill come back to you as soon if i got something to show.

     
    Last edited: Aug 28, 2017
    Alverik likes this.
  33. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Normals are blended between the two objects.
     
    Alverik and antoripa like this.
  34. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,595

    Thanks for the info on Alpha hole modules. I want to pick that up once its done. Thanks
     
    evilangel89 likes this.
  35. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,595
    yes.
     
    Boz_1 likes this.
  36. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,595
    ya I really like the way Mega Splats is for painting for certain detail I want to achieve. I tend to use my tablet alot to paint certain detail. Thanks Jason for that info.Keep up the great work.
     
  37. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Just submitted:
    - Triplanar
    - Terrain Hole
    - Streams & Lava

    Along with a small patch to the core module and a bug fix to terrain blending.

    I changed the directory structure to remove the extra, repeated directories. I'm not sure how the asset store will handle this, but expect that your best off deleting the folders before you install the new version (when approved).
     
  38. Veteran66

    Veteran66

    Joined:
    Jul 12, 2015
    Posts:
    21
    Global Texturing:
    Any News for the Detail Texture Distance blend out?
     
  39. Boz_1

    Boz_1

    Joined:
    Dec 20, 2014
    Posts:
    26
    When using a color map it appears as thought the final weight seems to be 50% color map 50% underlying textures,
    can we alter this, I would prefer 80+% color map 20-% texture, would work better for satellite images. What line of code would I have to change and how(if it doesn't get added as a feature) . Thanks in advance.
     
    Last edited: Aug 30, 2017
  40. evilangel89

    evilangel89

    Joined:
    Feb 8, 2017
    Posts:
    268
    Hi Jason, Something elementary I want to clarify on the core module. So I understand that you mention that on adding the diffuse map the other corresponding maps including nsao and height will be generated. Are the maps generated into phyiscal files ? I noticed that the normal is getting generated ( I see the texture changing and populating when I place the diffuse texture and it's definitely not the normal map I have so I assume it's the generated one ) as soon as I place the diffuse map, but it seems like the height maps aren't generated.
     
  41. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    Shipping the other modules this week, I'll get to a cross fade in a bit.

    So you want to be able to have it go from no color map to 100% color map? When I do the distance cross fade I can do this as well, but if you want to hack it in the code is in the fragment folder of the global texturing module. There's a function if you are using per texture properties, and one if you are not, and you likely want to change them to a regular lerp between the two texture rather than an overlay blend..

    Any texture which is not provided is generated right into the resulting array. It doesn't write them out as separate files or anything first..
     
    Alverik, roxIndie and evilangel89 like this.
  42. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    @jbooth is it possible to randomize the amount of tesselation displacement using noise.
     
  43. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    239
    first of all - this asset is what i ever wanted. super easy to use, very good work!!
    regarding to the normals again. on top of the material normal information we should bend those by an interpolation between the object normal and the terrain normal. or am i doing something wrong?! relief terrain pack is doing it by adding extra geometry at intersection point and you can give this an interpolated angle. but this can be done in the shader as well!?
     
  44. broesby

    broesby

    Joined:
    Oct 14, 2012
    Posts:
    112
    Here are my wishes for Global Color Map (most often satelite imagery) functionality ;):

    1) Distance-based crossfade blend slider (a a public float variable would be ok as well)
    2) Fade distance slider (change opacity from 0 to 100% over for instance 20 or 50 meter)
    3) Global maximal opacity slider (ie. max value above will not be 100% but only the slider set value)
    4) Perhaps a button to easily switch close distance opacity from 0 to high number 75-85%

    The last one is to easily be able to see satelite image in editor and then paint textures directy in editor following colors/contours of the satelite picture...

    This way we could perhaps make near-perfect transitions from real textures to satelite pictures.
    Btw, one technique used by RTP and Terrain Composer authors was to only have Global Colormap for diffuse channel and then normal + heightmap active to have detal close up...

    I don't know if I make sense - it is difficult to describe exactly what I mean. The hope is to have full control over both global colormap opacity AND distance crossfade. From 0 to 100% ... and from 0 to infinity. AND to be able to have different values for different textures...

    Sorry for long post ;) ... and it's just suggestions... I'm sure you will find the perfect solution :)


    Jesper, Denmark
     
    Boz_1 and recon0303 like this.
  45. coverpage

    coverpage

    Joined:
    Mar 3, 2016
    Posts:
    385
    @broesby Isn't satellite images low res? Just curious.
     
  46. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    The normal angle is interpolated between the terrain and the object over the bled area. However, there are various lighting issues that may arise if you use the depth buffer to compute them instead of the normals, such as in some SSAO techniques, since that cannot be blended without adding geometry. IE: Your depth buffer still has a hard edge there..
     
    Last edited: Aug 30, 2017
  47. tryptic

    tryptic

    Joined:
    Nov 13, 2012
    Posts:
    54
    Hello, this is a very cool asset and is working ok so far. I was wondering if your shader supports Linear color space. Thanks and best regards, -H
     
    Last edited: Aug 30, 2017
  48. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,567
    yup..
     
  49. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    239
    than i don't get it. it is a very basic scene anyway i even disabled everything accessing buffers (post processing etc.) and still have the hard edge. for which case is it made than or what am i doing wrong!?
     
  50. Boz_1

    Boz_1

    Joined:
    Dec 20, 2014
    Posts:
    26
    Yes please. I also like what @broesby suggested.