手写帝国之崛起 -- Unity游戏开发篇(总述)

手写帝国

该游戏是在校期间写的一款手写汉字识别的小游戏(虽然现在还是在校hhhh,另外美工超强,后台也超强)
本游戏主要使用Unity开发,其中手写识别的功能是在AS(指Android Studio,下面直接简写了,懒得打了hhhh)中实现并导出arr包供Unity中使用。
不说话,先上GitHub传送门 ,哈哈

对于Unity,基本上所有的界面都是通过在Unity中实现了,而手写的功能是在AS中实现(手写的效果和手写识别都是在AS中实现)。上图

(真心无奈,为了满足那个低于5M的要求,不断压缩像素,缩短时间,没办法,将就看吧,之后有时间再在其他地方上传个高清无法的,另外大家也可以直接下apk,方便省事)
对于手写识别的功能,是使用了灵云提供的sdk,然后在AS中封装好导出arr包。 (又想吐槽下灵云,之前有问题找客服,一开始不知道我是学生,巨热情,后来我一说,结果就一脸冷漠,爱搭不搭)
哎,一个多月没碰这个东西了,也没时间完善,现在写博客,几乎都忘光了。两个月左右写的项目,估计要用两个月才能把博客写完~~~~

IDE信息

Unity 2017.3.0f3(64bit)
Android Studio 3.1
PHP Storm(用于后台开发,后台使用php开发)

上效果图

是时候展示下我们强大的UI了hhhhh

登录和注册界面

主界面

关卡选择界面

人物选择

实现功能

  1. 手写输入功能:利用原生Android实现手写功能并记录手写轨迹数据,在通过灵云提供的sdk分析获取的轨迹数据,从而实现手写字体识别的功能。
  2. 自动提交功能:通过Android与Unity相互通信原理,在Unity实现计时器功能,如果手指脱离屏幕时间超过一定时间间隔则自动提交轨迹数据,并进行分析。
  3. 场景栈:在Unity中没有返回栈的概念,即不能通过返回键返回上一个场景。该功能主要利用一个静态的全局类记录所有场景的跳转信息并监听返回按钮,实现了返回栈功能。
  4. 封装网络请求:将应用所需的网络请求封装到一个静态的工具类,在获取网络数据时只需调用相应的静态方法并实现回调方法即可。
  5. 封装平台调用类:由于应用主要运行在Android平台,为方便调用Android系统提供的API,实现一个专门用于调用Android原生方法的工具类。
  6. 计分系统:主要利用攻击次数,错误次数,角色死亡数等数据生成最后的评分数据
  7. 扣血系统:利用角色和敌人的攻击力和防御值等数据来实现主角和敌人的扣血机制
  8. 敌人AI:实现计时器功能,在一定的时间间隔内发动攻击
  9. 动画控制系统:利用攻击、防御、治疗以及暂停继续等按钮并结合是否被攻击等数据控制各个角色以及敌人的动画
  10. 登录注销逻辑:用户登录后保存应用的登录状态,后续无需登录,切换账号可通过注销功能实现

你可能感兴趣的:(Unity)