[复刻计划]利用Unity复刻一款Puzzling游戏(一)

1

从现在开始,我会复刻一款很有趣的小游戏。这个小游戏实现难度并不复杂,复刻这个游戏是为了强化自身以及开心每一天(虽然只是说说而已)!

注:

此款游戏原地址链接:LUDUM DARE 41.

必读:

开发所使用的Unity版本:Unity2018.4.0f1.
开发所使用的语言及开发工具:C#与Visual Studio.

素材地址:XXX.
素材禁止商用.

项目开源地址:XXX.
项目中含有需要付费的字体(本人只是拿来个人试用),请勿商用,如想商用请前往链接:字体商用授权 进行商用授权.

游戏整体效果

由于这是一个2D游戏,所以我们将Main CameraProjection参数从Perspective修改为Orthographic.

从游戏预览图中可以看出本游戏的拥有活泼生动的动画效果。但是如果缺少这些效果那么游戏的魅力就大大降低了,所以我们来讲解一下活泼生动的动画效果是如何做出来的吧~

我这里的这些动画效果都是可以通过Unity的Animator动画状态机实现的,首先创建一个游戏物体,添加Animator组件,然后创建一个Animator Controller以及Controller中所需要的Animation动画片段,将Animation动画片段拖入Animator面板中,Animator面板需要通过点击菜单Window→Animation→Animator进行召唤,随后点击物体,点击菜单Window→Animation→Animation召唤出Animation动画编辑面板进行编辑.
如果您不会通过Animation进行动画片段的制作,可以先进行学习然后继续本文章.

Animator面板

拼图表情动画状态机只需要添加一个默认的缩放动画即可,这样一来在游戏中该游戏物体就会一直自己缩放的~

拼图上的表情缩放动画录制

当鼠标滑过屏幕中间的拼图时,会出现由小到大的气泡,这里也就需要一个气泡状态机,这里需要对气泡的图片做预先处理——我们有四个气泡,分别在气泡图片的Sprite Editor中设置图片的中心点到合适的位置.

气泡精灵锚点预设

这样一来同一个状态机可以给四个气泡重复使用,该状态机有两个状态,一个是默认状态一个是气泡放大的状态,分别是两个只有一帧的动画,这两个帧分别是Scale(0,0,0)和Scale(1,1,1),用一个bool类型的数值控制他们的状态转换,利用状态转换的自动补间动画实现我们需要的效果.

气泡精灵的录制动画
气泡精灵的录制动画

除了我们制作的动画状态机之外,在表情物体上还需要添加一个控制鼠标滑过事件的脚本,当鼠标进入游戏物体时使气泡转为放大状态并修改游戏物体的贴图,否则气泡就变回默认状态,游戏贴图也是默认贴图.

private void OnMouseEnter()
{
    isTouch = true;
    m_BubbleAnimator.SetBool("touch", true);
    m_Sprite.sprite = sprite_SB2;
}

private void OnMouseExit()
{
    isTouch = false;
    m_BubbleAnimator.SetBool("touch", false);
    m_Sprite.sprite = sprite_SB1;
}

菜单中的其他拼图的也需要相同的操作,但只有第一个拼图点击后会跳转到游戏场景。这里我将以上游戏物体复制了三份,并分别放置到正确的位置更改为对应的气泡图片,再另外新建了一个控制鼠标点击事件的脚本,触发场景跳转,当然您也可以重新写一个单独控制第一个表情的脚本.

到这里我们已经将一个看起来很酷的游戏菜单场景制作完毕.

您还可以继续学习以下文章:

[复刻计划]利用Unity复刻一款Puzzling游戏(二)

本文链接:

https://eggmo.net/archives/230/

转载请注明文章链接地址!Thanks♪(・ω・)ノ

1 + 2 =
快来做第一个评论的人吧~