Unity菜单编程-自定义的图片Inspector面板

本文介绍如何创建一个自定义Inspector面板,用于将选中的.png图片转换为Unity的Sprite类型。在实现过程中,遇到TextureImporter修改textureType时需要指定textureFormat的问题,否则可能导致图片显示为白色。文章提到了OnEnable()和OnInspectorGUI()两个关键方法,并指出多个同类型Inspector面板的生效规则。附带展示了编译后图片属性面板效果及源码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本类以.png图片的inspector面板为例,实现一个图片自定义的Inspector面板,Inspector面板可以直接针对当前选中对象做一个操作。

下面的mytestInspector类是用于将当前选中的.png图片自动转为Sprite类型。
但是我有一点不太清楚TextureImporter类在修改textureType的时候,如果没有跟着指定textureFormat图片格式的,就会出现白图片。
重新指定一下图片格式就OK了

用到的方法:
  • OnEnable() 激活时调用,
  • OnInspectorGUI GUI刷新类似于mono的OnGUI(),所用的面板组件也和OnGUI差不多

不过学习写的过程中发现几个问题:

  • 其中,myclass类可以是一个普通类,用来保存或响应Inspector菜单类中的设置或操作
  • 继承于Editor的TextureImporter 菜单类不一定非放在Editor目录下
  • 同类型的Inspector面板,比如同时有两TextureImporter类,个同时只会有一个生效,并且Editor目录下的那个菜单类优先生效

如图是编译完 图片属性面板的效果:

这里写图片描述

最后,附上源码:


using System;
using UnityEditor;
using UnityEngine;


/// </remarks>
/**
这一行比较关键 指明是图片导入菜单
**/
[CustomEditor(typeof(TextureI
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值