Search Unity

Planetary Terrain

Discussion in 'Assets and Asset Store' started by HenryV, Dec 4, 2013.

Thread Status:
Not open for further replies.
  1. kzaurckichz

    kzaurckichz

    Joined:
    Nov 5, 2013
    Posts:
    52
    @HenryV
    This project is abandonned isn't it ?
    I bought it more than a year ago, made lots of improvements on it.
    If you can't pursue it's development, Maybe I can.
    Would you accept if I continue this project on my behalf ?
    I might do something a little different though, I am currently working on making it a Voxel Planet.
    I never thought it would actually be possible but I just recently found a way :)

    Basically, I am suggesting a full scale earth with procedural terrain that you can dig tunnels and the textures change as you go deeper until you find yourself in a bright orange liquid, the Magma !

    As I am posting this question I am also inviting everyone on this thread to tell their opinion about my proposal.

    Here's a little teaser !
    digging.jpg
     
    mcanty55, Cliftonm and Sleeper75 like this.
  2. GregMeach

    GregMeach

    Joined:
    Dec 5, 2012
    Posts:
    249
    This is completely my own feelings: I have no interest in a voxel based solution, if I was I believe there are several good (& actively supported) assets on the store already.

    Best of luck to you
     
  3. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    The unity engine breaks with too many voxels.

    I would not be interesed
     
  4. kzaurckichz

    kzaurckichz

    Joined:
    Nov 5, 2013
    Posts:
    52
    That's the thing I've found a way.
    The reason unity breaks with too many voxels is that it has a limit of 65535 vertices per mesh.
    The trick is to have multiple instances and enable only the ones we need, creating the voxel instances as we dig.
     
  5. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Everybody finds 'a way' but it creates another issue. Feel free to go down the path so many others have tried.
     
  6. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    If you have not seen this video, I suggest taking the hour to view it.

    This is where I assume Henry got his ideas.

     
    Cliftonm likes this.
  7. kzaurckichz

    kzaurckichz

    Joined:
    Nov 5, 2013
    Posts:
    52
    Procedural planets using subdividing cubemaps is nothing new.
    There are lots of documents on the internet explaining different ways to do it.
    I've watched this video more than a year ago while I was solving the issues I had with very big scenes in space.
     
  8. alecie

    alecie

    Joined:
    Sep 2, 2013
    Posts:
    73
    @kzaurckichz

    are you still working on this? I'm extremely interested in that
     
  9. kzaurckichz

    kzaurckichz

    Joined:
    Nov 5, 2013
    Posts:
    52
    Indeed I am still working on it and it's going well, but it seemed like the first people who answered were not interested so I don't really consider giving it away as an asset.
    I am doing it for my own game I'm working on.
    Anyways I would need the approval of the original owner of Planetary Terrain to publish it sicne it uses PT as a base, otherwise people would need to buy it as an "addon" after buying PT... And since PT is pretty much dead, no one would buy it from now on, and it would not make any sens to me working on making an asset that one or two people will ever buy.
    But I'm still waiting for HenryV's answer tho.
     
  10. alecie

    alecie

    Joined:
    Sep 2, 2013
    Posts:
    73
    I'm planning to buy PT if I don't find any smooth voxel solutions. What surface extraction method are you using? Could you send me a dual contouring script if you have one? I believe from that point I could be able to make voxel planetary renderer.

    I wanted to make such game since I remember and having destructible planets would be a huge plus.
    Maybe you could share what you have with me and as a reward I would help you develop it, add some features or fix some bugs?
     
  11. Xeex

    Xeex

    Joined:
    Mar 29, 2015
    Posts:
    23
    Is there anything even REMOTELY like this going on anywhere? The asset store only seems to have 3, this one, a more expensive one (both which are no longer being updated, etc) and a third which i am unable to use for my game. In short, I need a planet. A PLANET sized planet (or at least a moon sized planet, aka, a pretty large world) for my game, and simply cant find one. And i dont mean wunna those "this is nifty to look at" planets. I mean a real, can walk on planet. doesnt even have to be that detailed, something like kerbal would be great. i just.. cant find one anywhere. If i had the know-how, id do it myself but.. that i am certainly lacking. any suggestions? Doesnt need to have voxles. in fact i would probably prefer it didnt at this time.
     
  12. Deleted User

    Deleted User

    Guest


    You're not the only person that wishes for this. For the past year I've looked for a planet creator that works. The upgrade to unity 5 has caused many of the other planet creators not to work.

    The planet creators that do work, have so many polygons that are generated at runtime; which makes it impossible for me to place buildings and/or objects on the planet. Let alone the path/waypoint system is also a problem. I've created my own planets using Cinema 4D. This solves some of my problems, but now the issue I have is the concave colliders not properly aligning with the planet's surface. I've purchased Concave collider, it works beautifully for everything except my planets. For some strange reason, it places my characters in the sky. I spent a week trying every possible configuration, but my characters are always walking on air. I'm using the Faux Gravity scripts to walk on the planets, but due to the colliders my character can't properly align. If the planet was a smooth sphere, my problems will be solved.

    I'm almost ready to give up on creating this space game, because of these setbacks. Walking on planets, interacting with people, interacting with environment is key to this game.
     
  13. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    There no out 'of the box solution' that works well in the Asset Store actually. You should "tweak" scripts/shaders EVERYTHING by yourself.
    Plus, every tools, frameworks based on 'Standard Y Axys Gravity' can't works out of the box (By example, i can't use Final IK in my projet because of this). Even a simple Car/Hovercraft/Foot Placement script can't run. You must do EVERYTHING from scratch or less.
    I buyed Planetary Terrain AND Etherea.
    Ethera is not supported since Unity 4.2. But, after a lot of works i have now a good starting base for my projet. Here a simple scene..
     
    Last edited: Sep 4, 2015
  14. Deleted User

    Deleted User

    Guest


    So far I've learned that I have to modify things or work around them myself. That's why it's been a year and I'm still fighting with this game.

    Your game is beautiful. I like the day and night cycle. At what scale is your planet in unity, meaning the X,Y,Z scale number?

    With my planets I want to have one solar system per map. In one solar system is
    1 large planet
    possibly a moon or two smaller moons
    asterioids
    satellites
    jump gate
    and 1-3 space stations depending on their size.
     

    Attached Files:

  15. Deleted User

    Deleted User

    Guest

    This asset allowed the spherical shape of my planets not to be obvious. When I create my planets on Cinema 4D (R15), you can tell you're on a sphere. I can easily fix this by increasing the scale of the planet. I don't want to do that because it'll give me less room for the other objects on the map. I don't want to Asynchronously load a map, because I'm not familiar with that method.

    This is an example of what I mean. The little dot is a shuttle on the lower atmosphere of my planet created in Cinema 4D. You can tell the plant is a sphere.
     
  16. Xeex

    Xeex

    Joined:
    Mar 29, 2015
    Posts:
    23
    At this point im so frustrated, i dont even need a planetary terrain asset, id be happy with a planet that just had terrain i could walk on and water i could swim under. yanno, the pasic "planet" grassy areas, desert areas, mountains, snow, water. few continents and boom. I'm drivin myself batty here lol. Thanks for the reply nonetheless @ataloss. I really felt like i was just missing something.
     
  17. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Yes. Seem making a planetary game on Unity is not so easy. :p
    Thanks. Lot of works to find an acceptable Artistic Direction.
    Thanks again. Based on a custum SkyBox (Aras) with some light modifications. No athmosphere scattering actually.
    Code (csharp):
    1.  
    2. Shader "Skybox/MoonsBlended"
    3. {
    4.    Properties
    5.    {
    6.      _Tint ("Tint Color", Color) = (.5, .5, .5, .5)
    7.      _Blend ("Blend", Range(0.0,1.0)) = 0.5
    8.      _FrontTex ("Front (+Z)", 2D) = "white" {}
    9.      _BackTex ("Back (-Z)", 2D) = "white" {}
    10.      _LeftTex ("Left (+X)", 2D) = "white" {}
    11.      _RightTex ("Right (-X)", 2D) = "white" {}
    12.      _UpTex ("Up (+Y)", 2D) = "white" {}
    13.      _DownTex ("Down (-Y)", 2D) = "white" {}
    14.      _DayTex("Unique Day Texture", 2D) = "white" {} // a blue one. :-)
    15.    }
    16.  
    17.    SubShader
    18.    {
    19.      Tags { "Queue" = "Background" }
    20.      Cull Off
    21.      Fog { Mode Off }
    22.      Lighting Off
    23.      Color [_Tint]
    24.  
    25.      Pass {
    26.        SetTexture [_FrontTex] { combine texture }
    27.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    28.      }
    29.      Pass {
    30.        SetTexture [_BackTex] { combine texture }
    31.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    32.      }
    33.      Pass {
    34.        SetTexture [_LeftTex] { combine texture }
    35.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    36.      }
    37.      Pass {
    38.        SetTexture [_RightTex] { combine texture }
    39.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    40.      }
    41.      Pass {
    42.        SetTexture [_UpTex] { combine texture }
    43.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    44.      }
    45.      Pass {
    46.        SetTexture [_DownTex] { combine texture }
    47.        SetTexture [_DayTex] { constantColor (0,0,0,[_Blend]) combine texture lerp(constant) previous }
    48.      }
    49.    }
    50.    Fallback "Skybox/6 Sided", 1
    51. }
    52.  
    53.  
    36000*36000*36000. A good compromise for a walking planet.
     
  18. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    That's why my game is set on a desert/sand planet. ;)
     
  19. Xeex

    Xeex

    Joined:
    Mar 29, 2015
    Posts:
    23
    ya i just got done trying to run around your entire planet lol. i ended up finding some cliff and clipping thru it tryinna climb it, but at that point, i was able to see how large it really was cuz i was sorta stuck in the middle. thats very nice. which one did u use to make that?
     
  20. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Etherea..
     
  21. eriger123

    eriger123

    Joined:
    Jan 28, 2013
    Posts:
    7

    I am highly interested in this.
     
  22. Xeex

    Xeex

    Joined:
    Mar 29, 2015
    Posts:
    23
    I think a ton of us would be lol
     
  23. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    So, Does not works as expected
    How to obtain the refund of the product.?
    :rolleyes:
     
  24. Xeex

    Xeex

    Joined:
    Mar 29, 2015
    Posts:
    23
    I actually ended up getting it the other night. After trying to follow the video, here's what i ended up with. not too bad id think. Just takes some tinkering.

    Now, just gotta get all the collision set up properly. If anyone has some tips on that, id be grateful.
     
  25. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,556
    This is false information, Final IK foot placement works fine on a sphere, you just need to check "Rotate Solver" in the Grounder, it is an optimization. See this tutorial video (from 2:00) to see what I mean. Please, ZJP, next time just ask me a question.

    Pärtel
     
  26. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Give me an email by PM. I will send you a test project. IF you can use your tools with this project, fine. No refund, but good luck. I'm not talking about ground placement only, but about the others functions too. And yes, i know about this tutorial. Remenber me? i was a very very fan of your tools
     
  27. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,556
    Yes, I remember you, sent you a PM, I don't want to hijack this thread (sorry HenryV).
     
  28. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Partel, nice assets!

    (hmm that sounds kind of weird)
     
  29. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Lol. HenryV is M.I.A. :rolleyes:
     
  30. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    I would not say MIA - that means missing in action, he just left the building - with our money
     
    Cliftonm and ZJP like this.
  31. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    I found Henry Vuontisjärvi's paper he wrote for school, this application is the result of this document. I wish he would have posted it himself.
     

    Attached Files:

  32. Sleeper75

    Sleeper75

    Joined:
    Mar 13, 2013
    Posts:
    5
    You would be the only guy on the asset store that supports voxel planets that's even from this YEAR.

    Seriously if these guys don't want it then they don't need to have it, But there are plenty of people who would pay for this if you kept going and updated it once in a while. Hopefully the owner responds and gives you some good news, I for one would pay a lot for something like this as i can appreciate your effort and the fact that there is nothing like this on the asset store (someone posted about there being "plenty" of assets like this, Have you checked those assets dates ?) ...
     
  33. trudeaudm

    trudeaudm

    Joined:
    Apr 17, 2013
    Posts:
    116
    Most of the assets that are anything like this are very old and not updated. I wish Unity had some system in place for stopping sales on assets that were not kept up to date.
     
  34. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    It already exists. Those assets are tagged in the Store as DEPRECATED.
     
  35. rapidrunner

    rapidrunner

    Joined:
    Jun 11, 2008
    Posts:
    944
    I was looking forward to this asset; I was about to buy it but I thought myself that it was better to wait, since I noticed that the development was not exactly speedy fast. I am glad that I didn't pull the trigger, since the project seems abandoned at this point.

    True that you can always use this as starting point, but to be honest; work on someone else code, is a bit of a problem when you can't interact with them...sometimes you are better off starting from scratch your own implementation.

    Now; it seems clear to me that there is a new frenzy about space, planets and such, after all the new games has been announced or released, but IMO, voxel is the worst approach that could be used....simply because no matter what you do; unless you have a team of many people, the result will be acceptable at most (even if Carmack does it on his own...it is not a matter of skillset, but of clear limitations of the platform). Unity was not meant to be used for such games; the scale of a game like Elite Dangerous is too big to be even considered (although kudos to Kerbal, for trying it).

    So instead of complaining about what can't be done, why don't you look for alternatives? Either you write your own engine, like Frontier did; or you use Unity and work around the limitations. I am using a hybrid approach, where the planet is generated partially from procedural functions, and the rest is purely scripted; so the assets and location follow very specific rules. If the area where the assets has to go, does not fit; the area conform to the "block" placed on the planet.

    When doing the re-entry, I use the trick of the clouds to mask the fact that the ship is not transitioning seamlessly but in fact it is going through a load screen. Same when you go from the planet to space. Less than ideal, but this is the solution that I was able to implement.
    Then it depends from what is your goal...if you want something like minecraft in space (like Space Engineers), then your options are limited to the bone. If you are willing to trade off and make compromises, then you can use Unity and achieve great results. Even Star Citizen, from what they show, does not have the seamless transition from space...they use the same trick of the cut scene in between to load the planet surface.

    Then let's be honest...do you remember teh topology of the planet from space, and recognize it exactly when you are on the planet? So if you procedurally generate the planet surface after the re-entry, and it is nothing like the one that you saw from above; I doubt that you could even tell.
    I see an asset that generate planet surface in the store; that seems to me a reasonable solution; in the meantime that Unity maybe, will surprise all of us and will make a toolkit to actually do procedural planets, seamless transition from space to planets and so on. I would not mind to spend even 300 dollars for such thing; if it is perfectly implemented and easy to use. In the meantime, we use what we have, and write what we do not have.
     
  36. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    I have intersected multiple projects in the asset store and created a hybrid system that will work for the MegaWars project. The paper I posted here a few weeks ago from Henry V was very informative. The real trick to procedural planets is the horse power. I ended up moving the generation up to a 24 core 32gb server using web services to generate the height maps.
    A map with sufficient detail to shade properly from orbit required 24 seconds to generate on a i7 2.8ghz machine in full parallel processing mode using all 8 cores. I started to move it to the gpu but it would not have worked on tablets or mobile devices so the best choice is to get a server to generate the height maps. This will also cache the height maps to be used by multiple players only to be called on demand.
    This is a view of the flat map of a planet and the spherical mapping.
     
    Last edited: Oct 5, 2015
  37. DevJim

    DevJim

    Joined:
    Dec 23, 2013
    Posts:
    26
    Thanks for posting that paper, it has been quite useful. I'm finally moving ahead and offloading the planet generation to the GPU, big task but it seems well worth it. I'd happily share with Henry how I'm achieving this if/when he returns.

    Interesting idea with generating maps via webservices!
     
  38. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
  39. looki666

    looki666

    Joined:
    Sep 5, 2013
    Posts:
    79
    Anyone know how to make his generator not spherical ?
     
  40. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Yes, its a lot of work.

    IMHO You would be better off using Terrain Composer, that way you can place trees, grass and buildings
     
  41. LightenFor

    LightenFor

    Joined:
    Dec 26, 2013
    Posts:
    26
    I will mak e planetary engine optionaly CPU or GPU terrain construction
     
  42. HeadClot88

    HeadClot88

    Joined:
    Jul 3, 2012
    Posts:
    736
    This looks really nice so far :)
     
  43. exiguous

    exiguous

    Joined:
    Nov 21, 2010
    Posts:
    1,749
    Well, the point is not to MAKE it. This has been done a few times already. The point is to SUPPORT it afterwards. This is where ALL PlanetGenerators I'm aware of FAIL.
     
    ZJP and softrare like this.
  44. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    THIS...
     
  45. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,363
    Will this be on the store ?
     
  46. LightenFor

    LightenFor

    Joined:
    Dec 26, 2013
    Posts:
    26
    May be low purchases...
     
  47. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    I would not recommend it.

    There have been several packages and they sell a handful because everybody's needs are different.

    If your building it for your own needs, that is one thing. If your building it to support your life, na.

    There are several out with source I have personally taken three packages and merged them for my needs in MegaWars. The source here with the documentation I posted above will get most started down a good path.
     
  48. tHe_sTrYnG

    tHe_sTrYnG

    Joined:
    Jan 5, 2014
    Posts:
    4
    So node.cs

    add the following on line 16 for the protected Node Class which is within the NonSerializable and is instantiated as Serialized.

    so above the
    Code (CSharp):
    1. (protected Node[] inputs;)
    shoot the NonSerialized as follows:
    Code (CSharp):
    1.  
    2.         [System.NonSerialized]
    3.     protected Node[] inputs;
    4.  
    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections.Generic;
    3.  
    4. namespace Planetary {
    5.  
    6.     [System.Serializable()]
    7.     public class Node
    8. {
    9.     [System.NonSerialized]
    10.     public ModuleBase module;
    11.  
    12.     public string title;
    13.     public SerializableRect rect;
    14.     public int previewSize = 64;
    15.  
    16.         [System.NonSerialized]
    17.     protected Node[] inputs;
    18.     private int lastInputCount = 0;
    19.     protected bool hasOutput = true;
     
    Last edited: Dec 30, 2015
  49. michaljabrzyk

    michaljabrzyk

    Joined:
    Apr 15, 2013
    Posts:
    57
    Someone has this package working on Unity 5? Is this still work ?
     
  50. Cliftonm

    Cliftonm

    Joined:
    Nov 15, 2015
    Posts:
    36
    I have it. It works perfectly fine as ling as you run the API updater, and remove or fix the errors which are just issues with Debug.Log.
     
Thread Status:
Not open for further replies.