IMTLArgumentEncoder 接口

定义

将数据编码为参数缓冲区。

[Foundation.Protocol(Name="MTLArgumentEncoder", WrapperType=typeof(Metal.MTLArgumentEncoderWrapper))]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 13, ObjCRuntime.PlatformArchitecture.Arch64, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.TvOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.WatchOS, ObjCRuntime.PlatformArchitecture.All, null)]
public interface IMTLArgumentEncoder : IDisposable, ObjCRuntime.INativeObject
type IMTLArgumentEncoder = interface
    interface INativeObject
    interface IDisposable
属性
实现

属性

Alignment

获取编码数据的字节对齐方式。

Device

获取编码器的设备。

EncodedLength

获取在缓冲区中存储编码资源所需的字节数。

Handle

处理指向非托管对象表示形式的 (指针) 。

(继承自 INativeObject)
Label

获取或设置编码器的描述性标签。

方法

CreateArgumentEncoder(nuint)

将数据编码为参数缓冲区。

GetConstantData(nuint)

在缓冲区中返回指向指定 index 处的 常量的指针。

SetArgumentBuffer(IMTLBuffer, nuint)

设置参数将编码到的目标缓冲区。

SetArgumentBuffer(IMTLBuffer, nuint, nuint)

设置参数将编码到的目标缓冲区。

SetBuffer(IMTLBuffer, nuint, nuint)

编码 buffer 到参数缓冲区。

SetBuffers(IMTLBuffer[], IntPtr, NSRange)

编码 buffers 到参数缓冲区。

SetSamplerState(IMTLSamplerState, nuint)

sampler编码到参数缓冲区中。

SetSamplerStates(IMTLSamplerState[], NSRange)

将提供的 samplers 编码到参数缓冲区中。

SetTexture(IMTLTexture, nuint)

将提供的 texture 编码到参数缓冲区中。

SetTextures(IMTLTexture[], NSRange)

将提供的 textures 编码到参数缓冲区中。

扩展方法

CreateArgumentEncoder(IMTLArgumentEncoder, nuint)

将数据编码为参数缓冲区。

SetBuffers(IMTLArgumentEncoder, IMTLBuffer[], nint[], NSRange)

编码 buffers 到参数缓冲区。

SetIndirectCommandBuffer(IMTLArgumentEncoder, IMTLIndirectCommandBuffer, nuint)

将数据编码为参数缓冲区。

SetIndirectCommandBuffers(IMTLArgumentEncoder, IMTLIndirectCommandBuffer[], NSRange)

将数据编码为参数缓冲区。

SetRenderPipelineState(IMTLArgumentEncoder, IMTLRenderPipelineState, nuint)

将数据编码为参数缓冲区。

SetRenderPipelineStates(IMTLArgumentEncoder, IMTLRenderPipelineState[], NSRange)

将数据编码为参数缓冲区。

适用于