Unity学习笔记——Unity基础四:刚体及脚本初步

一、刚体

刚体是赋予物体模拟的物理属性的组件。在组件栏中点击add Component->rigidbody便可以为选中的物体创建刚体。当然,现在创建的刚体只有基本的物理属性,更加高级的操作需要借助到脚本来进行控制。

二、脚本

Unity中的使用的脚本语言为JavaScript和C#,目前C#使用的更为广泛。创建脚本可以通过组件栏中点击add Component->new script或者直接在资源文件下create->script然后拖动脚本文件到绑定的物体上。

编辑代码之前,请先检查一下绑定的编辑器。点击左上角菜单栏中的edit->preferences进入设置,随后在External Tools中查看External script Editor 选项

1.基本代码

打开脚本文件后,基本代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class cube1 : MonoBehaviour {

	// Use this for initialization
	void Start () {
		
	}
	
	// Update is called once per frame
	void Update () {
		
	}
}
这里创建了一个和文件名相同的类,有两个默认方法。start()表示初始方法,仅在游戏初始化时加载一次,update()表示持续性执行的方法,会按照FPS的频率来执行其中的代码。

2.获取对象及操作

在类中可直接定义私有变量来获取场景中的对象,例如获取刚体:

//创建刚体引用:
    private Rigidbody cube1Rigidbody;

	// Use this for initialization
	void Start () {
    //获取刚体对象:
        cube1Rigidbody = GetComponent<Rigidbody>();
	}
注意上面的代码,引用在成员变量中创建,而对象则在start()中获取。这么写的具体原因需要对C#有一定的了解。

如果要在游戏中对刚体进行进一步的操作,则需要在update()中写入代码进行控制,例如:

void Update () {
        cube1Rigidbody.AddForce(new Vector3(1,0,0));
	}
cube1Rigidbody为之前创建的成员变量,如果定义在其他方法内的话将无法访问到。AddForce()是刚体对象Rigidbody的一个方法,表示施加力,Vector3是向量类,这里表示创建了一个3维向量(1,0,0)。整句代码的作用是对刚体施加x方向1牛顿的作用力。

如果要将操作绑定至键盘上,我们可以这样写:

//检测键盘水平输入,默认为AD及左右键
        float h = Input.GetAxis("Horizontal");
        cube1Rigidbody.AddForce(new Vector3(h,0,0));
Input是一个输入对象,GetAxis表示获取键盘输入,Horizontal是水平的意思,即获取键盘水平上的输入,一般默认为AD或左右键。这个方法最终会返回一个float类型的数字,我们将这个数字代入到vector中,变可以通过键盘输入来控制刚体的受力了。同理,加入垂直方向上的控制只要在多加一句相似的代码即可:

float v = Input.GetAxis("Vertical");

即获取垂直方向上的输入,默认WS和上下键,吧v替换到vector中的第二项即可。

当然,这样不好控制物体的受力变化,我们可以对vector进行乘操作来控制它,当然这样也是不方便的,我们还能在整个类的成员变量中加入一个公有的变量来控制,使用public定义的成员变量可以和unity编辑界面绑定。

//力的控制:
    public int F = 0;





  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值