Legacy Documentation: Version 4.6
Language: English
Sparse Textures
Procedural Materials

Graphics Hardware Capabilities and Emulation

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

The graphics hardware that ultimately renders a scene is controlled by specialised graphic programs called Shaders. The capabilities of the hardware have improved over time in phases and the general set of features that were introduced with each phase is known as a Shader Model. Progressive shader models have added support for longer shader programs, more powerful branching instructions and other features and these improvements have enabled parallel improvements in the graphics of games.

Unity currently supports two shader models in the targeted graphics hardware: Shader Model 2 and Shader Model 3. The graphics cards that implement each model are given below:-

Shader Model 2

  • NVIDIA cards since 2003 (GeForce FX)
  • AMD cards since 2004 (Radeon 9500)
  • Intel cards since 2005 (GMA 900)
  • Mobile: OpenGL ES 2.0
  • Consoles: Xbox 360, PS3.

Shader Model 3

  • NVIDIA cards since 2004 (GeForce 6)
  • AMD cards since 2005 (Radeon X1300)
  • Intel cards since 2006 (GMA X3000)
  • Consoles: Xbox 360, PS3.

Additionally, some graphic effects used in Unity (in the Image Effects, for example) also require depth textures. Cards with support for depth textures include:-

Shader Model 2

  • NVIDIA cards since 2004 (GeForce 6)
  • AMD cards since 2004 (Radeon 9500)
  • Intel cards since 2006 (GMA X3000)
  • Mobile: OpenGL ES 2.0 with depth texture support
  • Consoles: Xbox 360, PS3.

Shader Model 3

  • NVIDIA cards since 2004 (GeForce 6)
  • AMD cards since 2005 (Radeon X1300)
  • Intel cards since 2006 (GMA X3000)
  • Mobile: OpenGL ES 2.0 with depth texture support
  • Consoles: Xbox 360, PS3.

Shader Model Emulation

Unity allows you to render your game using an inferior shader model to the best that your graphics card offers. This is useful during development to see how the graphics will look on an older machine.

To choose the Graphics emulation level, go to Edit > Graphics Emulation on the menu. Note that the available options change depending on the platform you are currently targeting in the Build Settings. For desktop machines, Shader Model 2 and Shader Model 3 will appear as emulation options, while on mobiles, you can only choose OpenGL ES 2.0. You can restore the full capabilities of your hardware by choosing No Emulation. If your development machine doesn’t support a particular shader model then it will be hidden on the Graphics Emulation menu.

Although emulation is a quick way to check out graphics capabilities, you should still test your game on actual hardware. This will reveal real performance and any peculiarities of the specific graphics card, operating system or driver version.

Sparse Textures
Procedural Materials