Serious Sam 4 will generate its enormous map on the GPU

M76

[H]F Junkie
Joined
Jun 12, 2012
Messages
14,030
As revealed by Alen Ladavac Croteam / Serious Sam 4 technology lead at the GCD 2019, Serious Sam 4: Planet Badass will use General Purpose GPU computing to generate its 128x128 km map down to 1.5cm detail. They turned to procedural methods, because that amount of data would take an insane amount of storage. In the vicinity of 100TB.

Due to the sheer size of the planned map Croteam knew they needed some type of procedural solution from the start. So instead of storing the actual map and scenery objects like rocks and vegetation as finished models, they devised a method where they only store templates that can be used to generate the actual models from scratch on the target system. This means that they could fit the entire 16384 km2 map into about 200MB of storage.

It will be interesting to see what amount of VRAM and GPU will the game require for this, and will it reduce terrain detail if the available video memory is less than the recommended amount?



Serious Sam 4: Planet Badass is rumored to be released sometime in 2019, but the exact date is not known yet.
 
can't wait as well. open world map survival will be redonkulous. with a map this size though hope you can do like 64 player last man standing players vs mobs or some crazy shit.
 
FE and SE was great. but SS@ was to much of a stand-in-this-little-shooting-tent-until-the-mobs-are-killed-and-move-on-to-the-next-shooting-tent. tje explorative part was totally lacking
 
I wonder how multi-player will work. Will it have logic to stitch the active parts of the map together? Will each player be looking at their own map? Will it offload to the fastest players system to Gen the map? What will storage use look like?
 
non-gameplay trailers for a game are just lame, and 20 years outdated. Why can't they just stop?
 
I like Serious Sam, but I am unsure of such a huge map. I don't want a shit ton of open space between interesting ones... every time a developer brags about world size I worry a little.
 
Last edited:
I wonder how multi-player will work. Will it have logic to stitch the active parts of the map together? Will each player be looking at their own map? Will it offload to the fastest players system to Gen the map? What will storage use look like?

Why are you worried about the map? It should be no different than any other ma in any other game
 
I love the 16 player coop of Serious sam. So long as they keep that I am in. I wonder if they will use nvidia special cores to accelerate anything? I hope it will be in VR, and use more than one gpu like the ones before it too.
 
Why are you worried about the map? It should be no different than any other ma in any other game

You missed the opening message didn't you. Ok... let me spell it out. the map is SOOO HUGE... at 16384 SQUARE kilometers that at the detail level they want the maps at it would take over 100TB of storage.

Ok take a breath and let that sink in a bit.

Multiplayer games are of course going to be limited to PRE generated maps OR the 'host' will gen a smaller subset of the map for you and your xx number of friends to play on that they will ALL have to download before they can play.

Why will they need to download it?

It's funny you see computers and internet are pretty quick compared to 10 years ago.. even more than 20 years ago. But those players will need to have environments that match to be able to play with each other. And see the same representative things.

It looks like Serious Sam wants to have some highly detailed maps. That's awesome. And they want them to be sprawling and huge. That is also awesome. But for a good multiplayer map how many gigs is good? Or hundreds of MB's? That's the question you need the answer to.
 
You missed the opening message didn't you. Ok... let me spell it out. the map is SOOO HUGE... at 16384 SQUARE kilometers that at the detail level they want the maps at it would take over 100TB of storage.

Ok take a breath and let that sink in a bit.

Multiplayer games are of course going to be limited to PRE generated maps OR the 'host' will gen a smaller subset of the map for you and your xx number of friends to play on that they will ALL have to download before they can play.

Why will they need to download it?

It's funny you see computers and internet are pretty quick compared to 10 years ago.. even more than 20 years ago. But those players will need to have environments that match to be able to play with each other. And see the same representative things.

It looks like Serious Sam wants to have some highly detailed maps. That's awesome. And they want them to be sprawling and huge. That is also awesome. But for a good multiplayer map how many gigs is good? Or hundreds of MB's? That's the question you need the answer to.


ou missed the opening message didn't you. Ok... let me spell it out. the map is SOOO HUGE... at 16384 SQUARE kilometers that at the detail level they want the maps at it would take over 100TB of storage.
Ok take a breath and let that sink in a bit.

It seems to me you are missing he point of what procedural generated means and how it works and are worreid about issues that is not present. its not like you need 100TB of storage

Multiplayer games are of course going to be limited to PRE generated maps OR the 'host' will gen a smaller subset of the map for you and your xx
2: of cause based on what ? your own guesswork?

ALL have to download before they can play.
why do you think you need to download the map if its in the game? and agains this is proecdursl generated so not a lot of data to download if we had

It's funny you see computers and internet are pretty quick compared to 10 years ago.. even more than 20 years ago. But those players will need to have environments that match to be able to play with each other. And see the same representative things.
just like any other game. again why do you think this is an issue to do

It looks like Serious Sam wants to have some highly detailed maps. That's awesome. And they want them to be sprawling and huge. That is also awesome. But for a good multiplayer map how many gigs is good? Or hundreds of MB's? That's the question you need the answer to.
still seem like you dont understand what procedural generation means..



in short Procedurla generated mean you trade in CPU ressource for storage/data ressources

So a map that wouldbe 100TB in raw data. does not NEED anywhere 100TB of storage. it just needs the starting seed to generate by CPU ressources
just look at .krieger . its a fps shooter in below 96kbytes with several levels. the size is possible because it does not contain any raw data but all is procedurals generated
soo it seems like you are worried about all of this data when that is EXACTLY what procedures generating is fixing.


So again I am asking you. why are you worrird about the very things procedural generating is fixing?
https://en.wikipedia.org/wiki/Procedural_generation
Try to make THIS sink in...
 
Last edited:
to put it very simple


Pregenate maps = lot of space for details = big enviromenst
precodural generated = little data + cpu ressoruces = big enviroment

looking how many cpu ressources are wasted in most games on multicore CPU'sn i think its the smarter choice to go this way.

offcause we can debate the procedural generated vs raw details and its impact on unique details. but thats another debate entirely


Or a simple comparison
procedures maps to raw data maps is what MIDI is to PCM data
Its just the recipie and the data gets generated at runtime


you can red about . krieger here https://en.wikipedia.org/wiki/.kkrieger
The entire game uses only 97,280 bytes of disk space.
.kkrieger itself would take up around 200–300 MB of space if it had been stored the conventional way
 
Guys, if it's procedurally generated that means each person is going to generate maps that are different. If that happens then they don't see the same things don't have the same hills and what not. Because the map is being procedurally generated locally.

Unless they have a layout predefined that the CPU is just filling in the 'filler' objects based on local client density settings, then you run into potential cheats.

UNLESS one person is doing all of the procedural generation OR multiplayer maps are pre defined.

Think of it this way. 100TB... lets say my map is 1 1 thousandth of that. (guesswork for multiplayer) that would mean the map I generate contextually has 100GB in size. And I'm what... going to stream that to other players? OR players that have turned down the clutter density and object density will have an clear advantage in multiplayer maps.

I guess it's not clicking for me since they are relying on clients to procedurally generate their own game world.
 
Are you serious ???

Yes. Always.


I love Serious Sam. Just one of those real, kick ass games that you just have a blast playing. It's fun. It's not serious, it's not some deep story. It's running and blasting bad guys while being challenging. It can take some strategy to get past certain things, but you don't have to be a genius to beat it. Just takes me back to the old style of games. Pure fun. It's like the Transformer movies. Not trying to win an Oscar, but just having a kick ass time and being fun.
 
Guys, if it's procedurally generated that means each person is going to generate maps that are different.
If they use the same starting parameters (seed), then it will be the same. Procedural generation is very common in demoscene especially in small demos. That doesn't mean the demo will be different on each run.
Also many games use random generated maps like simcity type games. Some even show the seed for each map that you can save so you can generate the same map again.

So while technically this method is capable of generating a near infinite variety of maps, it will be used to generate one map (or actually the parts where the player is) every time to the exact same specifications.
 
If they use the same starting parameters (seed), then it will be the same. Procedural generation is very common in demoscene especially in small demos. That doesn't mean the demo will be different on each run.
Also many games use random generated maps like simcity type games. Some even show the seed for each map that you can save so you can generate the same map again.

So while technically this method is capable of generating a near infinite variety of maps, it will be used to generate one map (or actually the parts where the player is) every time to the exact same specifications.

That's interesting. I guess that works. My thought is variation based on system capability.
 
Guys, if it's procedurally generated that means each person is going to generate maps that are different. If that happens then they don't see the same things don't have the same hills and what not. Because the map is being procedurally generated locally.

Unless they have a layout predefined that the CPU is just filling in the 'filler' objects based on local client density settings, then you run into potential cheats.

UNLESS one person is doing all of the procedural generation OR multiplayer maps are pre defined.

Think of it this way. 100TB... lets say my map is 1 1 thousandth of that. (guesswork for multiplayer) that would mean the map I generate contextually has 100GB in size. And I'm what... going to stream that to other players? OR players that have turned down the clutter density and object density will have an clear advantage in multiplayer maps.

I guess it's not clicking for me since they are relying on clients to procedurally generate their own game world.


Guys, if it's procedurally generated that means each person is going to generate maps that are different.
No... that is not what it means.

UNLESS one person is doing all of the procedural generation OR multiplayer maps are pre defined.
Again No made up facts in your head


Think of it this way. 100TB... lets say my map is 1 1 thousandth of that. (guesswork for multiplayer) th
At least you admit all you do is guesswork. and to quote you earlier "You missed the opening message didn't you. Ok"

Clearly you did not read the post at all cause its clearly stated in the post the size is 200MB " This means that they could fit the entire 16384 km2 map into about 200MB of storage."
So who missed reading what again ?

I guess it's not clicking for me since they are relying on clients to procedurally generate their own game world.

Its not clicking becauas you make up "facts" that a simply not true in your head



Despite my linking to two articles on the matter you clearly still have no clue what you are talking about and aee just making up "Facts" in your head
There is nothing in procedural that Forces a RANDOM result.

Please read up on the matter before making up more homebrewed "Facts" on it or at least read the full post before oyu make up numbers that was alread clearly in the post
NONE of what you just said has ANY barring on the technology at all.
 
That's interesting. I guess that works. My thought is variation based on system capability.

it does work it been working for years and you would know it if you had ANY understading of the matter before you posted made up "Facts"
her is a simply procedural generating of the madelbrott

z = x + yi

no random properties at all if you start with the same values however this is in iterative approach.


So can we get a "Guys GUYS, I made it all up and I apologize for trying to correct people that actually understood the topic "

Is SO freaking annoying that PPL with no clue think they need to argue based on made up stuff, and its destructive for the ppl trying to learn something because they get feed with wrong information.
 
it does work it been working for years and you would know it if you had ANY understading of the matter before you posted made up "Facts"
her is a simply procedural generating of the madelbrott

z = x + yi

no random properties at all if you start with the same values however this is in iterative approach.


So can we get a "Guys GUYS, I made it all up and I apologize for trying to correct people that actually understood the topic "

Is SO freaking annoying that PPL with no clue think they need to argue based on made up stuff, and its destructive for the ppl trying to learn something because they get feed with wrong information.


It seems I hit a nerve. They said procedural and my mind went to random and the rest is down hill. I'm sorry I was wrong and you were right. Feel better? *pats head*
 
Following this thread is headache inducing.

No... that is not what it means.

UNLESS one person is doing all of the procedural generation OR multiplayer maps are pre defined.
Again No made up facts in your head

No...this is how you properly quote and respond to each point. While you may be correct because you can't figure out how to quote each point and respond to it and instead resort to italics, it just looks like a giant block of text that's slanted for the first half.

Clearly you did not read the post at all cause its clearly stated in the post the size is 200MB " This means that they could fit the entire 16384 km2 map into about 200MB of storage."
So who missed reading what again ?

Clearly you haven't figured out how to respond to quotes. Come on, it's not that hard.

Its not clicking becauas you make up "facts" that a simply not true in your head

Is it really not clicking for you on how to properly use quotes and respond to them?

Despite my linking to two articles on the matter you clearly still have no clue what you are talking about and aee just making up "Facts" in your head
There is nothing in procedural that Forces a RANDOM result.

Please read up on the matter before making up more homebrewed "Facts" on it or at least read the full post before oyu make up numbers that was alread clearly in the post
NONE of what you just said has ANY barring on the technology at all.

Despite quoting someone multiple times in this thread, you really need to figure out how to do it correctly.
 
still can't beat 6,000,000km in 10mb, no silly gpu, not 1.5cm but maybe 2cm pixels, pretty close :D

The%20Elder%20Scrolls%20-%20Arena9.jpg
 
It seems I hit a nerve. They said procedural and my mind went to random and the rest is down hill. I'm sorry I was wrong and you were right. Feel better? *pats head*

you are right. you hit a nerve when you are debating something and not listening at all.
I provides you external links, yet you just keept your finger in your ears not reading anything and just spouting out the same wrong stuff again and again with no understanding on the topic.

It's becoming a cancer on tech forum that people make claims about something they made up and refuses to listen in a debate.
At least read what is being provide for you on the topic.
 
you are right. you hit a nerve when you are debating something and not listening at all.
I provides you external links, yet you just keept your finger in your ears not reading anything and just spouting out the same wrong stuff again and again with no understanding on the topic.

It's becoming a cancer on tech forum that people make claims about something they made up and refuses to listen in a debate.
At least read what is being provide for you on the topic.

I already said I was wrong and you were correct. Did you want a cookie too?

Back to the topic. A fully realized map at 100TB. So based on the starter 'seed' they can figure out what is on a map based on the seed value anywhere on the map. That's some interesting mathematics going on in the background. I wonder if they are going to use Compute cycles from the Graphics cards in users systems to do it all in general purpose compute threads from the core CPU.

Will be interesting to see.
 
I already said I was wrong and you were correct. Did you want a cookie too?

Back to the topic. A fully realized map at 100TB. So based on the starter 'seed' they can figure out what is on a map based on the seed value anywhere on the map. That's some interesting mathematics going on in the background. I wonder if they are going to use Compute cycles from the Graphics cards in users systems to do it all in general purpose compute threads from the core CPU.

Will be interesting to see.

I'd really love to see them come out with a tech video talking about this in detail. Obviously, it's pretty complex, but I'd love to see how they do it and clear up any misconceptions (this thread is full of them, for sure).
 
I'd really love to see them come out with a tech video talking about this in detail. Obviously, it's pretty complex, but I'd love to see how they do it and clear up any misconceptions (this thread is full of them, for sure).

Hey I resemble that remark.

But yea I am curious. How much space do we save on size? Is the map data being dumped and recreated as we go? If I play a really long session is the map data being cached locally and dumped when I leave or as the players vacate a region? How much map data is preserved based on what you do to change it... if any? Questions abound.
 
Hey I resemble that remark.

But yea I am curious. How much space do we save on size? Is the map data being dumped and recreated as we go? If I play a really long session is the map data being cached locally and dumped when I leave or as the players vacate a region? How much map data is preserved based on what you do to change it... if any? Questions abound.

I'm confused even after reading about it. I'd love to hear about their implementation and answer those questions you asked. It's very fascinating stuff. Even if I'll never program something like that, it's still really cool to hear about it.
 
Hoping for a VR port as well, serious Sam 1-3 is a shit ton of fun in VR lol
 
I already said I was wrong and you were correct. Did you want a cookie too?

Back to the topic. A fully realized map at 100TB. So based on the starter 'seed' they can figure out what is on a map based on the seed value anywhere on the map. That's some interesting mathematics going on in the background. I wonder if they are going to use Compute cycles from the Graphics cards in users systems to do it all in general purpose compute threads from the core CPU.

Will be interesting to see.

No cookies I would just like ppl in genaral listen in a debate especially when they don't have a lot of knowledge on the topic
Agian not "hammering" but when you ask. I answer.
I just miss the older days of the internet with good solid debating with the goal of sharing and gaining knowledge.
ok gone with the rosetinted glasses


On the topic
You might have multiple seeds combined into one seed values
let says this is your seed
UcbEwbS2Zz11lrSsUzqRJ2RkSUfrcjt0zAgDikR7PkC4pG7yj0NeT1jeST4XRYY9c9vmzOEoryhBFQpX49aA5gDFWRiOCeTy2VwnhT9MkBAXxCUy5sxta8PZKoiGzmh4

some parts take cars of different aspect of the maps
UcbEwbS2Z describres the overla map features and topology ( mounts values etc)
z11 descrbies the water level on the maap
lrSsUzq descbae bush vegation
RJ2R roads
kSUfrcj enemies
t0zAgDik overall theme of the maps
R7PkC4 buidlings and vehicles lay out
pG7yj0Ne another part
etc etc

Remember if the maps is around 200mb that 200mb of seed values that is possible
because the seed is all that describes the layout of the map.



in regards to CPU vs GPU. that is an intersteing question i hope Crotem will tell about this more
However if I had to do it i would not focus on this
most gamin rigs today has lots of CPU power avaible that cant be utilzied by the game anyway.
So it would be more optimal to use these first before talking away from the gpu that ther is alradya use for
A propepr load balacing system would bee needed to run optimally



Hey I resemble that remark.

But yea I am curious. How much space do we save on size? Is the map data being dumped and recreated as we go? If I play a really long session is the map data being cached locally and dumped when I leave or as the players vacate a region? How much map data is preserved based on what you do to change it... if any? Questions abound.

The data is not saved to storage if that ias what you are thinking about. yousimpy lread the seeds ad have that in memeoy (aka the 200mb map size)
Then as you moved round the map the data relevant for your position is generated and showned on screen.. This is again more CPU intensive but could saved on memory

Caching is a possibility to certain extend but not the entire map (again 100TB)

procedural most likely mean reducent m in destruct ability or that it will regen fast.
Procedural generation does NOT like uniqie details.

think of it like in diablo 2 you se how the maps are random buy certain sections are always the same
its the same with procedural generation you will see pattern beeing repeated because procedural is jsut pattern describtion.
every uniqure datail requiresa news set of data to describe it as its not part of a current pattern.
so raw data decriptios describes everything as details procedural desvribe thinks in patterns

howeve 200mb is a big seed so there is alot of data available for more unqiee features and making patterns complex not to maybe not fell repeatable.


You really should try playing .krieger from above and just keep reminding your self its allin 96kbytes when you play it.
 
Back
Top