- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
unityd游戏开发之Transform和Input学习【DOC精选】
?在Unity的脚本中,可以定义一些特定的函数,这些函数会在满足某些条件时由Unity自动调用,它们被称为必然事件(Certain Events)。而Start和Update正是最常用的两个事件,因此Unity默认为新建的脚本添加了这两个事件。?
?
? ? 还有一个我们也会经常用到Unity没有默认添加的事件——Awake
? ??1、Awake():唤醒脚本,此方法为系统执行的第一个方法,用于脚本的初始化,在脚本的生命周期中只执行一次。
?2、Update():正常更新,用于更新逻辑。每创建一个脚本,脚本中会默认添加这个方法。此方法每帧都会由系统自动调用一次。
?3、Start():此方法在Awake()方法之后,Update()方法之前执行,并且只执行一次
坐标系
? ? ? ???----World Coordinate System--世界坐标系:
? ? ? ? ?这个坐标系将世界空间或模型空间作为一个整体。? ? ? ? ?世界空间是世界坐标系,世界坐标系是软件用于在场景中追踪对象的。当你看到视口中的主珊格,你就见到世界空间坐标系。世界空间是固定不变的。? ? ? ? 在世界坐标系下,从前视图front看去,X轴正方向指向(屏幕)右侧,Z轴正方向指向(屏幕)上方,Y轴正方向背离你。
? ? ? ? ?----Local局部坐标(本地坐标):
? ? ? ? 使用所选择对象的坐标系统。一个对象的局部坐标来自它的枢轴点。你可以通过使用选项中的Hierarchy命令面板, 相对于对象调整局部坐标的位置和方向。? ? ? ? 当局部坐标处于激活状态,按钮“Use Transform Center”是不起作用的,所用的变换使用局部坐标轴作为变换的中心。在一个选择集中的几个物体,每个分别使用它自己的中心来做变换。
? ? ? ? ?
? ? ? ??游戏对象的Transform
? ? ??Transform属性可以进行位置、旋转、大小的设置
位置:position
? ? ? ? 旋转:rotate
? ? ? ? 大小:localScale
? ? ? 如果要操作脚本当前使用的GameObject,则可以省略要操作的GameObjiect.
? ? ??Vector3向量
? ??? ? ?Vector3是Unity中定义的一个含有x,y,z三个字段的类,可以表示位置点,也可以表示一个向量。Vector3乘以数值表示对向量的三个值乘以相应的值,v1-v2则表示从v2指向v1的向量。? ? Vector类内置成员:up,down,left,right,forward,back,zero????写法:transform.Translate?(Vector3.forward);?????????transform.Translate?(new?Vector3(10,0,0));
? ? ??
Transform.RotateAround?围绕旋转
用一个小例子来完成对它的介绍:
实现地球围着太阳转
脚本代码:
using UnityEngine;
using System.Collections;
public class Sphere1 : MonoBehaviour {
? ? ? ? private GameObject earth;
? ? ? ? private GameObject sun;
? ? ? ? // Use this for initialization
? ? ? ? void Start () {
? ? ? ? ? ? ? ? earth = GameObject.Find (earth);//找到相对应的对象
? ? ? ? ? ? ? ? sun = GameObject.Find (sun);//
? ? ? ? }
? ? ? ??
? ? ? ? // Update is called once per frame
? ? ? ? void Update () {
? ? ? ? ? ? ? ? earth.transform.RotateAround (sun.transform.position,Vector3.up,0.5f);
? ? ? ? }
}
? ? ? ?把脚本放到地球游戏对象上。
? ? ? ?
? ? ? ?给物体施加普通力
? ? ??同样举例来说明
? ? ??点击鼠标左键向XZ轴对角线方向发射小球
脚本代码:
using UnityEngine;
using System.Collections;
public class Sphere : MonoBehaviour {
? ? ? ?
您可能关注的文档
- Unit Ocean Laws参考【DOC精选】.doc
- Unit Open the Door to Forgiveness课文翻译综合教程二【DOC精选】.doc
- Unit Office Automation【DOC精选】.doc
- Unit passage A【DOC精选】.doc
- Unit quiz答案【DOC精选】.doc
- unit Quantitiy and Packing【DOC精选】.doc
- Unit Safety First【DOC精选】.doc
- Unit Shapes【DOC精选】.doc
- Unit Saving the world教案【DOC精选】.doc
- UNIT SIGNAL WORDS【DOC精选】.doc
文档评论(0)