基本的回调方法

  • 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. Android混淆打包配置总结

    Android打包失败出现Proguard returned with error code 1. See console的错误 这个问题是由于代码混淆引起的,找不到引用包. 只需在你的proguar ...

  2. mysql千万级测试1亿数据的分页分析测试

    本文为本人最近利用几个小时才分析总结出的原创文章,希望大家转载,但是要注明出处 http://blog.sina.com.cn/s/blog_438308750100im0e.html 有什么问题可以 ...

  3. ActiveMQ(5.10.0) - Message Redelivery and DLQ Handling

    When messages expire on the ActiveMQ broker (they exceed their time-to-live, if set) or can’t be red ...

  4. 关于IOS的蓝牙(转)

    关于IOS的蓝牙 首先,你要了解你的目的是什么,一般的IOS蓝牙开发有以下三种目的: 1. IOS设备和IOS设备之间交互 好消息是:ios6.0可以把iPhone手机当从设备了,可以两台iPhone ...

  5. 更换用installshield打包生成exe文件的图标【转】

    最近在研究用installshield2010为自己做的产品打包,自己在网上找写资料,胡乱折腾,最后弄成了一个exe安装包,想要修改exe文件的图标,发现Basic MSI project 无法用in ...

  6. Html.ActionLink 几种重载方式说明及例子

    本文整理了该方法的几种重载形式:一 Html.ActionLink("linkText","actionName")该重载的第一个参数是该链接要显示的文字,第二 ...

  7. JAR、WAR、EAR 区别

    JAR包 JAR 文件格式以流行的 ZIP 文件格式为基础: 与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库.组件和插件程序,并可被像编译器和 JVM 这样的工具直接 ...

  8. [GeekBand] 面向对象的设计模式(C++)(2)

    本篇笔记紧接上篇,继续学习设计模式. 4. 对象创建类设计模式 通过对象创建模式绕开new,来避免对象创建(new)过程中所导致的紧耦合,从而支持对象创建的稳定.它是接口抽象之后的第一步工作. 4.1 ...

  9. python 自动化之路 day 10 协程、异步IO、队列、缓存

    本节内容 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 RabbitMQ队列 Redis\Memcached缓存 Paramiko SSH Twsited网络框架 引子 到目 ...

  10. OpenCV3读取视频或摄像头

    我们可以利用OpenCV读取视频文件或者摄像头的数据,将其保存为图像,以用于后期处理.下面的实例代码展示了简单的读取和显示操作: // This is a demo introduces you to ...