22前情提要:
笔记只是方便自己巩固基础,大部分均为白话文或者一些有趣,幽默的言论,如果该笔记能为你带来疑惑的解答,或者是新的感发,亦或是被某些字迹逗笑,本人感到十分开心,如果您觉得文章有瑕疵可以评论,本人会虚心接纳,从而进行整改。(」°ロ°)」
本篇文章是面向小白的,想入门Unity但是没有基础,如果你想以此为兴趣,不妨关注一下,本人在未来会持续更新有关Unity的相关内容(也算是一种分享吧!!!) o( 〃゜▽゚〃)ゝ
本篇重点:变量(Variable)
一个变量可以由它的开放性+类型+名称构成,比如:public int Hp这样就声明了一个int型的变量用来储存玩家的血量,至于开放性作为小白,我们只讲解public和private
变量的开放性:
public (公开的):
声明为public的变量是允许在外部访问的,当然作为小白的可能不懂,但是我们只要知道变量一旦声明为public变量就可以在Unity上频繁调节他们的数据。(前提是已经将脚本挂载到Game Object上,当然不懂也没关系,你随便在B站,或者CSDN找一篇文章来了解Game Object,或者是等我更新下一个文章)♡╰(゚x゚)╯♡
private(私有的):
唉!通过上面对public的阐述我们会想到那什么时候将变量声明为private?ლ(。-﹏-。 ლ)
只有我们在程序内部,且与外部无关,或者已经固定好的的变量才会声明为private,比如玩家的生命值......ᕙ(⇀‸↼‶)ᕗ
变量类型:
简单类型:
int表示整数:
float表示小数(浮点数):
bool表示判断:
string表示字符串 :
以上四种简单类型是我们必须去了解的,当然他们也很简单,你可以去菜鸟教程上了解一番。
复杂类型:
unity中的隐形容器Game Object就是复杂类型之一,你也可以理解为是为我们提前封装好的类(class),其中为Game Object添加的组件也算是各种各样的复杂类型。
public GameObject Player这样就声明了一个复杂类型的变量
ok,在了解这些后,我们简单地在Unity中实现一下对2D人物的移动
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMove1 : MonoBehaviour
{
public float PlayerSpeed;
private Vector3 PlayerInput; // 声明了一个三维的储存位置的引用变量 //
void Update() // 生命周期函数我们先不做了解后续我会单独出一期对Unity生命函数的讲解 //
{
PlayerInput = new Vector3(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
transform.position += PlayerInput * PlayerSpeed * Time.deltaTime;
// Time.deltaTime 表示时间 //
}
}
将PlayerMove1拖给对象,运行并为PlayerSpeed赋值就可以实现人物的移动了(; ̄︶ ̄)
当然你还会有疑惑,但是这不是问题,在学习一门语言,或者是其他技能都需要我们自己去研究,对于Input.GetAxisRaw()的功能我建议去Unity文档去查看,这样你也学会了如何自己学习,并理解Unity的一些工作原理和组件 ∑d(°∀°d)https://docs.unity.cn/cn/2022.3/ScriptReference/Input.GetAxisRaw.html
我们下期再见QAQ!!!