横板卷轴射击游戏笔记
一、背景滚动实现方法
创建一个3d对象Quad,重命名为SimpleBackground,调整好大小(跟图片差不多大)
新建一个材质,设置shader为Unlit/Textu
将图片texture type设置为default,拖入材质。
将材质拖进SimpleBackground,这样就做好了背景。
通过实时更改材质中offset偏移值,来实现滚动效果
滚动代码如下:将Start()改为每帧刷新的协程(模拟Update())
Material material;
[SerializeField] Vector2 scrollVelocity;//速度
void Awake()
{
material = GetComponent<Renderer>().material;
}
private IEnumerator Start()
{
while (GameManager.GameState != GameState.GameOver)
//游戏状态不为gameover可运行场景滚动
{
material.mainTextureOffset += scrollVelocity * Time.deltaTime;
yield return null;
}
}
二、Input System动作输入系统
Input System(安装包)实现了一个,可使用任何类型输入设备来控制unity内容的系统。它旨在替代unity旧的输入管理器(UnityEngine.Input类),并且更为强大,灵活易用。
安装输入系统
Window->Pacjage Manager->UnityRegistry(搜索input)->安装
实现功能
新建InputActions文件
打开InputActions,绑定输入信号。
创建c#文件,注意名字可自定,我取名为PlayerInputActions。
新建一个PlayInput类,继承于ScriptableObject,//ScriptableObject:一个类,如果需要创建【无需附加到游戏对象】的对象时,可从该类派生。【】表示强调。
继承PlayerInputActions类中的几个接口,实现接口。
未完待续...(因为是好早之前看视频学的,详细的内容得去重看视频再补,目前还没那个时间)
Loading...