|Win/Mac/Linux||iOSApple’s mobile operating system. More info
See in Glossary/Android
|Deferred lighting||SM3.0, GPU support||-||Yes|
|Forward renderingA rendering path that renders each object in one or more passes, depending on lights that affect the object. Lights themselves are also treated differently by Forward Rendering, depending on their settings and intensity. More info
See in Glossary
|Vertex Lit rendering||Yes||Yes||-|
|Realtime Shadows||GPU support||GPU support||Yes|
|Programmable ShadersA program that runs on the GPU. More info
See in Glossary
|Fixed Function Shaders||Yes||Yes||-|
Realtime Shadows work on most PC, console & mobile platforms. On Windows (Direct3D), the GPU also needs to support shadow mapping features; most discrete GPUs support that since 2003 and most integrated GPUs support that since 2007. Technically, on Direct3D 9 the GPU has to support D16/D24X8 or DF16/DF24 texture formatsA file format for handling textures during real-time rendering by 3D graphics hardware, such as a graphics card or mobile device. More info
See in Glossary; and on OpenGL it has to support GL_ARB_depth_texture extension.
Mobile shadows (iOS/Android) require OpenGL ES 2.0 and GL_OES_depth_texture extension, or OpenGL ES 3.0. Most notably, the extension is not present on Tegra 3 and Tegra 4 based Android devices, so shadows do not work there.
Post-processing effects require render-to-texture functionality, which is generally supported on anything made in this millenium.
You can write programmable or fixed function shaders. Programmable shaders are supported everywhere, and default to Shader Model 2.0 (desktop) and OpenGL ES 2.0 (mobile). It is possible to target higher shader models if you want more functionality. Fixed function is supported everywhere except consoles.