基本的回调方法

  • Strat()方法:在游戏场景加载时被调用,在该方法内可以写一些游戏场景初始化之类的代码。
  • update():在每一帧渲染之前被调用,大部分游戏代码在这里执行,除了物理部分的代码。
  • Fixedupdate():这个方法会在固定的物理时间调用一次。也是基本物理行为代码执行的地方。

使用Awake或start方法初始化

Awake方法是在加载场景时运行;start方法是在第一次调用Update或FixedUpdate方法之前被调用;Awake方法运行在所有Start方法之前。

协同程序(Coroutines)

返回值类型为IEnumerator类型

IEnumerator SomeCoroutine(){
yield return ;//等待1帧
yield return new WaitForSeconds();//等待2s
}

脚本常用操作

void Update(){
this.transform.Rotate(,,,Space.World);//相对于世界坐标绕X轴旋转20
this.transform.Translate(,,);//实现物体每帧向前移动1个单位
this.transform.Translate(,,,Space.Self);//相对于自身轴
this.transform.Rotate(*Time.deltaTime,,,);//绕X轴匀速旋转 Vector3 a=gameObject.transform.positon;//获取对象位置坐标
a.y +=*Time.deltaTime;//沿Y轴每秒上升5个单位
gameObject.transform.positon=a;//设置新的位置坐标

Unity中的坐标

X轴为红色的轴表示左右,y轴为绿色表示上下。Z轴为蓝色表示前后

访问游戏对象组件

GetComponent<>();//获得组件

transform.Find("");//获得子对象

transform.parent.Translate(0,0,1);//找到父对象并将其移动

foreach (Transform child in transform){//循环获取所有的子对象

child.Translate(0,5,0);

}

通过名字或标签获取对象

GameObject name =GameObject.Find("somename");//获取名称为somename的游戏对象

GameObject tag =GameObject.FindWithTag("sometag");//获取标签名为sometag的游戏对象

通过传递参数获取对象

void OnTriggerStay(Collider other){

if(other.GetComponent<Rigidbody>()){

other.GetComponent<Rigidbody>().AddForce(0,0,2);}}

通过组件名称获取对象

void Start(){

Test test=FindObjectOfType<Test>();//获取第一个找到的test组件

Debug.Log(test.gameObject.name);//打印挂有test组件的对象的名称

Test[] tests=FindObjectsOfType<Test>();//获取所有找到的test组件

foreach(Test a in tests){

Debug.Log(a.gameObject.name);//打印挂有test组件的所有对象的名称

}}

实例化游戏对象Instantiate(gameObject,transform.position);

unity脚本的基础语法的更多相关文章

  1. 【Unity】第6章 Unity脚本开发基础

    分类:Unity.C#.VS2015 创建日期:2016-04-16 一.简介 游戏吸引人的地方在于它的可交互性.如果游戏没有交互,场景做得再美观和精致,也难以称其为游戏. 在Unity中,游戏交互通 ...

  2. Unity脚本开发基础 C#

    1. MonoBehaviour 类 常用事件响应函数: 2. 访问游戏对象 (1) 通过名称来查找 (2) 通过标签来查找 上述函数比较费时,应避免在 Update 函数调用. 3. 访问组件 对于 ...

  3. 关于JS脚本语言的基础语法

    JS脚本语言的基础语法:输出语法  alert("警告!");  confirm("确定吗?");   prompt("请输入密码");为弱 ...

  4. 9.12 开课第9天 (JS脚本语音:基础语法、语句)

    全称JavaScript    网页里面使用的脚本语音      非常强大的语言 基础语法:1.注释语法   单行注释//    多行注释/**/ 2.输出语法   alert(信息);  弹出信息  ...

  5. Python 基础语法_Python脚本文件结构

    目录 目录 前言 软件环境 Python Script文件结构 导入模块的流程 Python的包package 最后 前言 Python基础语法这一章,主要记录了Python的文件结构.逻辑运算符.算 ...

  6. Scala基础语法 (一)

    如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法. Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的. 我 ...

  7. Python基础语法

    学习一门编程语言,通常是学习该语言的以下几个部分的内容: 基础语法:如,变量的声明与调用.基本输出语句.代码块语法.注释等: 数据类型:通常都为 数字.字符串.布尔值.数组.链表.Map.Set等: ...

  8. javascript基础语法——词法结构

    × 目录 [1]java [2]定义 [3]大小写[4]保留字[5]注释[6]空白[7]分号 前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫 ...

  9. 前端学PHP之基础语法

    × 目录 [1]代码标识 [2]注释 [3]输出 [4]计算表达式 [5]大小写 [6]空白符 前面的话 PHP是一种创建动态交互性站点的强有力的服务器端脚本语言.PHP能够包含文本.HTML.CSS ...

随机推荐

  1. hdu 4669 动态规划

    思路:主要就是一个动态方程dp[now][(j*Exp[len[num[i]]]+num[i])%k]+=dp[pre][j];我用的是滚动数组.其实也就是dp[i][(j*Exp[len[num[i ...

  2. hdu 4374 单调队列优化动态规划

    思路:我只想说,while(head<=rear&&que[rear].val+sum[j]-sum[que[rear].pos-1]<=dp[i-1][j]+num[i- ...

  3. hdu 2838 树状数组

    思路:从后面往前面插,用一个二维树状数组保存,c[i][0]表示比i小的元素和,c[i][1]表示比i小的元素个数. #include<iostream> #include<cstr ...

  4. HttpClient(4.3.5) - HTTP Entity

    HTTP entity HTTP messages can carry a content entity associated with the request or response. Entiti ...

  5. bootstrap学习起步篇:初识bootstrap之表单验证(二)

    学习bootstrap是个过程,它提供给我们的文档上有很详细的说明.包括常用的栅栏布局.页面元素等,这里就不啰嗦了,今天,我就来说下结合jquery的表单验证. 最开始不借助插件,我们需要自己去编写验 ...

  6. Fragment 整个生命周期

      时间 2014-05-21 17:09:53 CSDN博客原文 http://blog.csdn.net/linfeng24/article/details/26491407 Fragment 生 ...

  7. python学习day5--set、函数

    1.set 无序,不重复序列 创建:与dict一样用{},区别在于dict内元素为键值对 se={"123","456,444"} print(type(se) ...

  8. SQL Server 中WITH (NOLOCK)浅析(转潇湘隐者)

    博文出处:http://www.cnblogs.com/kerrycode/p/3946268.html 概念介绍 开发人员喜欢在SQL脚本中使用WITH(NOLOCK), WITH(NOLOCK)其 ...

  9. 169. Majority Element My Submissions Question

    Total Accepted: 95925 Total Submissions: 239241 Difficulty: Easy Given an array of size n, find the ...

  10. Delegate&Event

    Delegate 1.基本类: public class Student { public int Id { get; set; } public string Name { get; set; } ...