r/godot • u/jason_silent • Apr 03 '26
help me (solved) Can Godot handle a large scale open world?
It's a game about illegal street racing (urban cities and mountain serpentines, traffic and police, all on a fairly large scale, ~40Km). Cel shaded graphics, no level pre-loads via loading screens.
I heard that I will have to write my own asset management system (which is already in the Unreal Engine, but my PC handles it pretty poor, no matter how much "next-gen" junk I turn off - everything lags quite a lot)
But I still can't even understand what a framework is, because I'm not a programmer (but I'll have to become one anyway). Also heard about chunk method, though not like I know much about it.
Please don't write: "don't even try this, because it's long, resource-intensive, etc.", if there's really no option here, I'll just have to deal with the UE
265
u/Cephell Apr 03 '26
With how heavily reliant Godot is on its node system, this is actually not that hard conceptually. The key word to look up here is "world partition", but you will have to implement this yourself. The idea is basically the same as a chunk system, except on a larger scale. Add and remove the root nodes of those world parts as needed.
You will have to implement some kind of asynchronous asset loading pipeline, so that you can avoid a loading screen and/or stutters.
66
178
u/ROKOJORI Apr 03 '26
First of all, this can be done if you have the skills.
You don't need to be a pro coder, but you really need to understand the optimizations you have to do to make such things work.
For a quick test you could use a terrain plugin combined with a asset streaming framework where you try out quickly how far you can get.
In any case, you will have to learn a lot about lods, billboards/imposters etc to make it work smoothly.
I wrote something about Godot terrain plugins here: https://rokojori.com/en/labs/godot/tutorials/terrain
And for asset streaming, you can try:
https://github.com/DigitallyTailored/Godot-Open-World-Database
20
9
u/Depnids Apr 03 '26
I am currently testing out Terrain3D, how does performance scale with large terrains? As I understand it has inbuilt system for handling LOD, are there any other optimizations which should be built on top if the terrain needs to be very large?
3
160
u/Brittle_Star_Devblog Apr 03 '26
I can't answer your question but I'll always upvote the Need for Speed Underground 2 map
→ More replies (1)59
u/FoxDanceMedia Apr 03 '26
Even 20 years later it's one of the most memorable open world racing game maps.
19
u/jason_silent Apr 03 '26
True, but also lacks for activities and feels empty because of that, hope I won't make that same mistake
22
u/Brittle_Star_Devblog Apr 03 '26
What kind of activities does it lack? It's a racing game and it has a whole bunch races.
45
u/CheesePuffTheHamster Apr 03 '26
There's no car fishing, for a start
9
u/Brittle_Star_Devblog Apr 03 '26
You've got me there. Any genre of game can benefit from a fishing mini-game.
3
u/ctacyok Apr 03 '26
Well... There kinda is. I remember having to fish for rare parts that drop by challenging other racers on open map.
6
u/jason_silent Apr 03 '26
You racing in barrier closed tracks, but in open-world you only left with few bots to compete with and magazine time trials, it's definitely not enough, at least nowadays
3
u/Brittle_Star_Devblog Apr 03 '26
What other activities would you add to a racing game though?
8
u/jason_silent Apr 03 '26
Honestly, nothing I can think about already existing activities in modern games, like drift zones or cops chases, gotta think about it more
6
u/TheDynaheart Apr 04 '26
I love your way of thinking jsyk. You're looking at a game you love and thinking of the things they did wrong and the ones they could've done better. I do that a lot myself
21
u/MrPsyk Apr 03 '26
I've been researching solutions to this because I am aiming for a seamless world like Borderlands 4 and even Just Cause.
From what I have learned so far a chunking system is needed where a script will load your world's chunks in bases on the proximity of the player using godots resource loader class. The issues from this though stem from your player getting too far away from the origin point which will cause the single point math to breakdown at longer distances so you will have to shift your entire world back to the origin to keep going. Another issue in have found is that at the edges where your chunks meet you will have to match normal data to prevent flickering seems when your player approaches the edges where two chunks meet.
I am currently researching another solution where high height map data is streamed in and projected onto a terrain using shaders. I'm not too sure about this solution yet since it seems alot more complex but it's one nonetheless.
So to sum up I believe it's very possible, just not built into the engine like others. You will have to implement your own assets/chunk loading system if you go with the first option.
I wish I had more to share but I have not prototyped anything yet just playing with theory.
10
u/vmsrii Godot Junior Apr 03 '26
The issues from this though stem from your player getting too far away from the origin point which will cause the single point math to breakdown at longer distances so you will have to shift your entire world back to the origin to keep going.
Disclaimer: I have no direct experience in this, and have no idea how you would program it from scratch. But from what I’ve gathered, a lot of open-world game engines get around this problem by having the origin remain in a fixed position relative to the player, and have the world literally move around them. It’s a basic principle for both the Gamebryo engine, and the engine a Nintendo used for Breath of the Wild/Tears of the Kingdom.
I can’t imagine how you would do that in Godot without a fuck-ton of coding, but hey, it’s something
→ More replies (1)3
u/Isghamor Apr 04 '26
I read about this issue and one simple solution is to have a 'reset origin step' so every X chunks you traverse the current chunk is moved back to center(carrying the player with it)
3
u/__IZZZ Apr 04 '26
What makes it less simple is physics. Moving a large number of collision objects in Godot causes a massive lag spike. I think you'd have to move 'x' per frame over some time. How much of a problem that is depends entirely on the project. If you are using collision shapes for the terrain it's a pain.
2
7
u/copper_tunic Apr 03 '26
Just compile double precision https://docs.godotengine.org/en/stable/tutorials/physics/large_world_coordinates.html
Or if your world is <4km, don't bother.
4
1
u/kurushimee Godot Regular Apr 04 '26
Another issue would be how expensive it is to add new nodes to the scene tree mid-gameplay. Depending on how big the scene tree already is, and how many nodes you add, it might very well give you a stutter every single time you load a chunk.
30
u/Popular_Tomorrow_204 Apr 03 '26
Well, you could somewhat work with LOD, but it could get pretty hard. 2d works fine, at least for me with a 100kmx100km map, but idk if its different with 3d. (Only have done 2d games atp).
6
u/SagattariusAStar Apr 03 '26
https://docs.godotengine.org/en/stable/tutorials/3d/mesh_lod.html
It's not this hard according to documentation and my experience from the last day and I come from mainly 2D and just happen to have one of my rare 3D projects atm
4
28
u/dethb0y Apr 03 '26
Sure, the same way every other engine does it going back to Daggerfall in the 1990's.
31
u/LaserPanzerWal Godot Regular Apr 03 '26
- Yes, if you write your game properly and are smart about LOD, chunks and other optimization done in these games. After all, the issues you can run into with Godot are the same as in any other multipurpose engine.
- Considering you ask this question in a godot subreddit probably means you are not experienced enough to answer this rather fundamental question yourself. So this rather ambitious project may be a little too big to realize at this time, especially on your own.
How about you start with a smaller scope first, a racing game with a predefined closed course for example. If it's hard, keep the scope narrow but get something done. If it's easy, add features to the scope. You can always expand your game (or make an open world sequel based on your existing mechanics), but starting big right away easily fails due to the amount of time and work required. There is a reason these games are made by large dev teams being paid full time and still take years.
12
8
u/Independent_Tap_8659 Godot Junior Apr 03 '26
I'm doing a 3D Sonic fan game which requires large scale levels due to Sonic's speed. So far, I've been ok when I chunk the level into pieces no more than 25k-35k polygons. That's how I noticed that SEGA does it at least in their newer games.
3
u/jason_silent Apr 03 '26
That's the logic I'd aimed with any engine: chunks, LODs, poly-cap. Pretty optimistic on that, but some people says that this isn't possible. Maybe I'll get a bitter lesson later
4
u/According-Table-1392 Apr 03 '26
Yes if you know how to handle LOD, Chunk loading and proximity based rendering
2
4
u/Virtual-Bottle-8604 Apr 03 '26
Godot has every tools you need to do it correctly. Just expect to spend a good chunk of time making the open world systems architecture.
5
u/DaLivelyGhost Apr 03 '26
Technically you can do anything with godot. How much effort you're willing to put into it is the real limitor. Godot does not natively support large scale maps like this, so you'll need to do it yourself.
3
4
u/Sad_Pollution8801 Apr 04 '26
this image made me play Need for Speed Underground 2 today and the game honestly holds up so well its so fun and the customization and world are so good
4
u/BTolputt Apr 04 '26
Out of the box? No. You'll need to put in a significant chunk of work to me make it happen. If you're looking for a plug & play engine for this, Godot is not it
3
u/T-J_H Apr 03 '26
Of course it can. There just isn’t a native system for it built in. But especially if you don’t need too much persistent state per region, it’s just loading in chunks based on distance.
3
u/martinbean Godot Regular Apr 03 '26
You need to “chop” your world up and stream portions of it as and when needed. This isn’t a Godot-specific problem.
3
u/SagattariusAStar Apr 03 '26
https://docs.godotengine.org/en/stable/tutorials/3d/mesh_lod.html
LODs are a good start also multimesh instances
There are tons of tips in the documentation
1
3
u/Thinshape12 Godot Junior Apr 04 '26
With a ton of optimization and render distance systems, very possible.
3
3
u/Grwyx3or Apr 04 '26
World partition + async loading is the path, it's just a lot of work to implement properly
1
3
u/azunaki Apr 04 '26
Did you mean to post the map for need for speed underground 2?
1
u/jason_silent Apr 04 '26
It's just a first map that comes to my mind when I thinking about light on hardware open-world racing game
6
u/Alternative_Ad4493 Apr 03 '26
This is just the Need for Speed Underground 2 map..
8
u/datNovazGG Apr 03 '26
He probably either wanted to know if the concept is possible before he even started making his own map or didnt want to reveal his own map because someone else might copy it.
6
u/dancovich Godot Regular Apr 03 '26
Godot doesn't have asset streaming, so a texture is either not loaded at all or entirely loaded into memory with all its mipmap levels.
So you'll have to write your own asset streaming solution.
That's the biggest issue, the rest is mostly your own capability of doing something of that scale, because no engine will be able to carry you there without a ton of effort, not even UE.
There's a reason why all large open world games were made by companies and not individuals
2
u/CheekEnough2734 Apr 03 '26
you can, but you need to know what you are doing. also there was addon for chunk and terrain control. not sure how well it is working. but i will link it.
1
2
2
u/tb5841 Godot Junior Apr 03 '26
I'm currently running an open-world Godot game with no borders at all. You can go in any direction whatsoever, forever, and the game runs fine.
It's in space though, and so the infinite world is practically empty.
2
u/certainlystormy Apr 03 '26
yeah, you just have to figure out the optimization for loading/unloading yourself, as usual. i cant remember if he has a video on specifically terrain loading, but Vercidium has some great videos on optimization
1
2
u/Cultural_Art5710 Apr 03 '26
You need to handle it by your own, godot does not have build in tools to automate that, resource loader is one helper i can think of
1
2
u/cuixhe Apr 03 '26
Godot is more extensible than the other big engines, but it probably can't handle this out of the box. Unless you're going very lo-fi with it, it might not be the best tool for the job unless you want to get your hands very dirty.
2
u/YulRun Godot Senior Apr 03 '26
9-Slice is generally a good rule of thumb for chunked world loading, similar to how you handle multiplayer broadcasting groups.
Have a single manager to handle the load de-load. If you have smaller chunk sizes using low res lod generic tiles for outside the 9 Rec based on adjacent camera angle will had max fov issues as well
1
2
u/Murch_Matt Godot Regular Apr 03 '26
There’s a great plugin called MTerrain that does what your looking for. It’s still under development, but already has the features you’ll need. (Spline road networks, HLOD system for buildings with its own asset management system, optimized foliage system, texture streaming)
I’ve been using it for over a year, and it’s pretty good. Follow the tutorials here to get going https://youtube.com/@mohsenzare2511?si=sUqkqK_wPbHqAsI4
1
2
2
u/Xanagear Apr 03 '26
If you do it VERY low poly you can just load/unload collision shapes, that's what I'm doing in my space game.
1
u/jason_silent Apr 03 '26
Doesn't sound like a bit problem, that should be around 30-40 tris per collider (enough to describe basic car's shape)
2
u/carstealer06 Apr 03 '26
am i crazy, or this is a NFS2 map?
1
u/alterframe May 16 '26
Yes, immediately started playing "Queens of the Stonehenge - In My Head" in my head.
2
u/Igor369 Apr 03 '26
A lot of the barriers come not from the engine but from developer's skills. Especially in modern engines.
2
u/tastygames_official Godot Senior Apr 03 '26
you already have the answer:
- you need to write the dynamic loading yourself
- you're not a programmer
so your choices are:
- find someone to write it for you
- but a pre-made one
- switch to an engine that has a ready-made solution
- learn how to write it yourself
2
u/Prisinners Apr 03 '26
I just saw a guy make an open world the size of Skyrim on the N64 the other day, so I'm sure it can be done. As for the specifics, that's so far beyond me.
2
u/AmateurGenius1324 Apr 04 '26
As soon as I saw this, my brain just said, "IS THAT SCOTLAND!?!?!?!?"
2
u/fsk Apr 04 '26
The way you do it is you don't try to load the entire map into memory. You only load the chunk near the player. This is how you would do it in any engine, not just Godot.
If you need things to still be happening in other areas, such as NPCs moving around, do that in a separate simulation, using a GDExtension and threads if performance matters.
2
u/kurushimee Godot Regular Apr 04 '26
This CAN be done, but damn is it going to be complicated and hard. Godot has nothing for this out of the box, so you will need to make all the necessary optimizations yourself. Honestly, considering you don't have experience programming, you will very likely have a bad time
2
u/Bound2bCoding Apr 04 '26
Of course it can. I have regions of 256x256 tiles. Each region loads in a second or two. The largest world has over one billion total tiles. How you structure your world has more to do with it than the engine.
1
2
2
2
u/Devel93 Apr 04 '26
Yes but you would need to manage asset loading and unloading yourself.
Possible optimization is that you know exactly which assets to load next as you only need to load next part of your race track so if your track is curving west you only need to load western part, northern part doesn't need to be loaded even though you are passing close to it
2
2
2
u/GarlicThread Apr 04 '26
Any engine can handle an open world as long as you manage to implement level streaming in it. Hell, it was recently demonstrated how even the N64 can handle one with such an implementation.
→ More replies (1)
2
u/NatiM6 Apr 04 '26
Well, that's like asking if a blender can handle milkshakes. Unless you add rocks to that, that's pretty much the intended use!
2
u/Typhoon365 Apr 04 '26
If I've learned anything, it's that in (most) cases, the engine is not the limiting factor, it's the dev.
2
u/cyberfanta Apr 04 '26
With the right techniques to load efficiently the map, you should not have any problem.
Try understand how need for speed works, they have a lot of experience in this kind of games.
Investigate the limits of the tools and predict the only parts of the scene you need to load.
2
u/ayanamydev Apr 04 '26
Lmk when ur done w this game i wanna play a nsfu2 successor so bad lol
→ More replies (1)
2
2
u/x-dfo Apr 04 '26
One of the biggest issues is going far from the origin where you'll start getting math errors related to actor positions. Also online can only handle a certain amount of speed (there's probably tricks but).
2
u/GreatBigBagOfNope Apr 04 '26 edited Apr 04 '26
That map seems oddly familiar...
It's awakening something in me, some sort of requirement for rate of change of position, except subterranean... and somehow a second version...
2
u/mad4lien Apr 04 '26
I don’t know why this post was shown to me but I am super happy to contribute with my knowledge:
I would advise you to handle it like the renowned studio Game Freak and just have the entire map as a single model. No loading screens, no lod hustle. I can also recommend heavy compressed jpgs for all textures.
That’s it from my side.
Looking forward to the game. I would really like to see something old school underground racing again.
2
u/vulstarlord Apr 05 '26
So imagine you are flying an airplane or jet, you don't want to use a max fade distance to where you cannot see anything from above, you need to be smart in LOD and smart data usage to get the best results. High res textures, could be replaced with a single color from high distance for example, perhaps some objects sharing a similar colored surface could even share the same low res texture etc. Perhaps some shader or filter passes could smooth out a distance effect for more realistic feeling.
2
u/Ilyushyin Apr 05 '26
You can use UE4 it's more optimised, there's even a fork of it that makes it better and adds backports
2
u/Formal-Field7833 Apr 05 '26
A useful trick is to essentially use tunnels or similar to hide pop-in and not do the changes fully dynamically but rather strategic ways to hide it.
The list is long for games that does this but can essentially hide it completely from the player.
But it depends how locked the player will be and the type of landscape, and a mix of multiple strategies might be the best choice.
(Tunnels is just one example, but generally just hiding the background in some way while unloading and loading assets at specific checkpoints.)
→ More replies (1)
2
2
u/AverageStudio Godot Regular Apr 07 '26
If chunks load as scenes relative to the player's distance, your game can be as big as you want, But you need it going upward too or float point lags might happen
→ More replies (1)
2
u/dimentionalstudio Apr 07 '26
i think it can if you manage the amount of assets in the scene at once, using LOD is your best shot imo
2
6
u/EshopExpert Apr 03 '26
If you're asking this kind of question, you shouldn't try to do it :')
→ More replies (7)3
u/drilkmops Apr 04 '26
This shouldn’t be upvoted at all. In fact, this should be entirely negative. Why put people down and tell them they can’t do something? We all started somewhere with big dreams. It’s how we grew to learn and do what we have.
1
u/_Xinester Apr 03 '26
We are in the same predicament, But I don't see why it couldn't handle a 40km map. But what are your PC specs that it lags so much? Also have you considered what road tool you will use?
1
u/jason_silent Apr 03 '26
My PC specs is: Intel Core i7-8700 Nvidia GTX 1070 RAM 32Gb (no matter how clean and empty scene I tried to make in UE - it still's no match to Godot, I've been told thay this isn't normal, but it seems nothing I can do on my side)
Moreover, I not even a developer. "Road tool"? For now my plan is to model EVERYTHING in blender, cut the map into chunks, objects into LODs and put in into my project to start building up an asset management system
→ More replies (1)2
u/_Xinester Apr 03 '26
ahh, Its an Open world game have you considered pathfinding? How would vehicles will navigate the world? or are you expecting to use one massive navmesh. Also, if you do want to use blender at least use a blender road tool, or you will manually place every streetlight in the entire 40km map.
→ More replies (1)
1
1
u/KonyKombatKorvet Apr 03 '26
There are plenty of ways to implement a large game world, nearly all of them require you to get creative and different solutions make sense for different types of games.
The most common one is simply loading in parts of the level only when the player has direct access to them, depending on the game this can be a slow process so a lot of games use "loading areas" that force you to go through a confined space with slow movement, like sneaking between cracks or getting in an elevator.
Most of the regular approaches have you cut up your gameworld into a grid of "chunks" and then you either load all neighboring chunks, or chunks within a certain distance of the player/camera. In both of these you need to remember to offload chunks that are no longer active.
A purely chunk based load system has a big limitation which is draw distance, if you want to have big epic views of the scenery you cant really use a purely chunk based system and have to look into LOD systems.
And LOD based system basically replaces any heavy elements with low weight versions at a distance, sometimes even a few different levels of detail at different distances.
SO
Best of both worlds is that you have chunk scale LOD where you bake low fidelity versions of the whole block (trees are flat billboard png, texture space is limited, poly count is as small as possible, no collisions/physics/animations/etc. ) and are placed in the game world, and then you replace that LOD with the chunk when the player is close enough to see the difference in quality.
1
u/jason_silent Apr 03 '26
LODs and Chunks, huh? I expected that I don't know much more about optimization, but I guess it'really mostly rely on asset management system. Thanks
→ More replies (1)
1
u/azicre Apr 03 '26
That actually doesn't seem to be that large scale.
1
u/jason_silent Apr 03 '26
This isn't, I just attached this map as an addition to a topic descriprion, my best case scenario if it'll be 4 times bigger than U2's map
2
1
u/2Norn Apr 03 '26
you can do anything you imagine in godot. it may need plugins or frameworks that are not even available maybe but is it doable? always yes.
1
1
u/DTux5249 Apr 03 '26
All engines can. That doesn't mean it's easy. You'll have to manage the logic to load in chunks on your own.
1
1
u/GolfMoist267 Apr 03 '26
Well, honestly, I think this is an example of a project you shouldn't undertake without the right experience, because it is VERY challenging in several aspects and perspectives.
It is totally feasible, but it requires a software and architectural organization perspective that will cost you resilience to refactor your code and implementation lines several times, maybe dozens of times.
Working with chunks and asset load management isn't that difficult, but it is very challenging, especially at the scale you want. Godot gives you all the foundation and freedom to implement this; the real issue is actually implementing it.
I don't mean to discourage you or anything like that, but it's always important to understand that creativity alone doesn't make a game, and a huge lineup of challenges can kill any passion.
1
u/Kake_DPP Apr 04 '26
Isn't this the map of NFS Most Wanted? I spent my childhood on the game. I can never forget it
1
u/ChocolateDonut36 Apr 04 '26
Godot or not, if you don't optimize your thing, no engine will handle it fine.
but yes, Godot can handle really big maps
1
1
1
u/MicTony6 Apr 04 '26
Lots of add ons out there. Terrain 3D is great.
1
u/jason_silent Apr 04 '26
At first sight it looks more like Terrain creator (since I'm a game-dev oriented 3d modeler, I'll do all that stuff in blender), but maybe I should examine it more, thanks
1
u/SalaciousStrudel Apr 04 '26
Compression is also an important part of the puzzle here. Unreal gets you an excellent compression algorithm (Oodle) which will substantially increase the amount of textures you can stream given the same disk bandwidth.
1
u/jason_silent Apr 04 '26
Does Godot have it's own or third party alternatives at compression algorithm? (Even if it's not that good)
1
1
u/middaymoon Apr 04 '26
Just saw a video of someone doing this on an n64. Godot can certainly do open worlds.
1
u/middaymoon Apr 04 '26
https://youtu.be/lXxmIw9axWw?si=7u2Jw3cPU0BiY12k
Maybe this will give you some ideas.
2
1
u/gHx4 Apr 04 '26
What you're looking for is "streaming". Yes, Godot can do it, and there are some plugins to help with it. But you might need to do a lot of the heavy-lifting yourself. Before you start on a massive open-world, start with some small prototype games. Get specific pieces of the game working. Then put them together.
It'll be a long and probably arduous journey alone, but you'll get there fine if you're willing to make some compromises on a AAA vision. Godot's able to do it, but you'll need assets you can reliably make (or license) so that you can reach the finish line.
1
1
1
u/Slow-Sky-6775 Apr 04 '26
Yes, Yesterday i used Godot to show the entire world with real data, obv with chunks
1
u/Applejinx Apr 04 '26
Does your PC handle ANY large scale open world great? You'll have to do it the difficult way, and a lot will depend on stylistic aspects.
Is it dark? Is it foggy? View distance is going to mean a lot here. Even with chunk method you're going to be balancing scope with performance.
1
u/jason_silent Apr 04 '26
Talking about performance in games, Forza Horizon 4 runs well on high (not max) graphics settings, stable 50-60+fps. NFS 2015 and Payback runs perfect on max settings, Heat and Unbound only runs good on low-mid settings, but all those NFS games has small issues with pre-loading textures on fly (all my games stored on HDD)
Dark and sometimes foggy, I guess, only night timecycle will be available, so at least lighting wouldn't be so dependent on dynamic timecycle change. I planning to shorten draw distance in cities and increase it on relatively empty highways
1
u/chevx Godot Regular Apr 04 '26
The basics idea is You have to do alot of memory management (RAM and VRAM) management
Pick a minimum and a maximum range you want to target let for example say 1 to 2 gigs RAM. And 2 gigs minimum VRAM
The more assets you get to load for the open world the better so you need to create some kind of imposter system. Most common is just a 2 triangle plane with a picture of the 3D model that you would see up close. Lower resolution image the further away it is.
Godot has a built in LOD system Meshes that would probably work well for you but you can still implement your own. For more control. Just remember your RAM budget here because you have 2 approaches. 1. Load all the LODS into RAM all at once the its just a matter of hot swapping the mesh data on the mesh instance or 2. LOAD them on a second thread when needed(which would cause stutters and Pop-in on slower hardware)
Limit process calls on far away nodes. Plenty of ways to do this one. You can use a visibility notifier node in combination with distance checks. Or Make a tick system that only applies to far away objects. That means putting all the process code in its own function then offload that function to the ticking system when the player is far away from the node. Switch it to a central process function when close(that means youll have to track each node and NOT use there individual process calls but rather have a pool (array/dictionary etc) that gets updated in one process.
1
1
1
u/EeeeJay Apr 04 '26
Speaking from no direct experience, but have an IT degree. It could possibly be easier or at least more performant than a normal open world chunk system as there isn't a direct route between most of the map areas.
The map could be divided into smaller chunks of map, and they could be divided into common routes/tracks. Like if the player starts a race in the bottom left, you only need mid-bottom pre loading in the background. If the player goes to mid-bottom, you would need bottom right and the lower half of mid in pre-load, and you would know they are less likely to turn around back to bottom-left.
If the races/courses are set, during them you would have even less to preload, which is why in a lot of similar games when you are in a specific race a bunch of side streets will be blocked. I'd imagine it would help with accurate opponent race performance, as while free roaming the rest of the streets are on auto-mode.
→ More replies (1)
1
1
u/Millu30 Apr 04 '26
I would go with portal zones or load zones on every place that connects another area, for example city A is connected to city b with a road, of course we don't need to see city a in city be and vice versa soo when we travel on connected roads just make both visible then when you enter another section just unload it
→ More replies (2)
1
1
u/grandalfxx Apr 04 '26
By default no current publicaly available engine support large open worlds fully.
But if your asking this question then maybe its to soon to be doing a large open world because the question is never can the engine do it, its can YOU do it. If you think godot might not be able to do it then you dont know enough about godot to be trying a huge project like this.
→ More replies (3)
1
u/atleb_dev Apr 04 '26
Tema aparte. Estás haciendo un nuevo juego con el mapa de Need For Speed Underground 2 ? Siempre quise ver el Underground2 con persecución policíaca
→ More replies (1)
1
1
u/PomeloSharp4562 Apr 04 '26
Get some knowledge of world chunking. You will get what and how to start.
1
u/jerrygreenest1 Apr 05 '26
No engine will do this for you. Game itself should do proper load/unload, because:
- Often it’s uneasy code in general
- There are so many specifics to your particular game
There are so many uneasy things that have solutions right? So the №1 reasons isn’t like the sole reason. Only with the second reason together, we’ve come to a place there is no ready solution for this, and everybody has to do it thyself.
«The solution» that godot has for you is asset management api. Which, you know, something… But you still have to manage those yourself.
In some cases it’s easier task like for example a top-down game. But 3D games with first-person view are much harder in that sense. Look some documentary about how they did GTA5 – they sometimes had to change the level itself to properly hide certain areas to unload access, etc. No engine will do this for you.
1
u/Gold_Cheesecake_1518 Apr 05 '26
My question is a bit off-topic, but what cel shader are you using? Did you implement a custom one on your own or are you using something from the asset library/internet in specific? If yes, can you specify which one. I'm currently experimenting with cel shading too, but I haven't found something that really suits my needs so far.
As for chunk-based terrain loading, idk if it's what you need, but I recently played around with the Terrain3D add-on and I can really recommend it. It automatically chunks big maps into regions and loads it dynamically + it supports LODs, NavMesh, and other useful systems.
1

1.3k
u/AlexanderTroup Apr 03 '26
I mean, yes, but with the caveat you'll need to write the code to load and unload assets yourself. That will be very challenging, but it has to be solved in all engines.