Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

HORIZON[ON] - Bridge the gap between the sky and your scenery.

Discussion in 'Assets and Asset Store' started by Becoming, Jul 30, 2014.

?

In which scenarios would you use Horizon[ON] ?

  1. Small to medium sized terrains (first/third person view/driving game)

    33.9%
  2. Small to medium sized terrains (flying game)

    17.6%
  3. Big to huge sized terrains (first/third person view/driving game)

    41.2%
  4. Big to huge sized terrains (flying game)

    32.2%
  5. Small to medium sized terrains on mobile (first/third person view/driving game)

    17.1%
  6. Small to medium sized terrains on mobile (flying game)

    13.2%
  7. Big to huge sized terrains on mobile (first/third person view/driving game)

    16.5%
  8. Big to huge sized terrains on mobile (flying game)

    18.2%
Multiple votes are allowed.
  1. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    To be honest, in my team we have not used sectr but we used similiar techniques. You can definitely use Horizon[ON] with such a setup but you have to test a bit and see which way works best. I'll write down some thoughts bout all the sectr questions in a following post...
     
  2. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Oh thanks for pointing this out... i'll cahnge that part in the manual. Though for some reason it worked for me without restarting... might have been a slightly different scenario though, so its good to be save and do a restart.
     
  3. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I know it's a bit offtopic - but I said this to them too. (speedtree)

    Back on track. I use TC + RTP3, this really does look like an incredible addition.
    The Ocean blending is something I would certainly want if it drops? (will check) time to get out the budget I think

    Thanks for this. nice tip
     
    Last edited: Mar 25, 2015
  4. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Now to the Sectr questions:

    When you stream terrains you probably have to fiddle a bit with horizon to make it work for the kind of terrain you have... there are a multitude of possibilties and i can not really give a generalized advice here. Main thing is that usually you have horizon and it has a square(ish) hole in the middle where your terrains are... Main challenge is to make horizon to resemble your terrains so its not too appearant upon replacement... you can achieve that by using the heightmaps/colormaps of your terrains combined to a single image and use horizon as a terrain substitue. Since Horizon works in worldspace(unless you change that in the main settings) it will be no problem to move elements(Meshes) as the projected terrain will still stay in place. This makes it pretty much perfect for streaming. You can also use Horizon[ON] in a different way in the center with a different set of materials/maps and have another Horizon[ON] setup around it. There are so many different ways to deal with different setups that it is really hard for me to come up with a the one way that works in every case. Thats the reason i made it as modular as possible. The best tip in general in case you want to do such an advanced setup is, you can certainly make it but you should take the time and learn how horizon works. Dont expect a ready made solution for every case, though, it has all the bits and pieces that you need but you have to combine them in a way that works or you. I'll try to give advices as good as i can.

    Edit: an alternative Workflow with Sectr/Horizon[ON]. If you export your terrains as obj. make optimized mesh verrsions of it and use them as terrain substitute you can get great results as well especially if you have a good global normal map and colormap on it. You can use the Horizon[ON] object shader for this. So you have a square(or rectangular) grid of terrains(where only one terrain is an actual unity terrain) and can use Horizon[ON] around everything in the usual way.
     
    Last edited: Mar 25, 2015
  5. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Yeah we work closely together ;)

    What do you mean with Ocean blending? I think it has already dropped but i may missunderstand :)
     
  6. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Okay. Here's a quick rundown

    this is a 15x3x 1 km (so 15km2) ish world converted to flat meshes. With a "Flat" style.

    A) can it match this auto-magically - given the right love.


    flat1.JPG

    As you can see at one end and two sides it runs to (inaccessible) ocean, with a short - accessible - water section.

    flat2.JPG

    Here is that from the oceans side

    B) can it match this auto-magically - given the right love.

    oceanEnd.JPG

    as you can see there I employ 4 level LOD's then culling.
    culling.JPG

    In the above picture it is actually culling some of the tiles (this almost never happens based on the culling length, but just might in the exact right place so...)

    C) Would this affect the generated horizon any?
    or put another way... can it match this auto-magically - given the right love.

    and finally, I simply can't change the terrain to be "flat" at the edges in this case. the land is higher than the sea (just like real-life - as that is the topology of a real-world location)

    Is there a "best way to handle" it being a horror story wonky edge like I have on my coast?
    nastyEdge.JPG

    So, Flat Style, Annoying water section, Silly LOD issues, wonky edges... Can it be done?
    (and - yes - I turned the water off so you could see what was happening with the topology)
    :) Thanks
     
  7. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    Let's say I have a zone that is all desert to the west and all grass to the east. Is there a way to take a single splat texture that is desert on the left and grass on the right and somehow change the tiling so that it only tiles the left half of the image to the west and the right half to the east?
     
  8. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    sure, although i would do it with 2 layers and a mask. You can try to set the mask to clamped as well then you dont have to scale it so big... the bigger you scale the mask the higher you need to make the resolution although at 1k mask can be enough for 10 km(or more). Just paint a mask (should take you no more than 2 minutes for a rough sketch that you can refine later) and play with its scale and offset in the main section...
     
  9. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    tl;dr? can it match a flat style (roughly - I understand about edges).
    can it do ocean matching.
     
  10. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    ... given the right love... sure ;)

    Achieve the flatshading might need some extra steps but i'd try first to set every texture to point filtering, that might not be the same as your triangulated shading but might be close enough to fit your art style. More effort but closer to your look would be if you bake some displacementinto the meshes of horizon and export them to a 3d program and reimport them with hard edges. For ocean blending you can just use the same idea i describes to makeshiftwings in the post above. but instead of using a regular layer you can use the water feature.
     
  11. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    fine. I'll buy it then :)
     
  12. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    oh i though you have it already... didn't know this was a sales pitch :)
     
  13. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    It's been a loooong month. Time to get excited about my new toy! niceJob.JPG
     
    Last edited: Mar 25, 2015
  14. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    further to this I note that it is not possible to cast shadows on the Terrain Mesh.

    Is this expected?

    U4p4
    noShadowOnU4p4.JPG
    U5f4
    noShadowOnU5.JPG

    Or am I being stupid. I checked my "caster" was casting and the mesh was set to "receive" shadows, The quality setting allowed for shadows of both types and I used deferred/Linear render in both instances.

    webplayer of u5 here http://kaycare.co.uk/games/boink/ (20mb)

    Layers thing maybe? Goes to RTM

    (cough)
    1.4 mb 3.1% Assets/SnazzyTools/SnazzyGrid/Resources/GUI/SnazzySettingsBGImageBright.jpg
    1.4 mb 3.1% Assets/SnazzyTools/SnazzyGrid/Resources/GUI/SnazzySettingsBGImage.jpg
    Goes to check that is not a hangover...
    (cough)


    It really is very beautiful work though.
    Hats off to you
    BeautifulWorkThough.JPG
    newShaders.JPG
    Loving it.
     
    Last edited: Mar 26, 2015
  15. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Yes, shadows are disabled as Horizon[ON] is not meant for closeup terrains, Tom and i discussed it and we agreed that performance is most important... if your shadow distance is within sane limits the horizon would be out of the shadow distance anyway ;) The terrain mesh in the demo uses a the object shader from Horizon[ON], in your setup you would need to put a unity terrain(or mesh terrain) with the terrainshader of your choice on it. I didn't put any standard assets in the package as many people dont like that ;) But anyway, if you can live without realtime shadows it still makes a nice terrain shader.
     
  16. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    How comes that? I gave you an updated version of SnazzyGrid which does not use the resources folder, right?
     
  17. Pryzmeister

    Pryzmeister

    Joined:
    Jan 21, 2015
    Posts:
    26
    Nice work! this looks perfect for our current project and i will be buying to try out without hesitation.

    I have a question regarding your demos- what sky system are you using? we are looking for a good one for time of day and night time effects and the one you used in the demos looks great! Maybe you used your own system and if so is it part of Horizon ON?
     
  18. Pryzmeister

    Pryzmeister

    Joined:
    Jan 21, 2015
    Posts:
    26
    Purchased- however i am having some problems.

    First problem is i am using Unity 5 - your manual and getting started tutorial look like they were done with Unity 4 as some things do not match making it hard to follow.

    Second and most important problem is that i see no effect at all in my scene - I have some very strange results... there is no height in the terrain generated- it is just flat, also ther is some very strange stretching of the textures on the terrain that look like long streaks - i can send screenshots if needed to better explain the problems and how it is looking.

    I should add that i am using multiple (4 ) terrains, RTP and terrain composer in the latest Unity 5.

    Combined tile size length/width is 26000 x 26000

    May i suggest a tutorial video at some point? (With Unity 5) cheers.
     
    Last edited: Mar 26, 2015
  19. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    EDIT: Shadows would be nice
     
    Last edited: Mar 26, 2015
  20. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I've never seen a post edited so many times under my cursor :) We can talk about everything reasonable, right?
    You pointed out my mistake in marketing, i did not mean to advertise horizon as a terrainshader but as a terrain extension that you put around your terrain. i thought that was clear, maybe not.
    I'll either change my wording a bit or put these shadows in. You mentioned somewhere that you use RTP, which is a great choice and its perfect for the accessible terrain. RTP for closeup(which of course supports shadows, like any terrain shader) and Horizon[ON] for the distance is a great match, i dont think shadows are needed and would only cost performance while not being seen anyway. But again, we can talk about everything.
     
  21. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    The demo uses an old version of Time of Day, i am currently looking into supporting the features of the latest version.
     
  22. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Yes i plan to make the getting started guide as a video, and some other videos too but now i am too busy, its high on my list though.

    Have you followed the getting started guide? I think you should do it once or at least read it to understand the basic workflow. I'll try to assist you, but i need more details of your situation. From what i read in your post i guess you used your own textures and no heightmap(or a shader without displacement) and your textures might be set to clamp. If you dont want to do the getting started guide you should at least check the demeo scene and see how everything is set up.
     
    twobob likes this.
  23. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I PM'd you instead. A thread is not the place for potentially negative-sounding talk.

    Also, I don't do "well" in a morning, so the A.M. is probably not the best time to do it.

    It's a great great system.
     
    Last edited: Mar 26, 2015
  24. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I can't speak for this individual implementation, I can say however how I approached it. (to do a "working" test and without reading a README)

    Open your main scene, save off w/e you want for the "GUTS" as a prefab. I chose a set of 60 pre-LOD'd meshes (but terrains would have been fine) and shoved it in a prefab.

    Open Demo scene. Disable the "Terrain" mesh in the demo.

    adjust.JPG

    Drop prefab in we made earlier right in middle 0,0,0 and under the _scene node
    (pictured in a few pics time)

    we then highlight the Example_Displacement and SCALE it all to fit around our shape terrain (some slight faffing may be required)

    scaleEdging.JPG

    we ended up with 3.3,1,1.95 to roughly match our imported terrain...

    Here is a not really very well done job on that, that looks okay in-game (to show you don't have to try very hard) That weird pixelation is just my art style, ignore it.
    faffing.JPG

    I then copied the camera settings - in total - and pasted them onto a more useful camera. (DON'T SKIP THIS STEP)

    Here is the view with my stuff in it and the camera has been adjusted to match the provided demo one.
    cameraCopiedSettingsAddedLand.JPG

    so that was it really, shoved in Ethan.

    and here is that - 10 minutes of effort - in Unity 5 f4.
    Which isn't even close to a "great match" but demonstrates many some of the principles required to achieve one.

    EDIT: see below - this post is not meant to reflect "Best Practices" just "Does it work"

    blend.JPG

    Hope it helps someone else test their system.
     
    Last edited: Mar 26, 2015
  25. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Yes that is a good approach but instead of scaling the whole displacement parent you should see how it is composed out of individual planes(childobjects) and put in more of the planes(duplicate and move the ones that are in there) on the longer side of your terrain/mesh/whatever you have in the middle. This will give you square polygons instead of stretched ones, and it will give you nicer displacement.

    Next step in your case would be to open the mask in photoshop(or gimp or whatever you are using) and paint the water (alpha channel) where you need it...
     
  26. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Oh yeah, totally.

    I just meant to "Check it works." There is NEVER a replacement for READING the README. ever.
    (also I did look how the panes worked, and tbh I did read some of the manual, and most of every post on the subject 1st here ;) including the nice one with the 3 pictures where you demonstrate proper external tessellation patterns )
     
  27. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    have you tried to put the Horizon[ON] textures to point filtering to match your flatshading look? i think that could work with your artstyle. Might want to downrez the textures as well.
     
  28. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    FlatShadingAttempts Mk1.

    Pretty much just vampire-ing all your old heightmaps, shove in flat screenshots to bitmap2Material and extract height info.
    Feed back into layers 1-4.

    (still working on making the colors right)
    pixelGloss.JPG

    In game looks nice
    EDIT I have now applied "point" to lower-res textures as you can see :) thanks!
    For other people in the future - rolling off the detail blending gives a more cartoon style if you need it.
    Here are few in-game shots

    ingame1.JPG

    lo-poly-hills.JPG

    lo-poly-hills2.JPG

    I did have a question though.
    OneTurnsOffTheOther.JPG
    If I enable the thing at the top does it over-ride the thing at the bottom?

    :) Thanks again
     
    Last edited: Mar 26, 2015
  29. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    In case you dont want so pointy mountains you can try to put a bigger tiling on your layers...
    about the gloss checkbox, it should have a tooltip that explains what it does... basically, if enabled the alpha channel of the layer colormap will be used as gloss map... only the alpha channel of the color picker should be overridden.
     
    twobob likes this.
  30. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Thanks. Yes, reducing my tile value did indeed unsharpen my mountains :) Thanks.
    flatstyle3.JPG
    Reducing detail value and added point does indeed give a nice pixelated flatish style :)
    (I left the edge dark so you can see the join, (Triangles -> Squares)
    flatEdgeBlend.JPG

    flatStyle.JPG

    And here is that edge blended with a trace of detail to show the two parts.
    (you can see I have placed the VERY flat, but angled, terrain above the surrounding world for ease of implementation, for now)

    Overall, this is a very fun system when the results start coming in.

    Thanks :)
     
  31. Pryzmeister

    Pryzmeister

    Joined:
    Jan 21, 2015
    Posts:
    26
    Thanks for your help twobob, all working now and looks so incredible!, If you are even slightly on the fence about buying this package, do not hesitate, the best package i have bought this year.
     
    twobob likes this.
  32. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Can't see your pic for some reason but you are more than welcome.
    Sometimes a "Just Make It Work" is good enough to get you rolling.

    To The World: no replacement for reading the manual though ;)
     
  33. Karthik7Nike

    Karthik7Nike

    Joined:
    Nov 2, 2014
    Posts:
    5
    Great! Thanks for the quick response. #2 and #3 worked out great.

    #1 did not work for me. I tried out several values for the Min and Max Offset values which affected the 'y' axis position appropriately ONLY in the inspector BUT Visually, the transition terrain does not move. It still stays much lower than the rest of the Horizon[On] pieces. I've attached a picture of that. Any idea why that's happening?
     

    Attached Files:

  34. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    3 things come to my mind:
    your camera might not be tagged Main Camera.
    or you mabye have multiple Main Cameras in your scene,
    or the Transition Terrain is set to static.

    let me know if it was one of these.
     
  35. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Some info about the Time of Day atmospheric scattering image effect... it works in deffered for all but the transition sky and transition terrain elements of Horizon[ON]...
    Unbenannt-2.jpg
    The effect looks great so we are trying to make it work for forward and also for the transparent elements.
     
    hopeful likes this.
  36. Whippets

    Whippets

    Joined:
    Feb 28, 2013
    Posts:
    1,775
    Cool XD Fully working with TimeOfDay is the one buy/don't buy point for me, so well happy to see the above image :)
     
  37. Karthik7Nike

    Karthik7Nike

    Joined:
    Nov 2, 2014
    Posts:
    5
    Just Perfect!! The transition terrain was set to static. Unticking static flag solved the problem. Looks great now. Thanks so much!
     
  38. Pryzmeister

    Pryzmeister

    Joined:
    Jan 21, 2015
    Posts:
    26
    Was looking for a sky solution and went with uniStorm- it currently does not work with Unity 5 but a fix is coming for that.. i really hope it works with horizonON
     
  39. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I guess it would work if they don't do anythin unusual. let's hope the best.
     
  40. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    We got Horizon[ON] fully working with Time of Days atmospheric scattering. I just realized how ridicolous it would be to use atmospheric scattering with just a terrain... atmospheric scattering ís a very long range phenomenon and nothing you would notice within a few km distance... so it turns out Horizon[ON] is a perfect reason to use atmospheric scattering.

    CompareGifToD1.gif

    Now we are checking if nothing broke with the latest changes then we can submit the update.
     
    Last edited: Mar 30, 2015
    Whippets likes this.
  41. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Was playing a bit with the Atmosphere settings of ToD and i noticed it is by default set to a brightness of 1.5, i think a value of 1 gives more realistic results:
    ToD1.jpg
     
    BigDaz and Whippets like this.
  42. OnePxl

    OnePxl

    Joined:
    Aug 6, 2012
    Posts:
    307
    What would be the best way to use this with a flight-sim type movement? Just move the middle terrain tiles and keep the plane still?
     
  43. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,927
    Has anyone used this with multiple tiles? I do use TC and RTP so the tiles are all "fit together". I have 16 tiles.
     
  44. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Thats one way but there are others... you can move Horizon[ON] and its textures will stay in place giving you infinite(tiled)environments. Try selecting the horizon parent object and move it around, this should give you some ideas. You might even get away without a terrain at all. There are so many ways to deal with this that i have a hard time to decide which one would be the most suitable for you, i would need to know more details of your project.
     
  45. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    You can just treat your tiled terrain like one huge terrain and put Horizon[ON] around everything.
     
  46. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,927
    Yay!! Thank you. :) I will pass that along to our chat group since we have debating this issue. How easy it is just to ask a question. I appreciate the quick response.
     
  47. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Its a pleasure, i am currently talking with Nathaniel(Author of TerrainComposer) about how we could make TC and Horizon[ON] work together more conviniently.
     
    John-G, Teila and hopeful like this.
  48. OnePxl

    OnePxl

    Joined:
    Aug 6, 2012
    Posts:
    307
    I didn't know that, that sounds good; I'm going to play around with that.
     
  49. mbowen89

    mbowen89

    Joined:
    Jan 21, 2013
    Posts:
    639
    Here is my workflow:

    WorldComposer -> TerrainComposer -> Horizon.

    I attached an image showing the terrain created from picking out an area in WorldComposer.
    terrain.jpg

    I used a mask to make the outside edge flat (at 0 height).

    How can I use WorldComposer to grab the heightmap data for the surrounding area, and make Horizon use that?
     
  50. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I will make a tutorial on that, at the moment you can read the docs and the quickstart guid which should give you generalized informations on the workflow...

    I would suggest that you normalize the heightmap that you are using and then bring your terrains lowest point to 0... you should use a gradient falloff to flatten the terrain. makeshiftwings posted a gradient on the last page that you can use for that purpose. For utilizing the maps of WC i suggest you look at the included maps and how they are made. Sorry for the unspecific reply but i will need a little more time to work out a better response for this kind of question as i can forsee it will be asked many times and i want to give a good answer. For now you have to pick up the info from the manual. If you have more specific question i can of course reply faster.