Win/Mac/Linux | iOS/Android | Consoles | ||
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 |
Yes | Yes | Yes | |
Vertex Lit rendering | Yes | Yes | - | |
Realtime Shadows | GPU support | GPU support | Yes | |
Image Effects | Yes | Yes | Yes | |
Programmable ShadersA program that runs on the GPU. More info See in Glossary |
Yes | Yes | Yes | |
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 10, the GPU should 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 should support the 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). You can target higher shader models if you want to add more functionality. Fixed function is supported everywhere except consoles.