版本: Unity 6 (6000.0)
语言English
  • C#

Texture2D.CreateExternalTexture

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法采纳所有提交,但我们会阅读用户提出的每项修改建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的修改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static Texture2D CreateExternalTexture(int width, int height, TextureFormat format, bool mipChain, bool linear, IntPtr nativeTex);

参数

nativeTex 原生 2D 纹理对象。
width 纹理的宽度(以像素为单位)。
height 纹理的高度(以像素为单位)。
format 底层纹理对象的格式。
mipmap 纹理是否具有 mipmap?
linear 纹理是否使用线性颜色空间?

描述

根据外部创建的原生纹理对象创建 Unity 纹理。

此函数主要用于创建平台特定纹理对象(在 Unity 之外)的原生代码插件,并且需要在 Unity 场景中使用这些纹理。也可以在 Unity 中创建纹理并获取指向底层平台表示的指针;请参阅 Texture.GetNativeTexturePtr

传递给 CreateExternalTexture 的参数应与纹理的实际情况相匹配;并且底层纹理应为 2D。

对于类似 Direct3D 的设备,nativeTex 参数是指向底层 Direct3D 基本类型的指针,可以从中创建纹理。它们可以是

D3D11: ID3D11ShaderResourceView*ID3D11Texture2D*
D3D12: ID3D12Texture2D*

对于 OpenGL/OpenGL ESnativeTex 参数为 GLuint

对于 MetalnativeTex 参数为 id<MTLTexture>

对于 VulkannativeTex 参数为 VkImage*

其他资源:UpdateExternalTextureTexture.GetNativeTexturePtr