Need advice concerning the creation of open world game in Unity 3D

I just wanted to ask for advice those being an expert in Unity 3d and overall in game industry about how it is possible to create an open-world game by means of Unity 3D, that is, I already tried to combine several tiles of terrains, 4 to be exact, and their respective size is 500x500. However, once I started to add the fifth terrain to those terrains, Unity stopped working. Moreover, another problem that I faced was with light mapping in Unity, that is, the more terrain I add to the scene the more it is difficult to bake the light mapping. The question is if I am doing correctly by adding terrains to each other and how open-world games are actually created. Yes, I heard of chunk loading but is it possible to code it on my own without using ready plugins. Lastly, Is it possible to combine tiles of terrains just manually without using any tools like Terrain Slicing kit or Gaia please I really need your help Thank you for your attention))).

Creating open world games is one of the most difficult tasks, especially in Unity, because it’s a general purpose engine, not specifically designed for open world games. This means, you can’t expect it to work when you put together a couple of terrain assets. There are a lot of problems to solve, like, as you said, level streaming. This might also be much more complex than you currently think it is. You wouldn’t be done once you load and unload chunks of terrain. You also need to manage LODs, track state of things without breaking when things get unloaded, etc.

All in all, making an open world game is a big endeavour for a team of at least 10-15 people (depending on what your definition is, Witcher 3 is open world, but they have hundreds of people), who are willing to work on it for the next 2-3 years full-time. See Campo Santo’s talk about how they created the world of Firewatch. This game wouldn’t even be considered open world by most gamers, but it still requires all of these advanced techniques to make it possible.

So instead of recommending any specific techniques, I recommend scaling down your project to something that can actually be completed. Focus on a few simple aspects. If this means, you want to make a game with a really big world, start by researching “level streaming” or “chunk loading” and look up the things mentioned in the talk about Firewatch. Still, applying these techniques requires programming and Unity Editor fundamentals, you should already be comfortable making a 2D platformer, for example.