ZioRed Posted May 13, 2010 Share Posted May 13, 2010 What is the common way of working with the models loading, preload all game models once at game loading and then just CopyEntity them or loading them when they are in the player's range? Quote ?? FRANCESCO CROCETTI ?? http://skaredcreations.com Link to comment Share on other sites More sharing options...
Masterxilo Posted May 13, 2010 Share Posted May 13, 2010 Depends on how long the assets take to load. Loading stuff only when it's needed is generally the better approach. Quote Hurricane-Eye Entertainment - Site, blog. Link to comment Share on other sites More sharing options...
Flexman Posted May 13, 2010 Share Posted May 13, 2010 Yeah it depends. Stuttering from asset loading can annoy so I tend to do those things in game moments where it's not noticeable or going to be a problem. Don't think there's any hard and fast rules. Quote 6600 2.4G / GTX 460 280.26 / 4GB Windows 7 Author: GROME Terrain Modeling for Unity, UDK, Ogre3D from PackT Tricubic Studios Ltd. ~ Combat Helo Link to comment Share on other sites More sharing options...
ZioRed Posted May 14, 2010 Author Share Posted May 14, 2010 Since I am working on a MMORPG I'm thinking to try loading the models at player's range (which is not the view range but higher) and mantain an hashtable to let me copy if already loaded. Quote ?? FRANCESCO CROCETTI ?? http://skaredcreations.com Link to comment Share on other sites More sharing options...
Mumbles Posted May 14, 2010 Share Posted May 14, 2010 That's a case where I think threaded loading would be advantageous - but it's not supported. In the case of an MMO, having a nice 60fps slow down to about 15-20 for a few seconds while resources are loaded would, I think, be better than having a pause while the resources are loaded, followed by the inevitable lag during the catch-up. For other games, it's less of an issue. A loading screen with a progress bar does not need to be threaded. And indeed, for FPS, RTS and most others, loading all upfront is viable. The largest problem with loading all resources up front is the amount of RAM needed. for an MMO that would have lots of objects, and need them all loaded, would need lots of RAM, and agressively swapping between RAM and the pagefile can cause further stutters (which we have no control over). For other games, there aren't (normally) as many resources to load, they can all fit in RAM nicely and for most levels, "mission-specific" items do not need to be loaded at all. For an MMO, you are probably best loading resources only when needed, and make them as small as possible to reduce pause while loading things. Quote LE Version: 2.50 (Eventually) Link to comment Share on other sites More sharing options...
ZioRed Posted May 14, 2010 Author Share Posted May 14, 2010 A thread safe loading of resources would be really a nice headshot for MMOs, e.g. I love the scene loading of AVA where you see the loading progress of you and the others. Quote ?? FRANCESCO CROCETTI ?? http://skaredcreations.com Link to comment Share on other sites More sharing options...
Mumbles Posted May 14, 2010 Share Posted May 14, 2010 I love the scene loading of AVA where you see the loading progress of you and the others. They had that as early Tiberian Sun. For SP you got a load of wordy loading, but for MP you instead just a got a coloured bar for each player (they colour being the colour they'd chosen before the game started). It turned out to be so efficient I believe they've used it ever since for the C&C series, for both single and multiplayer. I also think that style would be suitable for any game with even slightly long loading times. But for the record, that does not need multi-threading - other people's bars do not need to updated smoothly. You only need to update their bars at the time you update your own. (or once you've finished loading, and you are now waiting for everyone else.) Quote LE Version: 2.50 (Eventually) Link to comment Share on other sites More sharing options...
Masterxilo Posted May 14, 2010 Share Posted May 14, 2010 and mantain an hashtable to let me copy if already loaded. You don't have to do this yourself. If oildrum.gmf is already loaded, calling LoadModel("abstract::oildrum.gmf"); again will automatically return an instanced copy of it. Quote Hurricane-Eye Entertainment - Site, blog. Link to comment Share on other sites More sharing options...
ZioRed Posted May 14, 2010 Author Share Posted May 14, 2010 You don't have to do this yourself. If oildrum.gmf is already loaded, calling LoadModel("abstract::oildrum.gmf"); again will automatically return an instanced copy of it. Right, I forgot Quote ?? FRANCESCO CROCETTI ?? http://skaredcreations.com Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.