AddComponentMenu】的更多相关文章

字面理解:添加 组件选项菜单 分析:可能是添加一个脚本或者组件到一个物体上 验证: 新建一个脚本:AttributeTest 提示:添加一个组件菜单属性,允许你放一个脚本在Compoent菜单下,来代替Compoent->Scripts菜单 看一下场景: 场景中一共新建了两个脚本,结果在Compoent下的script中,都存在,说明:系统会自动把你新创建的脚本放到script下,那现在就可以理解提示的意思: 把原来系统自动分配在Compoent->Scripts下的脚本移到你用AddComp…
[AddComponentMenu] The AddComponentMenu attribute allows you to place a script anywhere in the "Component" menu. AddComponentMenu用于方便地添加方法. 参考:file://localhost/Applications/Unity/Unity.app/Contents/Documentation/Documentation/ScriptReference/Add…
字面理解:添加 组件选项菜单 分析:可能是添加一个脚本或者组件到一个物体上 验证: 新建一个脚本:AttributeTest 提示:添加一个组件菜单属性,允许你放一个脚本在Compoent菜单下,来代替Compoent->Scripts菜单 看一下场景: 场景中一共新建了两个脚本,结果在Compoent下的script中,都存在,说明:系统会自动把你新创建的脚本放到script下,那现在就可以理解提示的意思: 把原来系统自动分配在Compoent->Scripts下的脚本移到你用AddComp…
本文系作者原创 转载请注明出处 如果是一个2D的平面项目或者说需要在三维空间选择一个物体时(经常表现为抓取物件),我们需要用到Raycast事件 那么首先先说说什么是Raycast 按照字面上来理解的话,就是投射射线=.=的确也是这样 Raycast有几种重载函数,所以按照惯例,先看看官方文档怎么说的 ------------------------------------------------------------------- Physics.Raycast 光线投射 static fu…
本文系作者原创,转载请注明出处 入门级的笔者想了一上午才搞懂那个欧拉角的Camera旋转..=.= 在调试场景的时候,每次都本能的按下W想前进,但是这是不可能的(呵呵) 于是便心血来潮想顺便添加个KeyMove事件给摄像机,来实现 伪"漫游"场景 吧. 笔者之前看到过一个叫First Person Controller的Prefab,直接就实现了第一人称的场景漫游(即是不能到处乱飞,只能在一个固定高度进行场景浏览,模拟人行走的意思) 盗张图嘿嘿 但是介于刚刚入门不知道哪儿去找,所以只能…
本文系作者原创,转载请注明出处 刚刚入门U3D,也是很多东西搞不懂,最先接触的就是自己尝试去获取键盘上的GetPress之类的事件了吧 官方的API DOC也是帮了不少忙,到处吸收了各位博主的文章也是获益匪浅~ 话又说回来,最近遇到的问题就是如何新建一个camera并且利用鼠标四处查看场景,一路试下来发现transform.Rotate不能良好实现这个事件 (PS:Z轴会乱动) 后来发现必须用四元数或者欧拉角来解决,这两个也算是transform里面的几只老虎了 先贴一个看见的视频,关于欧拉角…
1.UGUI中是没有depth的概念,那要怎么在脚本中动态的改变一个UI元素在hierarchy中的排序位置呢? 放到最上面 Transform.SetAsFirstSibling最下面Transform.SetAsLastSibling某一处 Transform.SetSiblingIndex 2.查看并调试UGUI源码 教程:http://www.tuicool.com/articles/6V7zqi 源码:https://bitbucket.org/Unity-Technologies/u…
ngui中 代码调用按钮事件 好烦人啊这个问题, 我弄完发上来 这个问题解决了一半 发现可以用 按钮绑定来解决这个问题,并且更安全方便快速 直接在按钮上添加一个 key binding 指定按键 搞定 不过看了一下源代码,好像这个binding实际上就是一个委托,哈哈,这样实际上两个问题都解决了@.@ using UnityEngine; /// <summary> /// This class makes it possible to activate or select something…
用 Sublime 已经有很长一段时间,很舒适,很贴心,根本停不下来.之前因为是开发页游,所以是用 AS3 开发,近段时间,新开了个手游项目,引擎方面选定了 Unity3D,老实说,之前没有太多的 3D 的概念,只是自己偶尔会下个 AS3 写的 3D 引擎玩一下,折腾折腾,并没有实际的工作中用到过相关的东西,如今项目需要用 Unity3D,有些兴奋,这可不是自己折腾的小打小闹了. Unity 支持的脚本有3种:C#, JS, Boo,我们这边是打算使用 C#,在使用语言的问题上并没有做太多的讨论…
CharacterMotor.cs using UnityEngine; using System.Collections; /** * @Author : www.xuanyusong.com */ [RequireComponent(typeof(CharacterController))] [AddComponentMenu("Character/Character Motor")] public class CharacterMotor : MonoBehaviour { //…
一个引擎,最重要的就是工具,工具除了提升开发速度,提供可视化操作环境以外,还带了容错功能. 它使得大家的工作局限在一定的范围内,比如一个变量的配置,或者是一些类型的选择. 使用编辑器,使得既使不太明白的人,也能快速找到方法.如果是采用手工配置的话,那每一个东西需具备相当完善的文档,文件加载时,得提供高强度的错误效验和错误提示功能. 否则很容易陷入困境. UNITY3D的IDE本身的强大,除了表现在其提供的强大功能外,更让人喜欢的,是它高度的可扩展特性.这也是一个项目开发中,必不可少的环节. 关于…
这是今天做的一个小功能 策划想要一个时间滚动效果 那就搞呗!思路和之前写的tweenFillAmount一样 传送门:http://www.cnblogs.com/shenggege/p/4798923.html 时间格式:00:00:00 以下是代码,可以结合上文的链接一起看 #region HeadComments /* ======================================================================== * Copyright (…
不是什么技术文章,纯粹是我个人学习是遇到一些觉得需要注意的要点,当成笔记. 1.关于调试,在Android下无法断点,Debug也无法查看,查看日志方法可以启动adb的log功能,或者自己写个GUI控件直接在屏幕上显示Info 2.所有自定义的编辑器扩展插件脚本必须放在Editor文件夹里,不然会导致编译程序时出错,放到Editor文件下,编译成游戏时才会忽略这些脚本 3.打包资源时,假设是在移动设备上使用,打包方式务必选择成:BuildTarget.AndroidBuildPipeline.B…
http://gamerboom.com/archives/36432 作者:Richard Fine Unity3D的方便之处在于,它很容易地扩展编辑器套件.每款游戏都对加工有着不同的需求,可以快速地以完全集成的方法来构建这些内容并极大地提升开发速度. 目前有大量复杂的软件包提供以基本Unity功能套件为基础的复杂工具,从视觉脚本编辑器到编辑器内导航网格生成.但是,有关如何自行构建此类事物的程序说明却很少.我将在下文列举某些在自己的工作中总结的编辑器定制相关信息. Unity-Window(f…
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/40723789 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 邮箱: happylifemxy@163.com 作为一个系统介绍Unity3D中Shader编写的系列文章的开篇,本文的第一部分为系列文章的前言,然后第二部分介绍了这个系列文章中我们会使用的游戏场景创建方式,最后一部分讲解了如…
效果 BurnToFadeOut.shader代码 Shader "BurnToFadeOut" { Properties { _StartColor ("Start Color", Color) = (1,1,1,1) _EndColor ("End Color", Color) = (1,1,1,1) _MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}…
先上效果,左边模糊 其实用的是Unity Stard Effect里的资源,一个脚本一个shader //脚本代码 using UnityEngine; using System.Collections; [ExecuteInEditMode] [AddComponentMenu("Image Effects/Blur/Blur")] public class BlurEffect : MonoBehaviour { /// Blur iterations - larger numbe…
项目开始使用IL2CPP编译,后果是可执行文件急剧增加. google后发现国外一大神写的方法,原帖在这http://forum.unity3d.com/threads/suggestion-for-reducing-the-size-of-il2cpp-generated-executable.338986/ 懒得愿意看原帖的直接看我的方法吧 1.新建一个Mono工程,命名成UnusedByteCodeStripper2,贴如下面代码,编译出 UnusedByteCodeStripper2.e…
1. AddComponentMenu 描述:这个属性可以在Component这个菜单栏下加自己定义的子菜单,这样可以快速添加常用的脚本.该属性要用在类上. using UnityEngine; using System.Collections; [AddComponentMenu("MyComponent/Foo")] public class MyEditor : MonoBehaviour { // Use this for initialization void Start (…
unity常用的是C#语言.而C#语言有Attribute属性.特别强大.所以unity开发的时候.可以在变量加Attribute属性来达到开发人员想要的效果 RequireComponent:约束组件 [RequireComponent(typeof(Rigidbody))]  当附加该组件的时候.会强制自动添加组件typeof(Rigidbody) RequireComponent约束的组件.是不能删除的.除非先删除当前脚本 [RequireComponent(typeof(Rigidbod…
UIWidget NGUI的UIWidget是所有组件的基类,它承担了存储显示内容,颜色调配,显示深度,显示位置,显示大小,显示角度,显示的多边形形状,归属哪个UIPanel.这就是UIWidget所要承担的内容.在UIWidget的所有子类中都具有以上相同的属性和任务.UIWidget和UIPanel的关系非常密切,因为UIPanel承担了UIWidget的所有渲染工作,而UIWidget只是承担了存储需要渲染数据.所以,在UIWidget在更换贴图,材质球,甚至更换UIPanel父节点时它会…
HUD Text 很早之前就有闻于NGUI中的HUD Text插件,今天得以尝试,看了会儿官方的文档,楞是没给看明白,官方的ReadMe.txt写的使用方法如下: 官网Usage 1. Attach the HUDText script to a game object underneath your UIRoot and set the font it should use. 2. To make it follow an object drawn with another camera, a…
Unity的编辑器可以通过写脚本进行界面定制,包括添加功能菜单,今天写游戏Demo用到了记录一下. 为Unity添加子菜单 示例程序 [AddComponentMenu("Defend Homeland/GridNode")] public class GridNode : MonoBehaviour { ...... } 子菜单预览 相应地在Unity的Component菜单下就会有我添加的脚本 在编辑器中执行函数 示例代码 //构建地图 [ContextMenu("Bui…
FPS游戏的小地图 在FPS的这个Demo中,制作了一个小地图,效果图如下 主相机设置 下面来看一下,主相机的设置 解释 通过上面两幅图,能够看出来两个摄像机所渲染的Layer不一样,当然它们所在的Layer也不一样,所以就有了小地图.它其实所照射的场景是整个的游戏场景,而小地图摄像机 摄像机分屏 通过一代码来演示摄像机的分屏 示例代码 using UnityEngine; using System.Collections; /// <summary> /// 把此脚本绑定在Main Came…
好久没写博客了,上一篇是在今年上班之前写的 从年初到现在一篇没写过,每天都在加班,实在太忙了 上班半年多了,学到不少东西 今天分享一下刚写的小功能 TweenFillAmount 用过NGUI Twnner的人看到这个名字就应该知道干啥的了 tweenPosition.tweenRotation.TweenScale.tweenColor..... 就是没有 tweenFillAmount 因为正好要做一个类似血条过渡动画的东西,所以就扩展了一下 时间不多,写得不到位的地方脑补一下 首先我们新建…
背景 游戏中的UI系统或者叫做GUI窗口系统主要有:主要装备窗口(背包,角色窗口也是一种特殊窗口).确实提示窗口(如购买确认).信息提示窗口(一遍没有按钮,ContexntMenu)和特殊窗口(聊天记录或者技能树),前篇已经介绍分析了Inventory Pro确认提示窗口的设计和实现方式,这篇主要讲一下信息提示窗口的实现.本以为提示窗口是比较简单的,毕竟没有按钮事件交互的问题,但是分析了下源代码还是让我有些惊讶,插件作者在提示窗口中考虑到了性能问题,由于本人一直在PC端开发程序没有移动端的经验,…
背景 曾几何时,在Winform中,使用MessageBox对话框是如此happy,后来还有人封装了可以选择各种图标和带隐藏详情的MessageBox,现在Unity3d UGui就没有了这样的好事情了,所有的UI都需要自己来搞定了,幸好还有各种插件,Inventory Pro中的对话框方案不失一种通用,可复用的方案. YY(自己的想法) 所谓通用对话框,如果是自己实现的话有以下几点需要解决,窗体显示控制,窗体UI布局,窗体文字显示,窗体事件回调,窗体显示动画控制,窗体显示声音控制,窗体与其他窗…
以后都按照插件使用,提出问题,回答问题的方式来进行总结和学习 效果图 1.运行相关的例子,场景中出现4个矩形,这4个矩形是用来模拟物品掉落的包裹,移动Player靠近物品 2.使用鼠标点击物品正方体,点击I键打开包裹,这里看到3个掉落包裹正方体已经点没有了,相应的背包里多出三个苹果,至此例子演示完毕 插件使用 使用Inventory Pro进行装备的拾取,有很简单的例子 1.点击菜单Tool,InventorySystem,Main editor 打开自定义Editor 2.在Main mana…
插件功能 按照Demo1的实现,使用插件来实现一个装备窗口是很easy的,虽然效果还很原始但是也点到为止了,本篇涉及的功能用加粗标出,具体的功能如下: 1.实现了两个窗口,通过点击键盘I来,打开或者关闭窗口也就是Toggle功能 2.装备窗口中的物品栏空格数量动态生成可控,可以在属性窗口手动配置 3.窗口具有拖拽功能 4.窗口物品具有拖拽,及窗口间拖拽 5.可以在窗口使用物品的功能,物品有消耗扇形显示功能 具体效果图如下所示: 插件使用 1.具体在UGUI 中的Canvas中创建一个Invent…
Attributes属性属于U3D的RunTimeClass,所以加上以下的命名空间是必须的了.其它倒没什么需要注意的.本文将所有运行属性过一遍罢了. using UnityEngine; using System.Collections;   1.AddComponentMenu 添加组件菜单 这函数只是起方便用,原本的脚本(组建)都会在"Component/Script"菜单下,在类之前声明一下这个,它便可以出现在"Componet"菜单下的任何位置.说明指的是…