位置: 编程技术 - 正文

[置顶] Unity Editor Extensions – Custom Inspectors([置顶]JM259194)

编辑:rootadmin


推荐整理分享[置顶] Unity Editor Extensions – Custom Inspectors([置顶]JM259194),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:[置顶]公主大人接下来是拷问时间31,[置顶]星陨计划,[置顶]津鱼.我爱你,[置顶]bilinovel,[置顶]bilinovel,[置顶]从lv2开始开挂的原勇者候悠闲的异世界生活,[置顶]游戏名:chivalry2,[置顶]JM259194,内容如对您有帮助,希望把文章链接给更多的朋友!

转载请注明出处:

这是在“Unity Editor Extension”系列的第 2 次帖子。

post描述了为创建自定义inspectors面板在 Unity 编辑器的基本步骤。在该系列的下一个posts,我将深入探讨更高级的主题,例如inspectors及Unity’s serialization系统。

Inspector检查器基础知识

Inspector是在 Unity 编辑器 — — 单一视图,显示一个游戏物体的所有相关信息,允许轻松地操纵它的最常用的窗口之一。

默认情况下,检查器允许编辑任何可以被序列化的,根据这些规则(请参见这篇文章):

◾Public, or marked with[SerializeField]

◾Not static

◾Not const, readonly

◾Field of a type that canbe serialized

你可能会问自己,字段可以是序列化?:

◾Custom non abstractclasses with [Serializable] attribute.

◾Custom structs with[Serializable] attribute. (new in Unity4.5)

◾Objects that derive fromUntiyEngine.Object

◾Primitive data types(int, float, double, bool, string, etc)

◾Arrays of a type that canbe serialized

◾List<T> of a typethat can be serialized

[置顶]
        Unity Editor Extensions – Custom Inspectors([置顶]JM259194)

创建自定义的检查器

Unity允许创建自定义的检查器为您定义的自定义类。这可以出于各种原因,例如:自定义检查器看起来或自动化(做一些字段的值发生更改时)某一特定行为。

若要创建一个新的inspector,首先创建一个新的editor类 (代码文件放置在一个Editor中的文件夹),并从中Editor类派生。此类应该也可饰用CustomEditor属性,以便让引擎知道哪种类型的编辑器用来:

重写方法OnInspectorGUI是提供 GUI 代码显示检查器的内容。这篇文章并不处理的创作 GUI 元素以及如何风格新inspector — — 这些主题都计划在将来的文章覆盖。

显示默认检查器

有时你可能想要保持原inspector时仅向其添加次要更改外观。这可以使用DrawDefaultInspector方法。例如,请考虑将“Reset”按钮添加到Transform组件:

上面的代码的结果可以看到在下边。你可以看到一个新的“Reset”按钮被添加在Transform’s inspector。

注: 默认inspector是一个通用的实现并不可能是你已经习惯了 !例如,变换组件具有内部实现完全一样 (源于编辑器和装饰用CustomEditor属性) 上文所述的UnityEditor.dll,一个内置的自定义实现。不幸的是,如果你想要重写,而不是默认的督察,要诉诸反射来调用该检查方法。

示例用法 — — 执行自定义代码检查器获取修改时

在此示例中,每当在检查器GUI 变化,自定义代码将执行,并打印被修改的对象到控制台:

这是一个相当做作的例子,但这可以真正有价值的用途。在我们的项目,例如,我们有检查器允许您选择用于编辑对象的“mode”。一旦选择模式,则调用方法时(以同样的方式,如上所示),更改该对象的可视状态,使其匹配的新的模式,使所做的更改立即在场景视图中可用。

摘要

我们已经看到如何创建自定义的检查器的自定义类 (inspectors不只用来编辑MonoBehaviours,他们可以编辑任何可序列化的资源如 ScriptableObjects)。

Unity3D【火星大战二】 火星大战(二)1、我机发射子弹,打中敌机,当敌机生命为零或飞出界面时消失,如图:2、用到碰撞检测技术,产生碰撞必须满足的两个条件:1、包

Unity shader教程-第二课:Shader的框架和Properties详细介绍 本文首发地址:

Unity 通过脚本修改源资源 自动实例化如果要修改任何游戏资源,通常希望在运行时修改,且修改是暂时的。例如,如果角色获得了无敌状态,可能想更改材质(material)的着色器(sha

标签: [置顶]JM259194

本文链接地址:https://www.jiuchutong.com/biancheng/375793.html 转载请保留说明!

上一篇:Unity中protobuf的使用方法(unityproject)

下一篇:Unity3D【火星大战二】(unity火球特效)

  • 计提企业所得税会计科目
  • 废品销售是否缴纳增值税
  • 免税发票是增值税发票吗
  • 电子税务局申报的财务报表在哪里查询
  • 小规模差额申报怎么申报
  • 实收资本在利润表中怎么体现出来
  • 自己打印的机票怎么退票
  • 在银行购买支票需要什么手续
  • 什么是居民纳税人
  • 经营性应收项目和经营性应付项目
  • 本月预缴税额怎么计算
  • 银行代扣水费发票怎么开
  • 季度所得税报表季初资产总额怎么填
  • 金三打印客户端插件如何下载?
  • 小规模开票是含税的吗
  • 退休人员兼职工资交税吗?
  • 撤回投资属于什么会计科目
  • 预付专利转让费计入什么科目?
  • 租金税率9%和5
  • 同城提入业务包括
  • 增值税抄税报税流程2021
  • macbook pro怎么检测
  • 结转法定盈余公积会计分录怎么写
  • 在window系统中哪些用户可以查看日志
  • 路由器怎么重置网络
  • 股票退市怎样补仓
  • 补缴增值税的会计处理
  • 发物流货物损坏怎么赔偿
  • qconsvc.exe - qconsvc是什么进程 有什么作用
  • Remoterm.exe - Remoterm是什么进程 有什么用
  • 为员工租赁房屋产生的租赁费可以抵扣增值税和所得税吗
  • 土地开发公司是国企吗
  • php23种设计模式
  • 销售使用过的固定资产3%减按2%
  • 小规模纳税人进项票可以抵扣吗
  • 冰川洞洞打法
  • js实现拖拽选区的功能
  • ChatGPT的了解与初体验
  • nodejs安装及环境配置win7
  • lvs命令
  • 固定资产盘盈税务处理政策
  • python字符串多行
  • 所有者权益合计等于什么
  • 个体户怎么报增值税
  • 金蝶会计报表公式
  • 收入的确认规则
  • 社保费怎么做记账凭证
  • 中付支付科技有限公司备付金
  • 增量留底退税额计算
  • 现金流量表的内部结构怎么算
  • 企业缴纳车船税吗
  • 长期股权投资稀释股权
  • 高新技术企业奖励政策
  • 减免及返还增值税怎么算
  • 收到国库退款
  • 人力资源服务费是什么意思
  • 长期股权投资减值准备借贷方向增减
  • 发票入账的时候能作废吗
  • 非流动性资产有
  • 塔吊租赁费用是否包括司机指挥
  • 利息专用发票可以抵扣吗
  • 商品销售成本的计算可以采用逆算成本法,其操作方法是
  • mysql column is ambiguous
  • win10选择软件打开方式
  • fedora系统怎么安装
  • 将哪一linux文件系统引入
  • xp系统纯净版gho
  • win7 桌面空白
  • WIN10系统如何修复
  • linux操作系统配置网络
  • windows7组织
  • [置顶] 《精神怪谈》 后续起点
  • jquery animate源码
  • easyui multiple
  • js 浏览器全屏
  • jquery?
  • 河南普通发票查询真伪查询系统
  • 电子税务局无法显示抵扣发票
  • 深圳前海地铁站几号线
  • 新车购置税是在4s店交吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设