Unity 2D游戏实例(2)手游开场动画的实现

发表于2018-01-22
评论0 4.2k浏览

一个酷炫的开场动画多多少少可以让游戏高大上起来(对于外行来说…)不管怎么说,我们发现基本上任何一款游戏都有自己独特的开场动画用来显示自己的品牌logo。所以接着我们上次教程,开始和大家分享如何制作出手游的开场动画。主要有以下内容:

  1. 安卓Apk文件的发布生成
  2. 如何在安卓平台播放视频
  3. 基本脚本的编写

这里要注意,所谓的开场动画不过是一个开场视频,我们只是想办法让其在手游刚进入时自动播放。

1. 制作开场动画视频

我之前开发的游戏用的是AE(After Effect),是一款专业的影视后期处理软件,可以制作比较酷炫的视频,做电影效果处理等。当然,如果大家就是想学习一下,可以先随便找一个.mp4格式的视频,拖到文件浏览器里面。新建一个文件夹命名StreamingAssets,把视频拖到这个文件夹里面。

2. 创建并编写C#脚本

鼠标右键工程文件目录,点击create—C# Script。这里我们可以看到,除了C#还可以用javascript来编写,至于区别,我只能说javascript比较容易上手,C#比较接近java。大工程的话还是C#是主流。同时我们也能看到还可以创建shader,prefab,animation等等,这些都是游戏中必不可少的内容,我们之后再详谈~


我们在下载Unity的时候会附带一个代码编辑器—MonoDevelop,unity脚本文件默认用它打开,当然你也可以使用VS,Notepad++等。

新文件内容如下:

using UnityEngine;
using System.Collections;
public class StartMovie : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}

这里生成了一个类(就是文件的名字)继承于MonoBehaviour。有UnityEngine,System.Collections两个必须使用的命名空间。

Start函数表示游戏一开始所执行的内容,只执行一次。

Update表示每一帧执行的内容,如果想不断更新数值一类的就可以写在这里。

下面需要我们开始写代码了,目的是实现android平台上的视频播放。

这里就需要大家有查资料的能力,首先第一个必备网站—unity的API官网

这里无疑是最权威的使用文档了,你可以在这里查到所有使用的API。不过当然都是英文的,而且有些API没有例子。

如果想看中文的API可以看Unity圣典,不过可能不够全面。

如何搜到自己想要的功能?我一般都是搜索功能相关的关键词,当然你可以先百度,找到合适的API再去到官网查相关的API或者具体的使用规范。

 

下面截图就是官网播放视频的一个API,我们在android上播放开场动画就可以使用这个。


我们只要在start里面加入这一句

Handheld.PlayFullScreenMovie("snowman.mp4",Color.black,FullScreenMovieControlMode.Hidden);

参数分别为视频名称,背景颜色,播放模式(现在的模式表示隐藏播放按钮等界面)

这里大家可以加一句Debug.Log("First");用来调试。我们可以在Console看到输出。

那现在是不是直接点击运行就行了?当然不行!

我们刚刚就是写了句代码,得让他关联到游戏的对象才行~所以我们直接把写好的脚本拖到我们之前在场景中的图片上(场景中的物体都有可以,摄像机也可以,目的是让脚步在游戏中运行)

 

3. 下面开始讲如何发布android包了

①  虽然是跨平台不需要大家写java代码,但是android基本的SDK还是需要的,所以java的开发环境也是需要的。

附java环境变量设置教程,SDK下载网址:

http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html

http://tools.android-studio.org/index.php/sdk

下载完SDk后需要点击SDKmanager.exe运行下试试有没有需要的安卓版本,当前最新的Android6,大家可以多安装几个版本,高版本的系统可以运行低版本发布的apk,但是低版本的系统不能运行高版本发布的apk(最新的手机一般是安卓5.0,可以运行由低版本SDK发布的应用)。

关于SDK版本这里还需要多说一些,目前来通过看下载新版本的SDK最方便的办法就是翻墙(大家可以考虑弄个VPN,毕竟也经常会用到),这样选中更新列表需要更新的内容,点击Install Package就可以了。或者也可以找到网上下载好的SDK资源。

Unity5.0发布Android包时可能会提示你SDK Tools is out of date,这样就需要更新SDK。如果忽略的话,发布的apk文件也可能安装成功,但是运行会出现问题。

②  环境搭建完毕,我们接着回到Unity界面。

这里我们首先配置一下SDK的环境。点击Edit—preference—ExternaTools—AndroidSDK location,选择SDK的根目录

 

③  就如我们上次发布PC游戏一样,还是先要点击Build Setting,之后我们选择安卓并点击下面的switch plantform。随后,我们可以点击Game窗口下的游戏屏幕分辨率来进行设置,目前我们可能只能满足单个的屏幕分辨率(之后的博客我们会讨论如何适配屏幕)。选择完毕,我们再点击player setting看屏幕的右边,上面的红框里改一下自己的公司名和工程名,同时把下面红框的内容对应的修改(下面第二个红框的Bundle Identifiter内容一定要改,只要不是默认内容就行,否则无法正常发布)


④  下面我们设置一下游戏的图标,先拖进来一张图片,再在Inspector面板—Default Icon导入我们的图标。同时我们还可以修改,加载场景前的图片(一般都是Unity的默认图片),这里我们点击Splash Image,选中select替换即可。

⑤  玩手机游戏还有一个常见的问题就是横屏还是竖屏,对于常用的APP,我们可能要支持横竖屏切换,那么我们就在Resolution and Presentation—Default Orientation设置为AutoRotation,如果想让其保持横屏,我们就选中Landscape left 或者 right。


⑥  准备工作都已完毕,现在可以点击Build了,选择一个路径,开始生成。上面已经讲过,这里可能出现几种导出失败的情况,或者有某些提示警告。

如果是说SDK(SDK Tools) is out of date,或者安卓的最低版本应该是是XXX之类的提示都建议去更新一下SDK的包(需要翻墙或者直接搜资源)。

今天到这里~西片文章我们继续研究,最基本的UI实现思路——开始菜单的制作

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引