Terrain size for strategy game - I need a tip from experienced users

Greetings community!

I need a tip from experienced users who had experience with the matter I’m facing.

To understand me better, a quick introduction:
My first project in Unity included camera really close to ground, behind character at slight angle. Team had no problems with indoor scenes or look of terrain as all of the details were visible enough to meet our needs.

Meanwhile, in my free time, I started remaking one 2D game I wrote outside of Unity before. It is a strategy game which includes really large scale terrain made out of sets of islands and land, on which I have whole towns and detail scenery. That game will be 3D in Unity.

I started from terrain as that was most logical starting point for me. There is a problem I faced though.

Because of natural size of that terrain, I can’t really use realistic measures. Reason for that is that no matter what I try, I always end up with really bad rendering of details and scenery or I’m not satisfied with camera FoV.

What I need is a tip from experienced user. What would be appropriate terrain size for strategy game where camera would grab all the details nicely?

Look for example at Port Royale 3

Not exactly that large FoV is what I’m trying to achieve, but sadly I can’t even get to half of that and yet display the details unless I get my terrain size to be really low (100x100; 300x300 etc.). I often end up with terrain being deformed while I move camera. (It happens in compiled game as well, on max settings)

Now, I wouldn’t mind remaking my terrain in lower resolution, and then making models and scaling them down in order to get really nice rendering and FoV, but I really have no sense of scale for Terrain as I didn’t really work on strategy game in Unity before. I also don’t want to end up remaking whole terrain once I finish it, because of few units. (I tried some setups, at the moment terrain is 1000 by 1000 yet by my camera PoV i still see some deforms)

So all I need is a tip for that size.
Thanks and sorry if you see grammar mistakes, I’m not native :slight_smile:

Oh, I figured that Unity Answers is not the best place to ask as this can be argumentative and I don’t think this is technical question but rather preference, therefore I’m posting here, hoping that I didn’t miss the appropriate forum. Thanks!

It could be one of these…

Base Terrain

  • Pixel Error controls the amount of allowable errors in the display of Terrain Geometry. This is essentially a geometry LOD setting; the higher the value, the less dense terrain geometry will be.
  • Base Map Dist.: The distance that Terrain Textures will be displayed in high-resolution. After this distance, a low-resolution composited texture will be displayed.

My suggestion is one that I have used to great effect in a top-down strategy game of my own. Think of the game camera as an actual camera – adjust your FoV to work with your camera distance. I have found that I can get great top down “isometric” feel by moving the camera farther away from the subject and then “zooming in” by adjusting it to a narrow FoV. Doing this will require you to take Arowx’s advice above and tweak your terrain settings.

Another thing I’ve started doing was creating my heightmaps (RAW format) in L3DT and importing them into Unity. It makes it somewhat easier to create large/vast looking terrain features regardless of the Unity terrain scale.

Thank you both for replies.
I knew about the options and I already tweaked them to get the best result.

While reading other posts and sources I realized I can’t do much about details like grass disappearing if I want to make strategy game with large terrain.

Now with my 1000x1000 terrain I have couple of options :

  • remake terrain with smaller scale, where I can cover large area with camera and still see the details like grass
  • bake details and add some extra from unity to make realistic scenery
    Potentionally :
  • make mini-map that will act as a large scale of map while the camera covers smaller area

Thanks for advice GoCatGo, I do like the result, tho to use it I will need to either bake or scale down the terrain in order to catch the details.

Once again, thanks for replies, I’m sure this will be also useful to others as there’s not much information regarding best setups for certain scenarios.

Edit :
Oh, I reduced resolution to 500x500, I got better FoV with details still in it and it doesn’t look bad !

Good to hear.

On a side note you can stitch terrains together, it’s in the docs, this could ensure you have very high detailed terrains over a larger area.

But as a last ditch thing you could just create your own terrain as a mesh and import it, this way you will not have to deal with resolution/mesh level of detail issues. But you will be limited to meshes with less than about 65k tri’s, so you might have to divide your terrain up into sections.

Not exactly that large FoV is what I’m trying to achieve, but sadly I can’t even get to half of that and yet display the details unless I get my terrain size to be really low (100x100; 300x300 etc.).

You have tried to change the parameters? You can control the distance where the details are drawn.

I often end up with terrain being deformed while I move camera. (It happens in compiled game as well, on max settings)

How is that?

Besides that, the issue is not terrain size. Size of the terrain is irrelevant (as long as you adapt the camera parameters to handle this size, but this is just about changing the number there), size is only about scale. What matters is the alphamap resolution and the heightmap resolution.

Let me ask you a question on this point – do you mean, in Unity Terrain terms, Grass Details (the billboarding grass you can plant all around a terrain through the terrain editor), or do you mean a detailed looking grass texture with a normal map?

I’m happy to spread anything I know, but I’m not sure they are the “best” setups and should be balanced with other opinions.

Also, have you thought abandoning Unity’s one meter scale all together? By that I mean, looking at your screenshot in the first post, making that entire play area MUCH smaller, like 50x50. That would give you plenty of movement areas or spaces for your units or whatever – 2500 to be exact. Why have all of that extra granularity if you don’t need it?

That’s a 50 x 50 terrain with standard Unity terrain textures from the Asset Store. Kind of close to what you are after?