Unity3D Script Keynote
【Unity3D Script Keynote】
1、创建GameObject

if(GUILayout.Button("创建立方体",GUILayout.Height(50)))
{
//设置该模型默认为立方体
var objCube = GameObject.CreatePrimitive(PrimitiveType.Cube);
//给此对象添加一个刚体用于整理感应
objCube.AddComponent(Rigidbody);
//设置这个游戏对象的名称
objCube.name="Cube";
//设置此模型材质的颜色
objCube.renderer.material.color = Color.blue;
//设置此模型在坐标
objCube.transform.position = new Vector3(0.0f,10.0f,0.0f);
}
2、通过GameObject.Find可以获取实例引用:
//获取游戏对象
objCube = GameObject.Find("Cube");
objSphere = GameObject.Find("Object/Sphere");
3、通过GameObject.FindWithTag()可以获取标签对象,此方法只能获取第一个添加了些标签的对象。
4、FindGameObjectsWithTag()可以获取某一标签下的所有对象。对象标签可以动态修改:
//得到包含MyTag标签的游戏对象数组
var objs = GameObject.FindGameObjectsWithTag ("MyTag");
//将5号元素的标签修名称修改为TestTag
objs[5].tag = "TestTag";
5、发送消息


6、代码中使用Instantiate()方法克隆游戏对象。
//克隆一个obj的实例
var clone :GameObject = Instantiate(obj, obj.transform.position, obj.transform.rotation);
//5秒后销毁该实例,
Destroy (clone, 5);
7、添加/删除脚本组件。
if(GUILayout.Button("给立方体添加脚本组件",GUILayout.Height(50))){
//添加cube_script脚本
if(obj)
obj.AddComponent("cube_script");
}
if(GUILayout.Button("删除立方体脚本组件",GUILayout.Height(50))){
//删除cube_script脚本
if(obj)
Destroy (obj.GetComponent ("cube_script"));
}
8、模型的旋转。

9、C#代码中类名必须与文件名一致,否则编译错误。
10、使用Time类:
void OnGUI()
{
GUILayout.Label("当前游戏时间:" + Time.time);
GUILayout.Label("上一帧所消耗的时间:" + Time.deltaTime);
GUILayout.Label("固定增量时间:" + Time.fixedTime);
GUILayout.Label("上一帧所消耗固定时间:" + Time.fixedDeltaTime);
}
11、获取随机数:
int a = Random.Range(0,100);
float b = Random.Range(0.0f,10.0f); Debug.Log("获取一个0-100之间的整形随机数" + a);
Debug.Log("获取一个0.0f-10.0f之间的浮点型随机数" + b);
Unity3D Script Keynote的更多相关文章
- Unity3D Script KeynoteII
[Unity3D Script KeynoteII] 1.使用代码操作Particle. //粒子对象 GameObject particle = null; //粒子X轴方向速度 float vel ...
- Unity3D Physics Keynote
[Unity3D Physics Keynote] 1.在哪设置Layer Collision Matrix? "Edit"->"Project Settings& ...
- Unity3D Script Execution Order ——Question
我 知道 Monobehaviour 上的 那些 event functions 是 在主线程 中 按 顺序调用的.这点从Manual/ExecutionOrder.html 上的 一张图就可以看出来 ...
- Unity3D 中的3种坐标系
Unity3D Script API : Camera 若干文章: 1.Screen VS Viewport What is the difference 2.Screen,Viewport有什麽區別 ...
- 使用 Sublime Text 2 开发 Unity3D 项目
用 Sublime 已经有很长一段时间,很舒适,很贴心,根本停不下来.之前因为是开发页游,所以是用 AS3 开发,近段时间,新开了个手游项目,引擎方面选定了 Unity3D,老实说,之前没有太多的 3 ...
- 完整Deploy WebPlayer的Config
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- [Unity菜鸟] Unity Web Player 相关问题 (待完善)
1. 发布网页版Unity自适应网页大小 发布网页版,Unity3D自适应网页大小.这个问题困扰了我很长时间,今天终于把他解决了,给大家分享一下. 这里用Uinty4.0发布网页版,我去掉了里面的标题 ...
- Unity3D Keynote
[Unity3D Keynote] 1.场景文件扩展名为.unity. 2.up为Y正方向,down为Y负方向,right为X正方向,left为X负方向,forward为Z正方向,back为z负方向. ...
- U3D——Unity3D的脚本-script入门
Unity3D的基本操作非常easy就能掌握了,接下来就是游戏系统的核心部分:脚本. 什么是Script(脚本)?简而言之,就是使用代码来运行一系列动作命令的特殊文本,它须要编译器来从新解读.U ...
随机推荐
- 深入.NET平台和C#编程 错题录
1.在C#中,关于文件操作相关的类说法正确的是(AB) <选择二项> A:FileInfo类提供了用于操作文件的实例方法 B:File类提供了用于操作文件的静态方法 C:Directory ...
- POJ 3693 (后缀数组) Maximum repetition substring
找重复次数最多的字串,如果有多解,要求字典序最小. 我也是跟着罗穗骞菊苣的论文才刷这道题的. 首先还是枚举一个循环节的长度L,如果它出现两次的话,一定会包含s[0], s[L], s[2L]这些相邻两 ...
- UVa 537 Artificial Intelligence?
题目大意:输入一个字符串,根据物理公式P=U*I,已知其中两个量,求第三个量,结果保留两位小数. Artificial Intelligence? Physics teachers in hig ...
- UVa 10891 (博弈+DP) Game of Sum
最开始的时候思路就想错了,就不说错误的思路了. 因为这n个数的总和是一定的,所以在取数的时候不是让自己尽可能拿的最多,而是让对方尽量取得最少. 记忆化搜索(时间复杂度O(n3)): d(i, j)表示 ...
- HDU 5366 The mook jong (简单DP)
题意:ZJiaQ希望把木人桩摆在自家的那个由1*1的地砖铺成的1*n的院子里.由于ZJiaQ是个强迫症,所以他要把一个木人桩正好摆在一个地砖上,由于木人桩手比较长,所以两个木人桩之间地砖必须大于等于两 ...
- 【英语】Bingo口语笔记(29) - Run系列
- 初步认识mongodb文件
初步认识mongo. README文件介绍压缩包中各个文件的功能. bin/mongod - MongoDB server bin/mongo - MongoDB client bin/mongodu ...
- linux上改变mysql数据文件的位置
用软连接改变了/var/lib/mysql的位置,并设置好mysql.mysql的权限,但是发现还是不能启动. 发现/var/log/mysqld.log 150308 16:16:02 [Warni ...
- Java 中带参带返回值方法的使用
如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法. 例如:下面的代码,定义了一个 show 方法,带有一个参数 name ,方法执行后返回一个 String 类型的结果 调用带参带返回值的 ...
- ios 内存管理 心得
- alloc, copy, retain会把引用计数+1 - release会把引用计数-1 - 局部变量如果初始化时不是autorelease的,要及时调用release释放,并且赋值为nil否则 ...