By default, Unity compiles all shader programs for all supported graphics APIs. You can tell the compiler to exclude or include specific APIs. This is useful when you use shader language features that are not supported on all platforms.
To compile a shader program only for a given graphics API, use the #pragma only_renderers
directive. To exclude given APIs from compilation, use the #pragma exclude_renderers
directive.
例:
# pragma only_renderers d3d11
For more information on pragma directives, see Shader compilation: pragma directives.
Supported names are:
ステートメント | Renderer |
---|---|
d3d11 |
Direct3D 11/12 |
glcore |
OpenGL 3.x / 4.x |
gles |
OpenGL ES 2.0 |
gles3 |
OpenGL ES 2.0 |
metal |
iOS/Mac Metal |
vulkan |
Vulkan |
d3d11_9x |
WSAプラットフォームで一般的に使用されるDirect3D 11 9.x機能レベル |
xboxone |
Xbox One |
ps4 |
PlayStation 4 |
n3ds |
Nintendo 3DS |
wiiu |
Nintendo Wii U |