转载注明出处:http://www.manew.com/thread-99169-1-1.html

通过Unity提供的事件通知类UnityEditor.AssetPostprocessor,我们在Unity编辑器中能够监控纹理、音频、模型等其他资源的导入事件。

我们可以通过这些事件的监控可以很清楚的知道操作的事件,从而根据自己的需求定制一些特殊的编辑器功能。

示例代码如下:代码放入Editor文件夹下

public class AssetPostprocessorEvent : UnityEditor.AssetPostprocessor {//模型导入之前调用  public void OnPreprocessModel() {Debug.Log("OnPreprocessModel=" + this.assetPath);}//模型导入之前调用  public void OnPostprocessModel(GameObject go) {Debug.Log("OnPostprocessModel=" + go.name);}//纹理导入之前调用,针对入到的纹理进行设置  public void OnPreprocessTexture() {Debug.Log("OnPreProcessTexture=" + this.assetPath);TextureImporter impor = this.assetImporter as TextureImporter;impor.textureFormat = TextureImporterFormat.ARGB32;impor.maxTextureSize = 512;impor.textureType = TextureImporterType.Advanced;impor.mipmapEnabled = false;}//文理导入之后public void OnPostprocessTexture(Texture2D tex) {Debug.Log("OnPostProcessTexture=" + this.assetPath);}//音频导入之前public void OnPreprocessAudio() {Debug.Log("OnPreprocessAudio");AudioImporter audio = this.assetImporter as AudioImporter;audio.format = AudioImporterFormat.Compressed;}//音频导入之后public void OnPostprocessAudio(AudioClip clip) {Debug.Log("OnPostprocessAudio=" + clip.name);}//所有的资源的导入,删除,移动,都会调用此方法,注意,这个方法是static的  public static void OnPostprocessAllAssets(string[] importedAsset, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) {Debug.Log("OnPostprocessAllAssets");foreach (string str in importedAsset) {Debug.Log("importedAsset = " + str);}foreach (string str in deletedAssets) {Debug.Log("deletedAssets = " + str);}foreach (string str in movedAssets) {Debug.Log("movedAssets = " + str);}foreach (string str in movedFromAssetPaths) {Debug.Log("movedFromAssetPaths = " + str);}}
}

Unity3D游戏开发之 模型、纹理、音频等资源导入事件监控相关推荐

  1. Unity3D游戏开发初探—2.初步了解3D模型基础

    一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...

  2. Unity3D游戏开发-宣雨松读书摘要(2015-4-17 18:36)

    本书基于Unity3.5编写,通过丰富的游戏实例,以JavaScript与C#两种语言介绍Unity开发. Unity3D游戏开发-宣雨松 序 它支持JavaScript.C#.Boo三种脚本语言 ...

  3. Unity3D游戏开发介绍

    Unity3D游戏开发介绍 Unity3D Unity是实时3D互动内容创作和运营平台.包括游戏开发.美术.建筑.汽车设计.影视在内的所有创作者,借助Unity将创意变成现实. Unity平台提供一整 ...

  4. 【Unity3D游戏开发学习笔记】(六)上帝之手—GameObject的操作

    在Unity中,所有实体都属于游戏对象(GameObject),比如外部导入到场景中的模型,Unity自带的立方体等等,而要将这些GameOject进行管理,交互等操作,则需要用到脚本来实现,上一节我 ...

  5. [Unity3D]Unity3D游戏开发之当仙剑奇侠传遇上Mecanim动画系统

    大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是 blog.csdn.net/qinyuanpei.博主总算赶在这个月底写出了这篇文章.这个月因为期末考试一直没时间研究太多关于技术方面的东西, ...

  6. Unity3D游戏开发之仿仙剑奇侠传角色控制效果

    在上一篇文章中,我们从Unity3D为我们提供的相机原型实现了非编码式的小地图,如果结合GUI在这个小地图下面绘制一些背景贴图,相信整体的效果会更好一些.博主希望这个问题大家能够自己去做更深入的研究, ...

  7. 《学Unity的猫》——第十八集:Unity3D游戏开发工程师笔试刷题,皮皮收到面试邀请

    文章目录 18.1 皮皮收到面试邀请 18.2 面试题库相关网站 18.2.1 牛客网 18.2.2 领扣LintCode 18.2.3 力扣LeetCode 18.3 优质学习网站 18.3.1 菜 ...

  8. [Unity3D]Unity3D游戏开发之怪物AI

    大家好,欢迎大家关注由我为大家带来的Unity3D游戏开发系列文章,我的博客地址为:http://blog.csdn.net/qinyuanpei. 在上一篇文章中,我们基本上实现了一个小地图的功能, ...

  9. Unity3D游戏开发之网络游戏服务器架构设计培训

    下面我们开始今天的Unity3D游戏开发技能培训. 我们专业培养"游戏主程",挑战20W年薪,初期学习Unity3D培训目标:让U3D初学者可以更快速的掌握U3D技术,自行制作修改 ...

最新文章

  1. Get started with ros -- 1
  2. 信息检索Information Retrieval评价指标
  3. 从一个被Tomcat拒绝的漏洞到特殊内存马
  4. 兼容IE和火狐、crome的返回XML文件内容
  5. jquery.min.js一引入到工程中显示红叉,或其他.js文件显示红叉
  6. 请求时才延迟加载JavaScript文件 - 优化篇
  7. 一次函数的斜率公式_【海广教育数学口诀】初中数学学不会?公式这样记,让你做题效率翻倍!...
  8. fabric批量操作远程操作主机的练习
  9. linux 共享文件夹 权限
  10. 你的喜爱——软件测试方法和技术
  11. PCBA加工为什么要做首件检测?
  12. 今日头条的个性化推荐
  13. 敌兵布阵(CDQ分治模板题)
  14. 应用泛函分析—距离空间
  15. SpringBoot 项目鉴权的 4 种方式
  16. 龙之谷2服务器维护,龙之谷2今日上线!详细攻略带你玩转阿尔特里亚大陆
  17. 【SIGGRAPH】用【有说服力的照片真实】技术实现最终幻想15的视觉特效
  18. android fragment 白屏,当应用Crash后fragment出现白屏
  19. stm32f103mini IO
  20. 在CentOS上安装宝塔Linux面板

热门文章

  1. TeamCity持续集成工具的完整配置,发布代码流程
  2. 原生js实现输入某年某月某日,判断这一天是这一年的第几天
  3. php将微信绑定到账号上,微信通帐户绑定
  4. /u 反斜杠u 编码总结
  5. 用python实现点阵屏_用Python代码来绘制彭罗斯点阵的教程
  6. FileSystemObject对象【1】:Drive对象和Drives集合
  7. 年轻人,买什么也别买房
  8. 使用python绘制笛卡尔心形线
  9. oracle如何查看sequence的值,Oracle sequence详解
  10. Scoop安装使用及卸载