编辑器

Special Folders

Hidden Folder(start with .)

Standard Assets:第一批加载的文件

Editor:只在编辑下才能使用,

Plugins

Resources:原生资源

Editor Default Resources

Gizmos:Gizmos资源

StreamingAssets:自定义资源

编辑器功能扩展-EditorWindow

自定义一个编辑器窗口界面

Unity的编辑器的UI操作都很难用,继承EditorWindow

在OnGUI中绘制UI,触发并显示出来

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine; public class MyWindow : EditorWindow { string myString = "Hello World";
bool groupEnabled;
bool myBool = true;
float myFloat = 1.23f; // Add menu item named"My Window" to the Window menu
[MenuItem("Window/My Window")]
public static void ShowWindow()
{
// Show existing window instance.If one doesn't exist,make one.
EditorWindow.GetWindow(typeof(MyWindow));
} // 每一帧都会触发
private void OnGUI()
{
GUILayout.Label("Base Settings", EditorStyles.boldLabel);
myString = EditorGUILayout.TextField("Text Field", myString); groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Settings", groupEnabled);
myBool = EditorGUILayout.Toggle("Toggle", myBool);
myFloat = EditorGUILayout.Slider("Slider", myFloat, -3, 3);
EditorGUILayout.EndToggleGroup();
}
}

编辑器功能的扩展-EditorWindow

自定义一个编辑器窗口界面

Unity的编辑器UI操作都很难用

继承EditorWindow在OnGUI中绘制UI触发并显示出来

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine; [CustomEditor(typeof(LookAtPoint))] // 对于LookAtPoint的Custom
public class LookAtPointEditor : Editor { void OnInspectorGUI()
{
LookAtPoint lp = target as LookAtPoint;
lp.lookAtPoint = EditorGUILayout.Vector3Field("Look At Point", lp.lookAtPoint);
if (GUI.changed)
{
EditorUtility.SetDirty(target);
}
} private void OnSceneGUI()
{
LookAtPoint lp = target as LookAtPoint;
lp.lookAtPoint = Handles.PositionHandle(lp.lookAtPoint, Quaternion.identity); // 坐标系
if (GUI.changed)
{
EditorUtility.SetDirty(target);
}
}
}

Profiler

采样

各性能指标

截取内存

连接设备

Gizmos

提供对场景里GameObject的必要调试信息,

充分利用Mono的两个接口:OnDrawGizmos和OnDrawGizmosSelected

 #if UNITY_EDITOR
private void OnDrawGizmos()
{
Gizmos.color = Color.red;
Gizmos.DrawRay(transform.position,transform.TransformDirection(Vector3.forward));
}
#endif

Unity基础-编辑器的更多相关文章

  1. unity 基础之InputManager

    unity  基础之InputManager 说一下unity中的InputManager,先截个图 其中Axes指的是有几个轴向!Size指的是有几个轴,改变Size可以添加或者减少轴! Name指 ...

  2. unity 基础学习 transform

    unity  基础学习   transform 1.unity采用的是右手坐标系,X轴右手为+,Y轴向上为+,Z轴朝里为+; 但是我们从3D MAX中导入模型之后,发现轴向并没有遵从这个原理, 其实是 ...

  3. Unity基础学习-Unity概述

    Unity 概述 Unity是一个强大的引擎,里面包括大量的工具用来满足各种各样的需求.Unity的编辑器是直观的可定制的,让您在您的工作流中有较大的自由度. 本小节是开始学习Unity的关键部分.里 ...

  4. Unity基础6 Shadow Map 阴影实现

    这篇实现来的有点墨迹,前前后后折腾零碎的时间折腾了半个月才才实现一个基本的shadow map流程,只能说是对原理理解更深刻一些,但离实际应用估计还需要做很多优化.这篇文章大致分析下shadow ma ...

  5. Unity VR编辑器――如上帝般创建VR内容,Project Soli google用雷达识别手势体积相当于一张 Mini SD 内存卡

    Unity VR编辑器――如上帝般创建VR内容在GDC的一个活动中,Unity首席设计师Timoni West展示了最新的Unity VR编辑器的原型系统,让你如上帝般创建VR应用,从一片空白场景开始 ...

  6. Unity 基础

    Unity 基础是unity入门的关键.他将讲解Unity的界面, 菜单项,使用资源,创设场景,并发布版本. 当你读完这段,你将理解unity是怎么工作的,如何有效地使用它,并且完成一个基本的游戏. ...

  7. Unity 3D编辑器扩展介绍、教程(二) —— 创建窗口

    Unity编辑器扩展教程(二) 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 一 Brief Introd ...

  8. Unity基础知识学习笔记二

    1,object Instantiate(object original,Vector3 position,Quaternion rotation)       克隆原始物体,并返回克隆物体.     ...

  9. 【Unity基础知识之三】Unity Assets目录下的特殊文件夹名称

    Unity3D的特殊目录名称   Unity预留了一些目录名称,这些目录有着特殊的含义.比较重要的有: Resources这个目录下的所有文件都会被打包到发布版本中,程序可以通过文件路径来访问它们.这 ...

随机推荐

  1. JS高级学习历程-16

    [正则表达式] 1()小括号使用 作用:① 提高表达式优先级关系 ② 提取子字符串内容 模式单元,每个小括号都算作一个模式单元内容,按照内容的下标可以给小括号计数. var  reg = /([0-9 ...

  2. JavaScript进阶 - 第1章 系好安全带,准备启航

    第1章 系好安全带,准备启航 1-1让你认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂 ...

  3. MySQL无法启动Couldn't find MySQL server (/usr/bin/mysqld_safe)解决办法(来源网络)

    MySQL无法启动Couldn't find MySQL server (/usr/bin/mysqld_safe) 启动的时候,报上述错误,从这个报错来看,多半是因为读取到了另外的my.cnf导致的 ...

  4. HDU-1151-AirRaid(最小路径覆盖)

    链接:https://vjudge.net/problem/HDU-1151#author=0 题意: 一个城镇有n个路口,由一些单向马路连接.现在要安排一些伞兵降落在某些路口上,清查所有的路口.一个 ...

  5. Xshell连接不上虚拟机&连接提示SSH服务器拒绝了密码,请再试一次

    问题1:Xshell连接不上虚拟机 #启动ssh服务 /etc/init.d/ssh start #查看SSH服务22端口是否开启 netstat -antulp | grep ssh 问题2:XSh ...

  6. Hypertext Application Language(HAL)

    Hypertext Application Language(HAL) HAL,全称为Hypertext Application Language,它是一种简单的数据格式,它能以一种简单.统一的形式, ...

  7. linux yum 安装

    ################## http://rpm.pbone.net/ 下载下来的包放到本地yum源中,然后在这个目录下面重新生成依赖关系就可以使用yum包来完成安装了 tt 1. 生成依赖 ...

  8. 批量插入,update

    #####setting 1create table t as select * from all_objects where 1 =2; ###.模拟逐行提交的情况,注意观察执行时间DECLAREB ...

  9. Tomcat 下载及配置

    1.下载 下载地址:http://tomcat.apache.org/ 进去后下拉到底部 2.解压 Tomcat不需要安装,直接解压即可.解压后会得到这么一个文件夹 3.在MyEclipse中配置To ...

  10. Runner启动器

    Runner启动器的两种创建方式: 实现ApplicationRunner接口,复写run()方法 实现CommandLineRunner接口,复写run()方法 Runner启动器的执行顺序 如果一 ...