The first thing to keep in mind here changes the concept of open world.
Here you can define the areas that the player can visit ,in other words, you do not have to delimited the area with invisible walls, mountains, water, etc, in order to prevent the player go to the areas, that you are not interested.
open world
Obviously there will be the "open world" mode, but not as we know it; however you can add mountains, water, rocks, etc. to the scene, but they can not be navigable up to you, that only part of the geometry.
Why worry about some mountains that are at the bottom of the scene, if you have decided that they are only part of the geometry, the less things you should take the engine, the more you simplify the map better.
There will also be houses, parks, entities (barrels, boxes, lamps, etc), all represent barriers to prevent the player, as well as the obstacles mentioned above (water, rocks, etc.)
The engine could create an internal map, with all defined, navigable and non-navigable areas.
Note: In the video navigable areas are green, and non-navigable, are red color.
Rectangles and circles around the obstacle, represents the boundary of the navigable area.
And many, many other things that would be impossible to comment on a post.
This can be anything but easy; it has to create a pathfinding algorithm, sufficiently robust as to find the shortest path between point A and point B, taking into account all the obstacles they may have.
You can put all kinds of things on the scene, and all of them must be taken into account.
Imagine a scene in which you put a brick of milk, a health pack, ammo, and all within walking distance of each other.
Considering that law of physics that said, every body has a place in space,
aforementioned entities so do obviously, however although small, there is a gap between them; Well, this distance must be considered navigable?
or conversely, should group all the objects at a distance, say, small enough to be considered navigable, and therefore should be grouped and treated as a single entity, when classified as non-navigable and create a unique anchor for all of them.
At first glance it is clear, but the engine does not therefore non often overlooked anything or nothing for granted, the engine will take into account these short distances in their calculations, and if we are not told what to do about, the engine becomes crazy.
Well now that more or less, we have created our map of obstacles, the engine will work with this map internally.
Now comes the hard part.
find the shortest path between point A and point B
We already have point A and B (A = start point B = end point)
Many pathfinding algorithms are nodes-based.
I'm no expert, but I think having these nodes would help you find the right way; the way that uses fewer nodes will be the shortest.
In our case, the nodes would come represented by the vertex, and would have "good nodes" and "bad nodes", so we should not include the bad nodes when calculating the shorter or practicable way, of course without leaving thinking about them, because they represent areas that can not navigate, therefore its importance is vital.
And then there's this, applied to enclosed spaces, like navigate a home, building, industry, etc.
Maybe something we already have, could help, even if this waypoint should be much improved.
Wayoints to create horizontally and vertically, as well as rectangular and circular, to smooth a turn, could be just fine.
Although these are just my ideas, I'm also not taking into account many factors unknown to me, but certainly there. Above all the code that you add, you must work in complete harmony with the rest of code, and this is very difficult to achieve.
In addition, the development team but wonderful, is very small, and they have many fronts, many things that work. When you want to add one thing, you have to work on others as well, to make the first run; therefore it is impossible to work exclusively on one thing, from start to finish.
So thanks to the development team for all the effort and dedication.
Sorry for the longest post, and thanks for watch the video.
3com
Laptop: Lenovo - Intel(R) Celeron(R) CPU 1005M @ 1.90GHz
OS: Windows 10 (64) - Ram: 4 gb - Hd: 283 gb - Video card: Intel(R) HD Graphics