Hard Light Productions Forums

Hosted Projects - Non-FreeSpace => MechCommander OmniTech => Topic started by: Starman01 on December 11, 2010, 04:35:05 pm

Title: To all : Polycount Question
Post by: Starman01 on December 11, 2010, 04:35:05 pm
Hey there,

I have a question for the people here, that know more about computer technic than me. :)

Does anybody know, what a decent nowaday's PC hardware can handle as maximum polycount (triangles) per frame ? I'm not even sure what PC hardware most people have. I think, a gpu with 512 MB and a dualcore CPU is not to much to ask for today and can be named "Minimum requirement".

I'm asking because of the mechcommander game. The code has a limit for the maximum polycount that can be displayed per frame. We can increase that, but since I also hope that we can increase texture size, I think we will run into performance problems at one point. I have to admit, I'm not fully sure the Mechcommander 2 engine has a lod system, I rather doubt it, there is just this blurry fog on the end of the viewline.

And with all the trees, and more important if you make a larger city areas (which I like to do), and have a few mechs running around, you run quickly above 100K polygons per frame.

I think it's hard to make compares to other games. I don't think that a freespace or other spacegame can be compared, since the black space and the good lod system can handle the polygons quite well for the GPU. Also I dont really know how Graphic Giants like Crysis 2 handle a GPU, is it really the polycount limit that makes performance bad in that case ? I rather think, there it is the texture amount (which will become a problem for us too, if we go too high) that makes performance a problem, and not the polygon count.

Has anyone infos or suggestion on other RTS games ? What's the one with the highest graphic model ? C+C3 looked good, but it doesn't looked to much poly intense to me. Starcraft 2 can become a performance problem even on higher machines, but I'm not sure if it's because of textures, polycount or the cpu getting problems with to many units.

What do you people think ? What polygon amount for mid range pc's would be handable per frame ? I need a base to plan on the new models
Title: Re: To all : Polycount Question
Post by: NGTM-1R on December 11, 2010, 04:52:00 pm
To be honest, I'm not even sure why you're asking. Let's back up a minute.

The majority of the time playing something like MC2 you will be zoomed out to command multiple units spread over an area using long-range weapons. While MC2's graphics weren't terribly nice, as LOD2 or so, which is where you saw them a lot of the time, they were fine. This isn't the case anymore, but we're not going to notice tiny details most of the time because we're not close enough to see them.

So basically, if you can just get rid of the awful smoothed playdo look and give the models some angular where appropriate I'll be more than happy.
Title: Re: To all : Polycount Question
Post by: Hades on December 11, 2010, 05:01:43 pm
Actually, from what I've seen, most of the models in MC2 are sharp enough to cut a cow in half. :p

And is there actually a LOD system? I see LOD files for units/buildings/etc in the source model files. And I'll say I played some MC2 recently and I couldn't stand being zoomed out because I couldn't see anything because of the fog.
Title: Re: To all : Polycount Question
Post by: Starman01 on December 12, 2010, 01:55:03 am
Yep, I do not know if there is a working LOD system. And personally, I often zoom in to play like a 3rd person view.  And maps with big cities are already at the edge of the possible
Title: Re: To all : Polycount Question
Post by: gevatter Lars on December 12, 2010, 05:40:41 am
I haven't played MC2 for a very long time so I don't remember the looks of it very well but I think polywise just increase it a very little bit so you can add some corners to the models but keep it in a range that is...don#t know if you now have 500 polys you will have then 600-700. Hope you get what I mean.

What I think will do most of the "ah that looks nice" effekt for the game is increased texture size (for the ground) and stuff like specmaps, normalmaps and so on. These can give the impression of a realy nice model without the high polycount.

Also concider lightning effects. Can't realy remember if there where any in MC2 but it would give much to the games overall look if lasers,tracer rounds for the ACs and missiles illuminate the surrounding.


Title: Re: To all : Polycount Question
Post by: Starman01 on December 12, 2010, 06:58:24 am
That's pretty clear to me, I know HOW to upgrade models :) What I would need is the technical information about the polycount that standard PC could handle

Well, there are light effects in MC2. The night missions weren't such the burner, but that's because the lightcones only had 4 polygons. But at least, something is in there :)
Title: Re: To all : Polycount Question
Post by: Niue on December 12, 2010, 10:08:18 pm
Memory management and subsequent processing speed on computers can be tricky to predict as it is dependent on many variables.  In general, there is no exact analytical method of determining the time required (or the FPS) to a priori render a scene.  However, there should be correlations between nested mesh size and memory usage... as the wireframe increases in complexity the required CPU/GPU time should increase the same way that memory increases.

I found a paper that has an example of GPU memory usage and runtime data (there are probably others but this is the one I first ran across):

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.142.361&rep=rep1&type=pdf (http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.142.361&rep=rep1&type=pdf)

This article tested the timing and memory requirements of terrain rendering and was done on a P4 3.0 GHz processor with 2 GB RAM, with a GeForce 6800GT with 256 MB onboard RAM (this benchmark is actually something we'd expect for something running stock MechCommander 2).

On Table 1 some results were shown about the timing and memory use of a computer rendering various terrain features.  Of interest is the Puget4k and Puget16k samples.  Both have the same texture resolution of 16k x 16k but the wireframe resolution is 4k x 4k and 16k x 16k in the second.  The difference between the two models is that the Puget16k sample showed a roughly 300% increase in memory usage and took ~3.3 times longer to run.

These results indicate a linear increase in computer time usage and memory (slightly linear since the scale of the features are quadrupled), but this example might be comparing apples to oranges.  In all modern (scalar and parallel) computers the speedup should scale linearly with the number of processors, and the same could probably be said of a paired CPU/GPU combination.  Rendering multiple, small units might show a much different impact on performance compared to just terrain.  That and rendering is also related to the efficiency of the game engine and whatever is inherent in the main code.

I'd recommend altering the maximum memory parameters if possible and doing stress test benchmarks for some "experimental" data, that way the entire code can be rescaled and normalized to match the requirements of modern computers (i.e. the "very high" setting of stock MC2 can be rescaled to "low" in terms of today's computers).