Per-Pixel-Lighting

Per- pixel lighting or pixel -based lighting is a shading method that is similar to the vertex -based lighting.

Background

In contrast to vertex -based lighting, the lighting is the per- pixel lighting is not calculated and interpolated for each vertex but it is a lighting value is calculated for each pixel. The advantage is that even when surfaces are lit, which are still larger than the illumination area, a more realistic effect. This allows for the realistic rendering of extremely fine lighting and reflection effects such as welding shine. For each pixel, the color is calculated in accordance with a lighting model.

So-called bump maps and normal maps store the surface vectors in their pixels. Since the lighting model calculates the light level per pixel ( per-pixel ), additional shaded (in real time ) Details can be drawn on the surface.

If it is under normal and light vector to unit vectors, we obtain a result between 0 and 1, which makes it easy to determine a percentage of whitening.

The method is "supporting hardware shader " by all graphics cards and DirectX from 8 offered. These include pioneers the ATI Radeon 8500 and the Nvidia GeForce 3 and all successor models. However, this per- pixel lighting effects can be exploited in games only really with DirectX 9- compatible graphics card, since the speed of older graphics cards it too limiting.

A list of some engines that support per - pixel lighting:

  • Cafu Engine
  • CryEngine (Far Cry )
  • Doom 3 engine
  • Jupiter EX ( F.E.A.R. )
  • Nebula2 (Open Source)
  • OGRE (Open Source)
  • Source Engine ( Half-Life 2 )
  • Tenebrae ( enhanced Quake engine )
  • Unreal Engine 3
641580
de