unity 脚本中的一些attribute

1.Serializable

The Serializable attribute lets you embed a class with sub properties in the inspector.

让你能够把它嵌入到另外一个class时在属性编辑器里能将其展开

 

[System.Serializable]

class Test{

public int p = 5;

public Color c = Color.white;

}

 

public class Test2:MonoBehaviour{

     public Test[] t;

}

 

这样在编辑器里Test里的t是能进一步展开的,这个很有用

 

时间: 2024-09-12 23:56:08

unity 脚本中的一些attribute的相关文章

unity3d-unity脚本中使用Instantiate创建GameObject的实例时,如何设置实例的脚本的参数

问题描述 unity脚本中使用Instantiate创建GameObject的实例时,如何设置实例的脚本的参数 例如: Create是某个脚本类(即public class 某某某 : MonoBehaviour)中的方法,该方法要在必然事件Update中调用(这个前提不能改变). bulletType是GameObject的实例,该变量对应的prefab有脚本BulletForward 脚本BulletForward的脚本类有属性velocity. private void Create(fl

unity3d-unity脚本中的Transform指什么?

问题描述 unity脚本中的Transform指什么? 假设下面只涉及类型Transform和类型GameObject 现有Transform的实例t.t代表下列哪一个? 1.三元组(位置.旋转.缩放): 2.t唯一地确定了一个GameObject的实例. 我认为是第二个,因为Transform有实例方法GetComponent().例如GetComponent在下面的脚本中出现: public class BulletCreater : MonoBehaviour { public Trans

unity3-unity问一下用C#做脚本,在切换到别的场景中时这个脚本中的staic、new为什么还存在

问题描述 unity问一下用C#做脚本,在切换到别的场景中时这个脚本中的staic.new为什么还存在 unity3d这个脚本在这个场景(A)中,不过我切换到别的场景(B)中,前面场景(A)的staic.new为什么还存在.当我切换回来A时static定的变量值没变,如果清除了应该归0呀.切换场景不是这个场景就结束了吗,应该消除static.new的缓存的吧?? 解决方案 C#中的static代表一直存在内存中,不会被释放,所以如果你的数据不是整个生命周期都有效,那就不要随便static,至于n

分享:Unity* 3D 中由英特尔 实感 技术驱动的第一人称控制器

问题描述 [Unity*3D中由英特尔实感技术驱动的第一人称控制器]在本文中,我将使用英特尔实感软件开发套件(SDK)中的手部追踪算法来控制Unity*3D第一人称控制器(FPC)的位置和LookAt.场景主摄像头依然是含有默认FPC的场景的标准配置.然后在屏幕的左下角和右下角分别添加第二个和第三个摄像头,以显示可反映用户左右手活动的光晕型Unity3D资产(由英特尔实感3D摄像头解析).这种解析然后会连接至控制FPC位置和定向的默认位置和LookAt脚本.本系列共有三篇文章,详情: 解决方案

《Unity着色器和屏幕特效开发秘笈》—— 2.6 在Unity编辑器中创建程序纹理贴图

2.6 在Unity编辑器中创建程序纹理贴图 有时你为了创建更多不一样的效果,需要动态创建纹理或者在运行时修改它们的像素值,这种情况通常被称为程序性的纹理效果.不同于你在图像编辑软件中手动制作一些新纹理,你需要在一个二维空间中创建一组像素然后将其应用到一个新的纹理上.再将创建的新纹理传入到着色器中,使它们可以在着色器中进行计算.这种技术在已有的纹理贴图上进行绘图是非常有用的,我们使用动态创建纹理贴图的方式可以制造一种玩家和游戏环境之间的互动效果.也可以用它来制作一些贴花的效果,或者创建一些可以在

Unity 3D中的内存管理

本文欢迎转载,但烦请保留此行出处信息:http://www.onevcat.com/2012/11/memory-in-unity3d/ Unity3D在内存占用上一直被人诟病,特别是对于面向移动设备的游戏开发,动辄内存占用飙上一两百兆,导致内存资源耗尽,从而被系统强退造成极差的体验.类似这种情况并不少见,但是绝大部分都是可以避免的.虽然理论上Unity的内存管理系统应当为开发者分忧解难,让大家投身到更有意义的事情中去,但是对于Unity对内存的管理方式,官方文档中并没有太多的说明,基本需要依靠

在PowerScript脚本中访问数据窗口中的数据

访问|脚本|数据 在PowerScript脚本中访问数据窗口中的数据张健姿 01-6-22 下午 03:50:25 在4.0 以 前 的 版 本, 如 果 您 想 在PowerScript 脚 本 中 访 问数 据 窗 口 中 的 数 据, 方 法 只 有 一 种, 那 就 是 使 用SetItem 和GetItem 系 列 的 函 数, 指 定 您 所 要 访 问 的 某 一 行 列 的 值, 这 一 方 法的 局 限 性 在 于 您 一 次 只 能 访 问 到 一 个 数 值. 而 在5.0

提前认识软件开发(31) 数据库脚本中的begin与end

在数据库脚本中,begin与end是一对奇怪的单词.缺少它们,某些代码看起来会让人一头雾水:添加它们,代码的结构瞬间就清晰了. 确实,begin与end作为代码语句的开始和结束标志,可以让脚本程序的逻辑明确,易于阅读. begin与end主要用在以下地方: 1. if.else.else if.while等语句中 if.else.else if.while等语句要自占一行,执行语句不得紧跟其后,不论执行语句有多少都要加语句块标志begin-end. 脚本文件中的begin和end应独占一行并且位

提前认识软件开发(30) 数据库脚本中的空行与空格

在数据库脚本中,空行与空格起着"锦上添花"的作用.恰当地使用它们,可以提高代码的规范性及可阅读性,进而提升数据库的编程效率. 1. 空行 空行起着分隔脚本段落的作用,适当的空行可以使脚本的布局更加的清晰.空行的作用有以下几个: (1) 用于分隔两个数据表的创建脚本 示例: create table tb_example1 ( [表内容实现代码] ) go -- 空行 create table tb_example2 ( [表内容实现代码] ) go (2) 用于分割两个存储过程的创建脚