Texture2D 二维纹理 纹理处理类。使用这个动态创建纹理或修改现有纹理资源。 变量 mipmapCount 这个纹理有多少mipmap等级(只读) format 纹理中像素的数据格式(只读) 函数 SetPixel 在坐标(x,y)设置一个像素的颜色 SetPixel (x : int, y : int, color : Color) GetPixel 获取坐标(x,y)处像素颜色 GetPixel (x : int, y : int) GetPixelBilinear 返回在正规化纹理坐标(u,v)处的过滤的像素颜色。 GetPixelBilinear (u : float, v : float) 注:坐标U和V 是从0.0到1.0的值,就像是网格模型上的UV坐标 SetPixels 设置一块像素颜色 SetPixels (x : int, y : int, blockWidth : int, blockHeight : int, colors : Color[], miplevel : int = 0) 注:从x,y点开始的blockWidth(块的宽)乘以blockHeight(块的高)的区域 LoadImage 根据字节数组载入图片 LoadImage (data : byte[]) public class example : MonoBehaviour { public TextAsset imageTextAsset; void Start() { Texture2D tex = new Texture2D(4, 4); tex.LoadImage(imageTextAsset.bytes); renderer.material.mainTexture = tex; } } GetPixels 获取一块像素颜色 GetPixels (x : int, y : int, blockWidth : int, blockHeight : int, miplevel : int = 0) : Color[] Apply 实际应用前面的SetPixel和Setpixels的更改 Texture2D texture = new Texture2D(128, 128); texture.Apply(); Resize 调整纹理大小 若要调整纹理,这个纹理需要导入设置为Is Readable(可读) Resize (width : int, height : int) : bool PackTextures 打包多个纹理到纹理集合中,返回Rect[]类型,矩形的数组包含每个输入的纹理的UV坐标集合 PackTextures (textures : Texture2D[], padding : int, maximumAtlasSize : int = 2048) : Rect[] textures 纹理数组被打包到集合中 padding 打包纹理的像素间距 maximumAtlasSize 调整纹理的最大尺寸 ReadPixels 读取屏幕像素信息并存储为纹理数据 ReadPixels (source : Rect, destX : int, destY : int, recalculateMipMaps : bool = true) : void 如果 recalculateMipMaps 设置为真,这个贴图的mipmaps就会更新 如果 recalculateMipMaps设置为假,你需要调用Apply重新计算它们 Inherited members继承成员 width 以像素为单位的贴图宽度 (只读) height 以像素为单位的贴图的高度(只读) filterMode 贴图的过滤模式 anisoLevel 贴图的各向异性过滤等级。此变量的值的范围从 1 - 9 ,其中 1 等于没有过滤而9 等于完全过滤。值越大,贴图在浅角度看时显得更清 晰。较低的值表示贴图在浅角度显得更模糊。 wrapMode 循环模式(重复或强制拉伸)在贴图边界以设置贴图的重复模式的方式避免不真实的情况,使用强制贴图边界拉伸 TextureWrapMode.Clamp 或者贴图重复平铺 TextureWrapMode.Repeat mipMapBias 多级纹理偏移量
来源:https://www.cnblogs.com/wuwenbo/p/8073327.html