diff options
author | Thomas Dinges <dingto> | 2022-09-01 23:22:32 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2022-09-01 23:28:40 +0300 |
commit | cc8ea6ac67a108fcb96e4a8373ac02faf9ccea3d (patch) | |
tree | 351d23dc82e72ea34e6f2d630f9746ec76344af5 /source/blender/gpu/GPU_shader_shared_utils.h | |
parent | ac07fb38a1b35fa156b2d0901eb35cd65ed73903 (diff) |
Metal: MTLShader and MTLShaderGenerator implementation.
Full support for translation and compilation of shaders in Metal, using
GPUShaderCreateInfo. Includes render pipeline state creation and management,
enabling all standard GPU viewport rendering features in Metal.
Authored by Apple: Michael Parkin-White, Marco Giordano
Ref T96261
Reviewed By: fclem
Maniphest Tasks: T96261
Differential Revision: https://developer.blender.org/D15563
Diffstat (limited to 'source/blender/gpu/GPU_shader_shared_utils.h')
-rw-r--r-- | source/blender/gpu/GPU_shader_shared_utils.h | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/source/blender/gpu/GPU_shader_shared_utils.h b/source/blender/gpu/GPU_shader_shared_utils.h index 88bdad2bf76..1cfc4f8af31 100644 --- a/source/blender/gpu/GPU_shader_shared_utils.h +++ b/source/blender/gpu/GPU_shader_shared_utils.h @@ -43,20 +43,23 @@ # define sqrtf sqrt # define expf exp -# define float2 vec2 -# define float3 vec3 -# define float4 vec4 -# define float4x4 mat4 -# define int2 ivec2 -# define int3 ivec3 -# define int4 ivec4 -# define uint2 uvec2 -# define uint3 uvec3 -# define uint4 uvec4 # define bool1 bool -# define bool2 bvec2 -# define bool3 bvec3 -# define bool4 bvec4 +/* Type name collision with Metal shading language - These typenames are already defined. */ +# ifndef GPU_METAL +# define float2 vec2 +# define float3 vec3 +# define float4 vec4 +# define float4x4 mat4 +# define int2 ivec2 +# define int3 ivec3 +# define int4 ivec4 +# define uint2 uvec2 +# define uint3 uvec3 +# define uint4 uvec4 +# define bool2 bvec2 +# define bool3 bvec3 +# define bool4 bvec4 +# endif #else /* C / C++ */ # pragma once |