Real Time rendering


Real Time rendering

Real-time rendering is the one of the interactive areas of computer graphics, it means creating synthetic images fast enough on the computer so that the viewer can interact with a virtual environment. The most common place to find real-time rendering is in animated movies or video games. The rate at which images are displayed is measured in frames per second (frame/s) or Hertz (Hz). The frame rate is the measurement of how quickly an imaging device produces unique consecutive images. If an application is displaying 15 frame/s it is considered real-time.

The Graphics Rendering Pipeline

Graphics rendering pipeline is known as the rendering pipeline or simply the pipeline. It is the foundation of real-time graphics. Its main function is to generate, or render, a two-dimensional image, given a virtual camera, three-dimensional objects (an object that has width, length, and depth), light sources, lighting models, textures, and more.

Architecture

The architecture of the real-time rendering pipeline can be divided into three conceptual stages as shown as in the figure below. These stages include application, geometry, and rasterizer. This structure is the core which is used in real-time computer graphics computer graphics applications.

Application Stage

The application stage is driven by the application where “it begins the image generation process that results in the final scene of frame of animation.�? The application is implemented in the software thus giving the developers total control over the implementation in order to change the performance. This stage may, for example, contain collision detection, speed-up techniques, animations, force feedback, etc. One of the processes that is usually implemented in this stage is collision detection. Collision detection is usually includes algorithms that detects whether two objects collide. After a collision is detected between two objects, a response may be generated and sent back to the colliding objects as well as to a force feedback device. Other processes implemented in this stage included texture animation, animations via transforms, geometry morphing, or any kind of calculations that are not performed in any other stages. At the end of the application stage, which is also the most important part of this stage, the geometry to be rendered is fed to the next stage in the rendering pipeline. These are the rendering primitives that might eventually end up on the output device, such as points, lines, and triangles, etc.

Geometry Stage

The geometry stage is responsible for the majority of the per-polygon operations or per-vertex operation; it means that this stage computes what is to be drawn, how it should be drawn, and where it should be drawn. In some case, this stage might be defined as one pipeline stage or several different stages, mainly due to the different implementation of this stage. However, in this case, this stage is further divided into different functional group.

Model and View Transform

Before the final model is shown on the output device, the model is transformed into several different spaces or coordinate systems. That is, when an object is being moved or manipulated, the object’s vertices are what are being transformed.

Lighting

In order to make the model to have a more realistic appearance, one or more light sources are usually equipped during the scene of transforming the model. However, this stage cannot be reached without completing the 3D scene being transformed into the view space; the view space is where the camera is placed at the origin and aimed in a way that the camera is looking in the direction of the negative z-axis, with the y-axis pointing upwards and the x-axis pointing to the right.

Projection

There are two types of projection, orthographic (also called parallel) and perspective projection. Orthographic projection are used to represent a 3D model in a two dimensional (2D) space. The main characteristic of orthographic projection is that the parallel lines remain parallel even after the transformation w/o distorting them. Perspective projection is where when a camera is farther away from the model, the smaller the model it appears. Essentially, perspective projection is the way that we see things from our eyes. The image below compares the differences between the two projections.

Clipping

Clipping is the process of removing primitives that are outside of the view box in order to continue on to the rasterizer stage. Primitives that are outside of the view box are removed or "clipped" away. Once the primitives that are outside of the view box are removed, the primitives that are still inside of the view box will be drawn into new triangles to be proceeded to the next stage. The image of below provides a better explanation of how clipping works.

Screen Mapping

The purpose of screen mapping, as the name implies, is to find out the coordinates of the primitives that were determined to be on the inside of the view box in the clipping stage.

Rasterizer Stage

Once all of the necessary steps are completed from the two previous stages, all the elements, including the lines that have been drawn and the models that have been transformed, are ready to enter the rasterizer stages. Rasterizer stage means turning all of those elements into pixels, or picture elements, and adding color onto them.

References

* Möller, Tomas, and Eric Haines. Real-Time Rendering. 1st ed. Natick, MA: A K Peters, Ltd., 1999.
* Salvator, Dave. “3D Pipeline.�? http://www.extremetech.com. 21 June 2001. Extreme Tech. 2 Feb 2007 http://www.extremetech.com/article2/
* Malhotra, Priya. “Issues involved in Real-Time Rendering of Virtual Environments.�? July 2002: 20-31. College of Architecture and Urban Studies, Blacksburg, VA. 31 January 2007
* Haines, Eric. Real-Time Rendering Resources. 01 February 2007. 12 Feb 2007


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Real-time computer graphics — is the subfield of computer graphics focused on producing and analyzing images in real time. The term is most often used in reference to interactive 3D computer graphics, typically using a GPU, with video games the most noticeable users. The term …   Wikipedia

  • real time — TV Occurring immediately, without delay for rendering. If a transition occurs in real time, there is no waiting; the computer creates the effect or transition on the fly, showing it immediately. Real time previewing is different from real time… …   Audio and video glossary

  • Real-time video editing — is a system of editing video where it takes no longer to render a video than the length of that video clip itself. For example, after a 30 minute length of video is edited it needs to be rendered, and should the system take more than 30 minutes… …   Wikipedia

  • Real-time strategy — A real time strategy (RTS) video game is a strategic game that is distinctly not turn based. [cite web |url=http://www.gamespot.com/gamespot/features/all/real time/ |title=A History of Real Time Strategy Games |accessdate=2008 03 31 |author=Bruce …   Wikipedia

  • Real-Time — Dieser Artikel erläutert den Begriff Echtzeit in der Informatik; zu weiteren Bedeutungen gleichnamiger Begriffe siehe Echtzeit (Begriffsklärung). In der Informatik spricht man von Echtzeit (englisch: real time, deutsch (veraltet): Realzeit), um… …   Deutsch Wikipedia

  • Real-time — Dieser Artikel erläutert den Begriff Echtzeit in der Informatik; zu weiteren Bedeutungen gleichnamiger Begriffe siehe Echtzeit (Begriffsklärung). In der Informatik spricht man von Echtzeit (englisch: real time, deutsch (veraltet): Realzeit), um… …   Deutsch Wikipedia

  • Rendering (computer graphics) — Not to be confused with 3D rendering. A variety of rendering techniques applied to a single 3D scene …   Wikipedia

  • Rendering-Pipeline — Eine Computergrafik Pipeline, auch Rendering Pipeline oder einfach Grafikpipeline, ist eine Modellvorstellung in der Computergrafik, die beschreibt, welche Schritte ein Grafiksystem zum Rendern, also zur Darstellung einer 3D Szene auf einem… …   Deutsch Wikipedia

  • Rendering Pipeline — Eine Computergrafik Pipeline, auch Rendering Pipeline oder einfach Grafikpipeline, ist eine Modellvorstellung in der Computergrafik, die beschreibt, welche Schritte ein Grafiksystem zum Rendern, also zur Darstellung einer 3D Szene auf einem… …   Deutsch Wikipedia

  • Real life — In real life redirects here. For the Canadian TV series, see In Real Life. This article is about the common term real life . For things named Real Life , see Real Life. Real life is a term usually used to denote actual human life lived by real… …   Wikipedia