Archived

This topic is now archived and is closed to further replies.

An Idea on Speeding Up Graphics

This topic is 6272 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Well, basically, higher resolutions are slow but look great, and lower resolutions are fast but look bad. Now, for intricate objects (especially high-poly players & monsters), high-resolution really adds to the feel of the game. But for things that are a little more simpe (landscapes, particles, etc.) when blurred (via antialiasing, anisotropic filtering, etc.) look perfectly fine. So, how about this: the game runs at high res, but things like landscape are rendered at a lower res and sized up to the screen, thus taking time off the poly-drawing and putting it on a single, simpler stretching blit. Then more intricate things (players, weapons, monsters) are drawn at the high res over the lower res part. Get the idea? Do you think it would yield reasonable results? Visit my site!

Share this post


Link to post
Share on other sites
There are some technical arguments both ways .. but look at the game Mechwarrior 3 for a program that behaves similar to your sugestion (they simply spend lots of detail and complex effects on mechs but use simplistic 3d for the terrain) ...

Share this post


Link to post
Share on other sites
And think how much faster it would be if the landscape was rendered at 1/2 of the original res - that''s 1/4 of the original area! And 1/4 of the original res is 1/16 of the original area!

Visit my site!

Share this post


Link to post
Share on other sites
There have already games which look like they were using your idea. The trouble is, that you can actually see that the resolutions of the landscape and the player are different.

The reserve way is perhaps better. For example in UT, the level of detail for the bots is not as importend as the level for the world for many players. But this something different, ...

Coder10000

Share this post


Link to post
Share on other sites
I don''t know that such an algo would have much impact on todays graphics hardware.

By rendering the landscape at a lower res, the only bonus you''re getting is a little less fill-time (assuming you still send the same number of polys across the pipe). But then you''d use more than amount of time stretch-blitting it (think of it, you''d basically be rendering the low-res landscape onto a polygon as a texture: more fill-time). Plus this adds complicates z-buffering and clipping.

Even hardware that''s a couple generations old now has more fill-rate than it knows what to do with. The real slowdown is polygon count. So saving a bit of fill-time isn''t such a big deal, unless you''re doing a lot of multi-pass work.

Instead of worrying about the res you''re rendering at it, focus on polygon count: make the landscape low-poly, and the characters high-poly. Even better, make the poly count scale dynamically I hate running UT at 1200x1024 because the low-poly count really becomes apparent (remember cracking out Duke3D and playing it at 800x600 when you got your PII??).

Morbo

Share this post


Link to post
Share on other sites
Hi,

Your idea may work pretty well in a software rendering engine, but in a hardware accelerated system (which most are today) its got one major flaw. Switching resolutions in hardware rendered systems requires a hardware state change. These take forever (relative to the total time spent rendering a frame) and should be avoided like the plague. Add to this the fact that changing resolutions on most video cards causes ugly flickering and popping noises from the monitor and it becomes an unuasable idea.

The only way I can see this being practicle is if some 3d chip maker added it as a feature on their video card. Something like ultra-fast reslution changing. I don''t know where to begin designing something like that. At the very least, it would probably require an extra set of hardware buffers for each different, concurrently running, resolution.

-Daedalus

Share this post


Link to post
Share on other sites
Morbo: Video cards have _never_ had more fillrate than usable. When cards can run in 64-bit color mode, 1600x1024 res, with 20 texture passes then they _might_ have enought fillrate. Polygon count and fillrate are almost totally independant of each other. There is no reason to stop optimizing for one just to further optimize the other.

-Daedalus

Share this post


Link to post
Share on other sites
quote:
Original post by Daedalus

sorry, I forget to add fps > 60 to that last post.

-Daedalus


Make that at least 72, if not 85->100. The higher the better. I can tell when the framerate drops below 55 or so. It''s not pretty, IMNSHO.

MSN

Share this post


Link to post
Share on other sites