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

[Answered] What terrain type to use (pros and cons)?

Discussion in 'Scripting' started by slay_mithos, Nov 5, 2014.

  1. slay_mithos

    slay_mithos

    Joined:
    Nov 5, 2014
    Posts:
    130
    Hello,

    I am currently still on the reflection phase of my project (basically a 3D RPG or sorts), and I was wondering what the best terrain type would be.

    From my understanding, the default terrain is an height map with textures, meaning that it's pretty fast and easy to model your map. You have to trick the collision engine when making underground parts.

    Using models from 3D tools (like blender) can take significantly more time to make, but it can support arches and caves directly. In theory, it can make for the best looking maps, but at the cost of time, and potentially performances (if too many vertices).

    Voxel-based terrain, not natively supported, but definitely possible (with TerraVol, for example), makes it possible to alter the terrain easily, so you can make use of it for a lot of neat things (NPCs creating a town randomly), but it impacts the performances, meaning that the draw distance has to be lowered.

    I would tend to go for the Voxel, with just the informations I have, but being pretty new with Unity (not with coding), I wanted more advices before sinking either a great deal of time, and/or some money into it.

    The main appeal for me is that it allows for greater deformations, but I'm pretty sure that the default terrain can be flattened through code, and the only thing the default terrain seems to be really lacking is arches.

    I also hope that some people with deeper knowledge can share some wisdom on this.


    (previously posted under "Answers", but apparently wasn't the right place)
     
  2. GarBenjamin

    GarBenjamin

    Joined:
    Dec 26, 2013
    Posts:
    7,441
    JUST A NOTE: my reply below was in response to the OP in the Game Design Forum. Obviously, it has since been moved by a mod. ;)

    This is another technical post. Not sure why these keep getting posted in here.

    Everything you're asking about comes down to implementation. How to implement the terrain and the pros and cons of different implementations.

    What are your design goals for the terrain? How will the player interact with it? What kind of atmosphere should it help establish?
     
    Last edited: Nov 5, 2014
    TonyLi and Gigiwoo like this.
  3. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,523
    Thank you! Those are good design prompts for this thread.

    The OP mentioned deformations and NPCs creating towns randomly. @slay_mithos, ignoring implementation and performance, do those features appeal to your core design ideas? I can imagine, for example, an RPG revolving around powerful magic that can reshape the game world. Or a wild frontier sandbox RPG where NPCs (and the PC?) carve towns out of dangerous wilderness.
     
  4. slay_mithos

    slay_mithos

    Joined:
    Nov 5, 2014
    Posts:
    130
    My goal is to make a world that evolves as time passes.

    This is mostly centred around the various countries/groups that populate the world, in which the PC can take part or not.

    So basically, I am trying to decide if just flattening the standard Terrain is enough, and doing all the various caves as separate scenes, with an entrance as a model through the terrain.

    Using Voxels mostly means that I can have a more connected world, as well as the potential for some nice scenery things, like cliffs that goes over the terrain bellow, or caves with exterior views without having to set up some complicated things to make it seems like that with standard Terrain.

    My core idea is that the player is just an inhabitant of that world, and even if he has the ability to somewhat affect it, he is not the ruler of a gigantic nation (at least not right from the start), and the rest of the world will evolve.
    It's basically a RPG of sorts, in which the character(s) will try to make its place while levelling up his skills though using them.


    As you can probably tell, it's still in the design phase, and potentially a project a bit too big for myself alone, but if I manage to get the core things planned well enough, it will ease the development part.

    By the way, I placed it in the "design" forums at first, because it seemed like a discussion around the terrain type choice was more than just a "for my project alone" thing that could benefit others.


    EDIT: I see that I didn't answer on "how will the PC interact with the terrain".
    Basically, the PC will have a wide array of possible actions, most of them not affecting the terrain itself (cutting a tree, swinging a sword...), but I also want the PC to be able to build things (so you need to flatten the terrain), as well as mine.

    The mining part could in theory be handled in various ways, like "mines" scenes, or material deposits in form of rocks, but the voxel would allow to make actual mines and quarries on top of that, tracking actual mineral deposits instead of creating it for a scene.
     
    Last edited: Nov 5, 2014
  5. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,523
    What's the primary activity that the player does? (The player, not the PC.) For example, the activity could be watching the PC and NPCs live their lives, fast-forwarding through time to watch the world evolve. Or the player could have a more direct role, directly controlling the character to mine and build. Or fight and level up. Or converse with NPCs to convince them to build in one area versus another.

    In most games, the player can usually do a lot of different things, but there's always one primary activity.
     
  6. slay_mithos

    slay_mithos

    Joined:
    Nov 5, 2014
    Posts:
    130
    The player would primarily control the PC, there are certain actions that will make the time fast forward, but the game is not about watching a PC semi controlled by an AI (like the sims, for example).

    It is planned to have a sort of perma-death that would give the player control over one of its descendants, possibly years later.

    But still, the main "activity" would be to level up various skills in order to go down a route. The player might want to be a trader, fighter, farmer, craftsman, or dabble a bit in everything, depending on what is available to the PC at the time (through education, regional preferences, family, technological/magical advancements...).
     
  7. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,523
    So it sounds like it's about the player more than the world. What implications does this have for terrain? Is a dynamic terrain even relevant? (I don't have any answers; I'm just trying to help out as a sounding board for your ideas.)
     
  8. slay_mithos

    slay_mithos

    Joined:
    Nov 5, 2014
    Posts:
    130
    The terrain has to be at least a bit dynamic, but everything else can be done by other ways.

    But after talking about it, it feels like I should not use a Voxel terrain, because I don't want the player to be able to level a whole mountain over night, and to achieve the level of detail I would like with Voxel, I would need to set it at a high resolution, making a big impact on the performances.

    Well, now I figured it out, Voxel should only be used when you want a single character to be able to make big changes to the landscape in a short amount of time (or if you plan to only run it on a very powerful rig).

    Thanks a lot for the questions, it helped me figure it out.
     
    TonyLi likes this.