I found this new API in MTLDevice “supportsPullModelInterpolation()” but there was no additional info. Anyone knows what is this about?
This is indicates whether a device supports the Pull Model Interpolation feature. This feature allows a fragment shader to compute multiple interpolations of a [[stage_in]] input (an interpolant). This approach generalizes from today's single interpolation, where you declare a shader input with a value of type T and an interpolation attribute, such as [[center_perspective]], and the value is interpolated once in a shader preamble. For pull-model interpolation, you instead declare the shader input with the type interpolant<T,P>, and call methods such as interpolate_at_center(), interpolate_at_sample(), or interpolate_at_offset() to interpolate a value.
On iOS, iPadOS, and tvOS, devices supporting MTLGPUFamilyApple3 or above support this feature. On macOS, this is only available on Intel GPUs.
We will provide more specific information on this feature soon in an update to the Metal Shading Language specification.
On iOS, iPadOS, and tvOS, devices supporting MTLGPUFamilyApple3 or above support this feature. On macOS, this is only available on Intel GPUs.
We will provide more specific information on this feature soon in an update to the Metal Shading Language specification.