在Unity开发游戏的时候,为了有一个更快更方便的工作流,我们往往会在Editor下开发一些方便实用的工具。在工具中,用到最多,最关键的就是按钮,它是工具的首席执行官。下面就用最简单的代码来演示添加一个自定义按钮到Inspector当中。

案例:指定坐标后克隆新物体到场景。

    1、  在Unity Assets下创建”ObjectBuilderScript”脚本,添加代码:

using UnityEngine;

public class ObjectBuilderScript : MonoBehaviour {

    public GameObject obj;

    public Vector3 spawnPoint;

    public void BuildObject() {

        Instantiate(obj, spawnPoint, Quaternion.identity);

    }

}

2、  在Unity Assets下创建”Editor”文件夹,文件夹下创建”ObjectBuilderEditor”脚本,添加代码:

using UnityEngine;

using UnityEditor;

[CustomEditor(typeof(ObjectBuilderScript))]

public class ObjectBuilderEditor : Editor {

    public override void OnInspectorGUI() {

        DrawDefaultInspector();

        ObjectBuilderScript myScript = (ObjectBuilderScript)target;

        if(GUILayout.Button("创建对象")) {

            myScript.BuildObject();

        }

    }

}

3、  场景中添加一个空的GameObject对象,挂载上” ObjectBuilderScript”脚本,在Inspector中选中需要克隆的游戏对象,填入克隆对象的出生点坐标,点击“创建对象”按钮,就将克隆对象添加到场景当中。如图:

Unity相关技术讨论可在“Paws3D学习中心”讨论学习!

Unity Inspector添加自定义按钮(Button)的更多相关文章

  1. Dynamics 365 CRM 添加自定义按钮

    在添加自定义按钮之前,我们需要下载这个工具 RibbonWorkbench, 它是专门针对自定义命令栏和Ribbon区域. 下载之后是一个zip压缩包. 怎样安装RibbonWorkbench: Se ...

  2. ckeditor添加自定义按钮整合swfupload实现批量上传图片

    ckeditor添加自定义按钮整合swfupload实现批量上传图片给ckeditor添加自定义按钮,由于ckeditor只能上传一张图片,如果要上传多张图片就要结合ckfinder,而ckfinde ...

  3. 在jQuery ajax中按钮button和submit的区别分析

    在使用jQuery ajax的get方法进行页面传值,不能用submit,否则无刷新获取数据展示 点击submit提交按钮,sendPwd.php通过$_POST接收传过来的值,然后echo一段数据. ...

  4. .net学习之母版页执行顺序、jsonp跨域请求原理、IsPostBack原理、服务器端控件按钮Button点击时的过程、缓存、IHttpModule 过滤器

    1.WebForm使用母版页后执行的顺序是先执行子页面中的Page_Load,再执行母版页中的Page_Load,请求是先生成母版页的控件树,然后将子页面生成的控件树填充到母版页中,最后输出 2.We ...

  5. 在Salesforce中对某一个Object添加自定义的Button和Link

    在Salesforce中可以对某一个Object添加自定义的Button和Link,来完成特定的逻辑过程,接下来以一个简单的实例来描述整个处理流程,实现的基本功能和我另外一篇文章中描述的功能是一致的( ...

  6. Android 自定义控件 EditText输入框两边加减按钮Button

    自己封装的一个控件:EditText两边放加减按钮Button来控制输入框的数值 Demo 下载地址: 第一版:http://download.csdn.net/detail/zjjne/674086 ...

  7. 关于bootstrap--表单(按钮<button>效果、大小、禁用)

    1.各种标签实现按钮效果: <button class="btn btn-default" type="button">button标签按钮< ...

  8. Dynamics CRM2013 任务列表添加自定义按钮

    任务列表的command bar 上面添加自定义按钮如下 要注意的是此处的列表不是任务实体而是活动实体,如果你是在任务实体的home栏上面加那你永远看不见按钮的显示,但如果是要在任务的表单界面上加按钮 ...

  9. cocos creator 重写源码按钮Button点击音频封装

    (function(){ var Super = function(){}; Super.prototype = cc.Button.prototype; //实例化原型 Super.prototyp ...

随机推荐

  1. MFC 常用功能总结

    目录 ◆ 获取启动参数◆ 调整窗体大小◆ 关闭Dialog窗体◆ Dialog启动时指定控件为焦点◆ Dialog中禁止ESC回车关闭窗体◆ 回车后焦点自动跳到下一个控件◆ 窗体中某个控件捕获右键菜单 ...

  2. 深入浅出Windows命令——telnet

  3. 2017-2018-2 20165318 实验四《Android程序设计》实验报告

    2017-2018-2 20165318 实验四<Android程序设计>实验报告 一.实验报告封面 课程:Java程序设计        班级:1653班        姓名:孙晓暄  ...

  4. CentOS 7的安装

    一.引导系统之后 界面说明: Install CentOS 7 安装CentOS 7 Test this media & install CentOS  7 测试安装文件并安装CentOS  ...

  5. 配置使用;yum安装slatstack的master,minion<at>centos6_x86_64

    使用: ####################################### 配置: ####################################### 安装: 服务端安装: [ ...

  6. tomcat:8080/返回404;/etc/hosts(identifier-Namespace-scope)

    我以为 就oracle 的 oracle db ,weblogic喜欢和 hostname 死磕: 没想到开源的tomcat也是如出一辙,名不正则言不顺,为什么,“名”的力量这么大呢?命名空间. 有个 ...

  7. oninput和onpropertychange实时监听输入框值的变化

    oninput和onpropertychange实时监听输入框值的变化 传统监听输入框的做法就是使用keyup.keydown.keypress,或者change事件来实现,但keyup.keydow ...

  8. Python2.7-pprint

    pprint 模块,提供了对数据的漂亮输出(pretty-print),它会尽量保持对象转变成字符串后只有一行,如果超过了指定的长度则会分成多行,目的就在于便于阅读和美观 模块的类: pprint.P ...

  9. C++之强制类型转化

    在C++语言中新增了四个关键字static_cast.const_cast.reinterpret_cast和dynamic_cast.这四个关键字都是用于强制类型转换的.我们逐一来介绍这四个关键字. ...

  10. Android处理ListView中的Item中的Button按钮不能点击的问题

    问题描述:ListView列表中的Button按钮按钮不能点击 解决办法:在ListView中的Item项的布局文件中加上:android:descendantFocusability="b ...