Unity脚本编写指南:Java脚本篇

一、刚体

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

二、脚本

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

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

unity java脚本编写 unity如何编写脚本_成员变量

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;

unity java脚本编写 unity如何编写脚本_键盘输入_02


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空