Unity Transform(变换)和Input
来源:互联网 发布:宁波java软件公司排名 编辑:程序博客网 时间:2024/06/06 01:51
欢迎来到unity学习、unity培训
这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌
代码先知
1、必然事件:
定义:
在Unity的脚本中,可以定义一些特定的函数,这些函数会在满足某些条件时由Unity自动调用,它们被称为必然事件(Certain Events)。
常用的:
(1)Awake():唤醒脚本,此方法为系统执行的第一个方法,用于脚本 的初始化,在脚本的生命周期中只执行一次。
(2)Update():正常更新,用于更新逻辑。每创建一个脚本,脚本中都会默认添加这个方法。此方法每帧都会由系统自动调用一次。
(3)Start():此方法在Awake()方法之后,Update()方法之前执行,并且只执行一次
(4)LateUpdate():此方法在Update()方法执行后调用,同样每一帧都调用。
(5)FixedUpdate():固定更新,更新频率为0.02s
(6)OnGUI():OnGUI()在每一帧都会由系统自动调用一次,渲染和处理GUI事件时调用。
2、监视变量:
public int id;//在监视面板里面可以看到
private string name;//在监视面板里面看不到
protected string sex;//在监视面板里面看不到
int age;//在监视面板里面看不到
注:一般只用public和private
Transform变化:
1、定义:
变换组件决定了场景中所有物体的方位,旋转和缩放。每个物体都有一个变换组件。
2、Properties属性
Position 位置
以X、Y、Z坐标系表示变换的位置。
Rotation 旋转
表示此变换以X,Y,Z轴为准的旋转程度,以角度为单位。
Scale 缩放
沿着X,Y,Z轴缩放此变换。值为"1"时表示原始尺寸(物体最初被导入时的大小)
注意:变换组件的所有属性都是相对其父物体进行衡量的,如果此物体没有父物体,这些属性则相对于世界坐标进行计算。
3、Vector3向量
Vector3是Unity中定义的一个含有x,y,z三个字段的类,可以表示位置点,也可以表示一个向量。Vector3乘以数值表示对向量的三个值乘以相应的值,v1-v2则表示从v2指向v1的向量。
Vector类中内置了:
up(写Vector3(0, 1, 0)的简码,也就是向y轴。)、down(写Vector3(0, -1, 0)的简码,也就是向y轴。)、
left(写Vector3(-1, 0, 0)的简码,也就是向x轴。)、right(写Vector3(1, 0, 0)的简码,也就是向x轴。)、
forward(写Vector3(0, 0, 1)的简码,也就是向z轴。 )、back(写Vector3(0, 0, -1)的简码,也就是向z轴。 )、
zero(写Vector3(0, 0, 0)的简码。)几个简化的静态成员
Input按键系统
1、键盘判断
(1)GetKey:当通过名称指定的按键被用户按住时返回true
(2)GetKeyDown:当用户按下指定名称的按键时的那一帧返回true。
(3)GetKeyUp:在用户释放给定名字的按键的那一帧返回true。
(4)GetAxis(“Horizontal")和GetAxis(“Verical”):用方向键或WASD键来模拟-1到1的平滑输入
2、键盘判断
(1):if (Input.GetKey(“up”)) {
print("up arrow key is held down");}
(2):if (Input.GetKey(“down”)) {
print("down arrow key is held down");}
(3):If(Input.GetKeyDown(KeyCode.Escape)){
print(“按下Esc键”);}
(4):If(Input.GetKeyUp(KeyCode.Escape)){
print(“松开Esc键”);}
(5):If(Input.GetKeyDown(KeyCode.A)){
print(“按下A键”);}
(6):If(Input.GetKeyUp(KeyCode.D)){
print(“松开D键”);}
(7):If(Input.GetAxis(“Horizontal")){
print(“按下水平键”);}
(8):If(Input.GetKeyUp("Verical“)){
print(“按下垂直键”);}
3、鼠标判断:
(1)GetButton 根据按钮名称返回true当对应的虚拟按钮被按住时。
(2)GetButtonDown 在给定名称的虚拟按钮被按下的那一帧返回true。
(3)GetButtonUp 在用户释放指定名称的虚拟按钮时返回true。
例子:
①if(Input.GetButton("Fire1")){
print(“按下鼠标左键”);}
②if (Input.GetMouseButton(0)) {
Debug.Log("按下鼠标左键");}
注:当Input.GetMouseButton(0)小括号里参数为1时是鼠标右键,为2时是鼠标中键
4、给物体施加普通力
先给物体添加刚体
transform.rigidbody.AddForce (0,0,1000);
例子:
using UnityEngine;
using System.Collections;
public class third : MonoBehaviour {
private GameObject sun;
private GameObject earth;
// 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);}
}
- Unity Transform(变换)和Input
- Unity transform和Input
- Unity Transform和Input
- Unity之Transform和Input
- Unity学习之transform和Input
- Unity Manual之Transform 变换
- Unity3D------Transform和Input
- recttransform 和transform unity
- Unity3D—transform和Input
- Unity Transform 学习和应用
- Unity 中的gameObject 和 transform
- Transform变换
- Transform变换
- Transform(变换)
- 变换 transform
- Unity之路(四):变换组件Transform
- Unity基础.002Transform场景物体的变换
- transform input
- error:devoce not found或error device offline解决方式
- oracle客户端备份导入导出数据库(exp,imp)
- PHP获取客户端IP地址
- EXPORT_SYMBOL与EXPORT_SYMBOL_GPL
- matplotlib 2D绘图基础
- Unity Transform(变换)和Input
- iOS8 定位新增功能
- 【 Android】handler异步消息处理机制完全解析,带你从源码的角度彻底理解
- TI的ZigBee协议栈不同版本的区别,如何选择合适的协议栈进行产品开发
- Hibernate基础学习总结
- Linux命令之mpstat
- 阐明iOS证书和provision文件
- 使用 Eclipse 的 SVN 插件创建项目的主干/分支/标签
- 在 CentOS 上安装Erlang