Texture2D.CreateExternalTexture

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

Parameters

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

Description

基于外部创建的原生纹理对象创建一个 Unity 纹理。

This function is mostly useful for native code plugins that create platform specific texture objects outside of Unity, and need to use these textures in Unity Scenes. It is also possible to create a texture in Unity and get a pointer to the underlying platform representation; see Texture.GetNativeTexturePtr.

传递到 CreateExternalTexture 的参数应与该纹理的实际值匹配;底层纹理应为 2D(立方体贴图或 3D 纹理将不起作用)。

Direct3D 类设备上的原生纹理对象是一个指向基本类型的指针,可通过该指针创建纹理 (D3D9 上为 IDirect3DBaseTexture9,D3D11 上为 ID3D11ShaderResourceView)。在 OpenGL/OpenGL ES 上为 GLuint。在 Metal 上为 id<MTLTexture>。

另请参阅:UpdateExternalTextureTexture.GetNativeTexturePtr