Reply
Reply
 
Thread Tools Display Modes
NAIMA's Avatar
Old (#1)
Hi all I woudl lik eto get some informations about openworld game engines and the size actually managed by them , the ones I know so far are the Bethesda engine and the Rage engine from Rockstar for RDR , according to the info I gound on the web here I made a small image comparison also putting the map heightmap of oblivion inworldmachine and Cryengine to see what is actually the visual feeling inside cryengine for a world of the dimensions of Oblivion , so in Skyrim or oblivion the world is 16 sq miles , almoust 4 x 4 kms and it feels enough big in game , but in cryengine the same map size feels like a fishtank , now why this feeling? I knw that walking around in Oblivion it soon ends by going from a side to a side in few ...

I of course played RDR and it feel enourmously bigger , as an estimate I thinkits actually the double of the size of Sandras GTA and Oblivion , so more or less a 8192 x 8192 map wich is the same of the crysis island , but crysis island is not explorable in all of the size , but just a small level portion , so is not an openworld , but RDR is and I suspect is even bigger than 8 x8 ... someone can give me more info ?
Woudl be possible to make a openworld with cryengine?
What would need for work as an openworld?
and what are the sizes actually ?

Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

Stradigos's Avatar
Old (#2)
Disclaimer: I have not programmed a complete game engine or worked extensively with levels inside existing game engins, but I do have experience making a terrain engine with XNA.

As far as the Oblivion vs Crysis map size goes, I'm going to take a guess and say that, per pixel in the height map, they are either using a different unit of measure, or a different size. A pixel on that map can be 10 meters x 10 meters OR it can could be 100 meters x 100 meters. It really depends on much you scale the height map.

Just by looking at the oblivion map inside the cryengine, it look's like you're several times bigger than you should be. I bet if you shrunk your character down, it would look a lot more normal.

Yes, you can make an open world in the CryEngine (See Crysis). You can make the maps any size you want. The great thing about using an existing engine that can handle those open worlds is that it's taking care of the scene for you. When I programmed my own terrain program, I had to create Octree's so that only the parts of the scene that were in front of my character were visible. It was a lot of work.

Hopefully that helps?

Quote:
but crysis island is not explorable in all of the size
Eh? Wait what? I remember being able to go anywhere on the island. Perhaps my memory deceives me?

Last edited by Stradigos; 10-21-2011 at 08:32 AM..
"If I have seen a little further it is by standing on the shoulders of Giants" - Isaac Newton

Portfolio
Offline , polygon, 659 Posts, Join Date Feb 2009, Location Michigan Send a message via Skype™ to Stradigos  
   Reply With Quote

NAIMA's Avatar
Old (#3)
The size in Oblivion is compared to a 16 sq miles ingame , in pixels is about 4288 x 4128 , the map of crysis is not openworld you can advance a level at time , and only a small portion of the map per time is explorable , RDR instead is totally openworld ... no idea of the size precisely tough ...
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

Stradigos's Avatar
Old (#4)
The original Crysis is open world. You are talking about Crysis 2, which is indeed level based.


http://en.wikipedia.org/wiki/Crysis

"If I have seen a little further it is by standing on the shoulders of Giants" - Isaac Newton

Portfolio
Offline , polygon, 659 Posts, Join Date Feb 2009, Location Michigan Send a message via Skype™ to Stradigos  
   Reply With Quote

NAIMA's Avatar
Old (#5)
no is not "open world " is largte environment but its not an open world where you can go anywhere for the whole lenght of the game its divided in levels , check the editor ...
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

ambershee's Avatar
Old (#6)
Given appropriate level streaming, you'll find many engines don't really have a fixed limit (at least not practically). CryEngine and UDK are two you can play with now. Whilst I cannot speak for CryEngine, you'll find that UDK has an upper limit coming into the hundreds of square kilometers at the default scale. With any reasonable leyout and management, the player would literally have to walk for days to reach the other side.
+++MESSAGE ENDS+++
Online , dedicated polycounter, 1,543 Posts, Join Date Nov 2005, Location Newcastle, UK  
   Reply With Quote

Stradigos's Avatar
Old (#7)
What you're probably seeing in the editor is multiple height maps. That's perfectly acceptable. Open world is really a player term for not having to experience loading from zone to zone and being able to freely explore. Whatever the developer has to do in the background to do that is another story. With a map the size of Crysis and the amount of detail the terrain has, there is definitely multiple heightmaps side by side to make up a larger grid. Otherwise there would not be a ton of detail in the terrain because the resolution wouldn't be high enough to cover that scale.

That probably explains why you're seeing what you're seeing. Get what I'm saying?

EDIT: I don't know the inner workings of cry engine, but that is what I'm assuming you're seeing. I've never opened the cry engine.

Perhaps you can get some info from Crytek's tech page: http://mycryengine.com/index.php?conid=2

Last edited by Stradigos; 10-21-2011 at 09:48 AM..
"If I have seen a little further it is by standing on the shoulders of Giants" - Isaac Newton

Portfolio
Offline , polygon, 659 Posts, Join Date Feb 2009, Location Michigan Send a message via Skype™ to Stradigos  
   Reply With Quote

NAIMA's Avatar
Old (#8)
nope its one heightmap it doesnt have lod system for heightmaps and no normal maps for distant terrain is one single terrain and each level has a portion of the terrain detailed when you change level you change zone of the map if you coudl go freely anywhere you would see , anyway just load a crysis editor level and you can see...
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

NAIMA's Avatar
Old (#9)
I know how cryengine is and is not an openworld , anyway anyone knows about RDR rage engine how that works and how big is it ? how manages the stuff ingame loading unloading portions of the map , lods or normal maps for distant terrain etc? How that should be managed in cryengine too to work like that?
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

NAIMA's Avatar
Old (#10)
back on topic does anyone knows?
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

cupsster's Avatar
Old (#11)
terain gets recalculate by player position by subdivision of heightmap and other factors that engine can process like custom nosie enhancements.
maybe waht you are look more into is echnology of multiple taerrains objectstogether on the grid.. more like JQuerry brick function or you can make them all same size, same resolution and set them as neighbours so their shared edge tesselation wil match by heightmap, but this must be supported by engine of your choice.
for loading and unloadin og object in general position sorting mechansims are essentials along with LOD..
good practice is to update LODS in inrregular intervals so your screen is not busy whole at once.. hiding and unhiding of object based on frustrum culling and precalculated occlusion culling for static meshes.
open worlds are real playground for your creative thinking.. also keep in mid that terrain can be visually designed in a way that by obfuscating vision range or views seems to be bigger.

in your comparison, cruccial is to figure out original heightmap density and units of engine.. then you can proceed to calculate setttings as terain size and height for other engines.
keep in mind to compare look and feel you mus make them look and feel similar so scale is very important.. i noticed that on cacti.. if you make trees larger or smaller your preception can be destorted by know fact that you think that you know how big that tree is (cause it is in general known object) so you derive distance from this improperly scaled "known" object.

final note: does not count with that that all engines have same units setups..
Offline , triangle, 355 Posts, Join Date Jan 2010, Location Slovakia Send a message via Skype™ to cupsster  
   Reply With Quote

NAIMA's Avatar
Old (#12)
My question is .... Is it possible to imPlement in cryengine something like you described in irder to be ab le to use it for an openworld game setting ?
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

Ace-Angel's Avatar
Old (#13)
Did you try the CryForums for these questions? The peeps over there are much more active then the UDK forums, and usually have the solution to your questions (they're also fast by forum standards in answering questions).
There's a very good chance that I experienced MORE problems, then all the internet put together in the area of 3D. Talk about being original for once...
Offline , veteran polycounter, 4,501 Posts, Join Date Apr 2011, Location Canada  
   Reply With Quote

NAIMA's Avatar
Old (#14)
no are mostly modders and the devs there don't post much ...
Offline , dedicated polycounter, 1,338 Posts, Join Date May 2009,  
   Reply With Quote

commander_keen's Avatar
Old (#15)
What makes an engine capable of "open world" levels is having a good LOD system, good streaming system (for everything), and most importantly it needs some way to avoid float accuracy errors.

Object positions are generally stored in 3 float variables in games. The way floats (floating point variables) work is the bigger the number gets the less accurate the number gets on the right side of the point ("."). This means that as your environment gets bigger the positions of your objects begin to lose accuracy, and eventually may jerk around in strange ways, and eventually completely stop moving. At first person detail where 1 unit = 1 meter you probably want to keep the player (and anything requiring accurate physics updates) within 10,000 meters of the world origin.

So when you want to make a game that requires larger levels you need to dynamically move the world around so that your camera and player are constantly within an acceptable range from the world origin. As you can imagine this complicates things terribly and makes adding new features to the engine much more complicated and time consuming, which is why its almost never done unless absolutely necessary.

AFAIK Cryengine does this which means it should be possible to make very large environments with it, Unreal Engine does not do this, which is why it has a hard limit on the level size.


Im not sure if anyone has used double accuracy variables (64 bit instead of 32 bit) throughout the entire engine to overcome this (or if its even possible considering graphics hardware), but maybe that is another option.

Last edited by commander_keen; 10-22-2011 at 08:16 PM..
Offline , polygon, 616 Posts, Join Date Jan 2005, Location Los Gatos, CA  
   Reply With Quote

Ben Apuna's Avatar
Old (#16)
Gamasutra - Visualizing Floats should help explain a bit more about the accuracy issue commander_keen is talking about if you are interested.
Ye Olde Portfolio | Google+ | #1GAM | Aspiring indie developer.
Offline , veteran polycounter, 2,520 Posts, Join Date Feb 2009, Location Hawaii Send a message via Yahoo to Ben Apuna  
   Reply With Quote

ArchieVision's Avatar
Old (#17)
Quote:
Originally Posted by commander_keen View Post
AFAIK Cryengine does this which means it should be possible to make very large environments with it, Unreal Engine does not do this, which is why it has a hard limit on the level size.

Hello,

That UDK Information is very inaccurate. You can do a totally open world that is 19 km x 19 km with the Landscape system. And that is just 1 landscape. And you can have multiple in a single level. Not to mention Level streaming. Landscape has a very good LOD system built into it. Also, There is no limit on level size. You can make a level as big as you want in UDK, just make sure your PC can handle the load in the Editor while developing it. That is the limit, Hardware while developing.

I do not know much about Cry-Engine. But UDK, I do know this. It is all explained in the UDN.

Thanks,

Lee
Offline , line, 58 Posts, Join Date Oct 2011, Location Tennessee  
   Reply With Quote

commander_keen's Avatar
Old (#18)
I just tested the latest UDK version. You are pretty much confined in a box between about -262140 and 262140 units. When you convert that to meters you get -5243 to 5243 which is an area of 10486x10486x10486 which is half of my suggested max origin distance.

I say "pretty much confined" because you can apparently move objects further outside of this box, but your editor cameras are restricted to within the box making it more or less impossible to work out side of it, and even if you could you would soon run into the float accuracy errors I mentioned.
Offline , polygon, 616 Posts, Join Date Jan 2005, Location Los Gatos, CA  
   Reply With Quote

Justin Meisse's Avatar
Old (#19)
Couldn't you just have multiple levels at the max size and use streaming to stitch them together? I don't know the technical side of it but from my MMO experience, the terrain isn't one solid terrain mesh but a series of small ones similar to how Source Engine handles terrain (i think).
Offline , Moderator++, 6,694 Posts, Join Date Oct 2004, Location Austin, TX  
   Reply With Quote

cupsster's Avatar
Old (#20)
xxxxx
xxoxx
xxxxx

x-terrain tile
o-player

simple concept.. streaming data as player goes around.. pooliung objects helps a lot with memory peaks at creating and destroing objects [tip: reuse not create and destroy unless engine is designed for that]..
when player is too far away you can shift "centre of the world reference point" to engine origin without player knowing that and for instantianting use this offset vvector on anything.. be aware that if you using static meshes you can have serious penalty within engine for moving them.. (needs to be recalculated)
Offline , triangle, 355 Posts, Join Date Jan 2010, Location Slovakia Send a message via Skype™ to cupsster  
   Reply With Quote

cupsster's Avatar
Old (#21)
wtf is with my english? i think i need to replace keyboard
Offline , triangle, 355 Posts, Join Date Jan 2010, Location Slovakia Send a message via Skype™ to cupsster  
   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Copyright 1998-2012 A. Risch