Jump to content
  • Advertisement
Sign in to follow this  
andersonj21

how do games render so fast

This topic is 3924 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

When you try to render a fairly complex scene in a 3D modeling software, it usually takes a long time(at least a couple seconds). So are modern games able to get >50fps? I realize that 3D modeling renders still images in higher quality, but I'm guessing there is more to this phenomena. Hopefully someone could explain this in detail. Thanks.

Share this post


Link to post
Share on other sites
Advertisement
Yeah, it's just a different rendering system. Often modeling tools will introduce ray-tracers and various other very computational expensive extra steps.

In a game a lot of those effects are often just good representations which are near to what's being done in a modeling renderer.

Think about it like this. You can work on your models in the tool in realtime right? It's still processing all the same amount of geometry, just not producing a production quality render.

Share this post


Link to post
Share on other sites
There are many ways to accomplish the task of creating a 2D image of what a 3D world might look like. A quick overview:

3D modelers use a ray tracing technique to render the scene. This creates close to real life scenes because it mimics the way light bounces around the world, and lights what we see.

Games on the other hand need interactivity much more than perfect lighting, so they use real time rendering. There are a lot of short cuts taken to give great looking scenes even if they are not physically correct.

Although with shaders the boundary between these two types of rendering is starting to blur as you can implement many ray tracing techniques inside of an object's shader. Also with multi-core machines real time ray tracing is slowly becoming a reality, and might even be the future of game rendering.

Share this post


Link to post
Share on other sites
Also note that besides using less computationally expensive algorithms (e.g. local vs. global illumination), games nowadays make use of very specialized hardware that is designed specifically for one method of rendering 3d graphics (this is a little less true with shader-based rendering, although the basic things like vector operations, interpolation and rasterization still apply). Non-realtime renderers on the other hand use primarily (and most of them even exclusively) the CPU which is a lot more "general purpose".

Share this post


Link to post
Share on other sites
Quote:
Original post by Wolfdog
3D modelers use a ray tracing technique to render the scene.

Not necessarily. A lot of 3D modelling packages use a software scanline renderer by default (but usually provide a raytracer as another option, either built in or as a separate renderer that you can plug in).

John B

Share this post


Link to post
Share on other sites
Real-time graphics hardware is a trade off between quality and performance.

Non real-time rendering is flexible, accurate and can use arbitrarily expensive operations.

In real-time hardware, you are given a very small subset of operations on rendering pipeline. The rest of the application that submits to that, and cheats on everything that isn't supported.

This is why for game purposes, you do what is possible, and not a tiny bit more - since it can't be done.

Software renderers however are free to do anything in any way they way with arbitrary flexibility.

It should be noted that 3D real-time hardware accelerated rendering has come quite a long way in commodity software, and promises to provide results similar to those made by offline renderers in near future.

The only limitations that real-time renderers still carry is the need to pre-calculate as much as possible, thereby imposing a limit on largest scene that can be rendered.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!