TexturePostprocessor检查texture原始大小

public static void CheckTextureQriginalSize(Texture texture)
{
    if(texture == null)
        return;
    int width = -1;
    int height = -1;
    string path = AssetDatabase.GetAssetPath(texture); 
    TextureImporter importerTexture = AssetImporter.GetAtPath(path) as TextureImporter;
    if(importerTexture == null)
        throw new System.Exception(string.Format("GetRawTexSize failed: importer is null, path={0}", path));
    
    object[] args = new object[2] { 0, 0 };
    MethodInfo mi = typeof(TextureImporter).GetMethod("GetWidthAndHeight", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
    mi.Invoke(importerTexture, args);
    width = (int)args[0];
    height = (int)args[1];
    if (width > 1024 || height > 1024)
    {
        EditorGUILayout.HelpBox(string.Format("{0}的纹理尺寸大于1024宽:{1}  高:{2}",texture.name, width, height), MessageType.Warning);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity中加载图片资源并设置其大小是一项常见的任务。要实现此功能,首先需要在项目中将图片资源导入到Unity引擎中。这可以通过在Unity中选择“Assets”窗口,右击并选择“Import New Asset”完成。导入资源后,在Unity中创建一个空对象并将其命名为“TextureObject”(或其他自定义名称)。然后,将导入的图片资源拖放到空对象上。 接下来,需要创建一个材质,并将其分配给空对象。创建材质的方法是在Unity中选择“Assets”窗口,右击并选择“Create”,然后选择“Material”。在Inspector窗口中,将材质类型更改为“Standard”,并将其命名为“TextureMaterial”(或其他自定义名称)。将此材质分配给“TextureObject”,并在Inspector窗口中选择该材质。 在选择材质后,需要为其创建一个纹理属性。打开材质的Inspector窗口,选择“Texture”属性,并在右侧的“Object Field”中选择导入的纹理资源。此时,可以更改纹理的大小。在Inspector窗口中,找到“Texture”属性下的“Tiling”和“Offset”设置。通过更改这些设置,可以缩放和调整纹理的大小。 最后,应用这些更改并查看纹理在场景中的渲染效果。要应用更改,请在Inspector窗口中选择“Apply”或“Save”按钮。查看渲染效果,请在Unity中选择场景视图,并在视图中选择“TextureObject”。透过场景视图,您可以看到纹理应用于该对象的外观。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值