Unity 资源导入时预处理 AssetPostprocessor

官方API: https://docs.unity3d.com/ScriptReference/AssetPostprocessor.html

1using UnityEngine; 2using UnityEditor; 3 4/// <summary> 5/// 注意:自定义的AssetPostprocessor应该以dll的方式调用,可以确保即使脚本有编译错误,也可以始终执行它们 6/// </summary> 7public class CustomAssetPostprocessor : AssetPostprocessor 8{ 9 //模型导入之前调用 10 public void OnPreprocessModel() 11 { 12 Debug.Log("OnPreprocessModel=" + this.assetPath); 13 } 14 15 public void OnPostprocessModel(GameObject go) 16 { 17 Debug.Log("OnPostprocessModel=" + go.name); 18 } 19 20 //纹理导入之前调用,针对入到的纹理进行设置 21 public void OnPreprocessTexture() 22 { 23 Debug.Log("OnPreProcessTexture=" + this.assetPath); 24 //TextureImporter impor = this.assetImporter as TextureImporter; 25 //impor.textureFormat = TextureImporterFormat.ARGB32; 26 //impor.maxTextureSize = 512; 27 //impor.textureType = TextureImporterType.Default; 28 //impor.mipmapEnabled = false; 29 30 } 31 32 public void OnPostprocessTexture(Texture2D tex) 33 { 34 Debug.Log("OnPostProcessTexture=" + this.assetPath); 35 } 36 37 38 public void OnPostprocessAudio(AudioClip clip) 39 { 40 41 } 42 43 public void OnPreprocessAudio() 44 { 45 AudioImporter audio = this.assetImporter as AudioImporter; 46 //audio. = AudioCompressionFormat.MP3; 47 } 48 49 //所有的资源的导入,删除,移动,都会调用此方法,注意,这个方法是static的 50 public static void OnPostprocessAllAssets(string[] importedAsset, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) 51 { 52 Debug.Log("OnPostprocessAllAssets"); 53 foreach (string str in importedAsset) 54 { 55 Debug.Log("importedAsset = " + str); 56 } 57 foreach (string str in deletedAssets) 58 { 59 Debug.Log("deletedAssets = " + str); 60 } 61 foreach (string str in movedAssets) 62 { 63 Debug.Log("movedAssets = " + str); 64 } 65 foreach (string str in movedFromAssetPaths) 66 { 67 Debug.Log("movedFromAssetPaths = " + str); 68 } 69 } 70}
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )