- Home /
Too subjective and argumentative
Unity Terrains, Open World and Detail
Basically, I want to create an open world game. I want the detail of the game to be great. I have seen many open world maps on Youtube from Unity, and they just look TERRIBLE, I mean, it hurts to look at how generic everything looks. I want detail, but I want the game to work well. I understand that a huge world needs to be divided in many different terrains which is fine.
I want the general feel of the game to be something like this http://forum.unity3d.com/attachment.php?attachmentid=76214&d=1385429059
I understand it will take a lot of work, and of course, I don't expect it to be THAT intense, however you get the point. So, I've searched around and can only find tutorials on how to make the terrains which I don't really want. Onto my questions. Should I use a terrain generator or Unity's terrain generator or a mesh (haven't figured out if terrain generators make meshes)? Also, I want the trees to be better placed, do I place them one by one, because using the Unity paintbrush isn't an option (mind you, I want places to look unique)?
So basically, I want the world to be a large scene, not something that resembles a pregenerated terrain, but I want it to work fast. It's important that I tell you that, the view distance won't be too large (I only want to have a far away mountain range visible at all times. I know it will take along time, but I want it to look great. So what is your advice? I am new to this (haven't made a terrain yet actually, only read a lot about it) so please don't assume I will know everything you talk about, point me towards the right direction if you can.
And finally, I heard of some collider limit (65,000 - although this already is too intense). Is this limit per terrain section or per world? I assume you could run a script that will only spawn a box of terrains around you (so the transition of scenes is smooth) and nothing more, and when you leave your current terrain, the one's from one far side disappear (wouldn't this make the 65,000 limit obsolete?)
Thanks in advance!
P.S. One more question, I don't want the grass to use the billboard feature. But I don't want to place the grass one by one. So is it possible to use a world generator to make the terrain and then, use unity to place grass while placing trees manually and adding collision?
Your post is full of contradictions and is not asking a single specific technical question; open-ended discussion & designs post should be started on Unity Forums; there are already hundreds of posts on Open Words/Design/Terrain, please search UA/Google;
Answer by deltamish · Apr 06, 2014 at 01:47 PM
Hi, First of that's one huge question :)
Should I use a external terrain generator or Unity's terrain generator
Unity's Terrain Generator is already heavily optimized for faster gameplay and is really advanced . So if i were you i would stick on to Unity's terrain generator .You could create a mesh in external 3d app but it would be hectic to optimize it nad color it.
want the trees to be better placed, do I place them one by one, because using the Unity paintbrush isn't an option*
heard of some collider limit (65,000 - although this already is too intense). Is this limit per terrain section or per world?
you can either use a differnt styled brush or even make a custom brush.OR you could write your own code that places trees randomly and alters it's height within an radius and you can make it to place on other 3D objects as well.(This is the solution i use to my game But really takes a lot of programming)
Yes Absolutely is it gonna be easy NO .you need to create custom grid and caluculate each position and you need it to be pre cachedCan i create terrains dynamically or can i instance it at rutimes as tiny chunks ?
heard of some collider limit (65,000 - although this already is too intense). Is this limit per terrain section or per world?
Its a limit to the world and not terrain
So is it possible to use a world generator to make the terrain and then, use unity to place grass while placing trees manually and adding collision?
Yes that possible i guess cause i havent used world generator But if it creates terrain as seprate gameobject that does not have Terrain script attached then you cant place tres on it
First of all, thank you for clearing all that up. Now your answer helped me understand these things quite well, now my next question is as follows.
After finding out about culling, will I be able to make say, 9-13 terrains, all manually edited (make small towns, arrange forests the way I want, have objects exactly where I want them), by keeping the culling distance relatively low and the collider limit in check, to ultimately have a normal FPS, and not have to script terrains to disappear and whatever. Is this possible? Also the terrains would each be at their limit 4k x 4k or whatever it is.
I sort of understand that with the culling, terrains aren't rendered either? or am I wrong?
Also, I would stitch the terrains seamlessly to make transitions smooth.
Also, what is the difference between painting a tree on rather than importing a game object? I want to know performance-wise.
first of by culling do you mean occulsion culling if yes then you can but you shouldnt place 9 to 13 terrains cause it may take a hell lot of time to compute it and culling does render the terrain but does not split it into many sub objects and then cull them accordingly(it used to in unity 4.5.x series)
painting the trees means just creating an instance of the tree inside the Terrain component.The script effectively culls away the trees which are at far distances and at moderate distances single planes are used ins$$anonymous$$d of trees but if you create an instance of the object then you should write a custom script that does all of this which takes a bit of time.But since it already exists why not use that itself
Follow this Question
Related Questions
FPS, character arm movement 0 Answers
Open World In Unity 0 Answers
Drawing indexed vertices from compute shader 1 Answer