基于Unity3D的坦克大战游戏设计与实现

2017-09-08 15:26马晓萍刘静
数字技术与应用 2017年6期
关键词:脚本语言

马晓萍+刘静

摘要:针对传统坦克大战游戏中子弹单枚发射, 血量为零时坦克直接消失,为增加游戏趣味性,本设计以Unity 5.4为开发平台,选择C# 作为脚本语言,在传统游戏基础上设计并实现了增加子弹发射数量、坦克损坏后消失两个趣味、仿真效果。

关键词:Unity;脚本语言;坦克游戏

中图分类号:TP319 文献标识码:A 文章编号:1007-9416(2017)06-0168-01

1 Unity

Unity5是一款利用新增的编辑器功能集,具备了跨越23个平台的多平台交互式游戏 引擎,Unity Cloud Build 服务,使得开发者通过云计算可以更有效的进行游戏和应用的开发[1]。該系统自带人物模型,粒子特效,可视化编程解决方案,天空盒、地形、树等丰富的资源包[2]。Unity 有内置脚本资源包,集成了MonoDevelop脚本编辑器,本设计以C#为脚本语言。

2 实验设计

为了让坦克大战游戏情节更好地展开,增加游戏的趣味性,本次实验在传统的坦克大战游戏基础上设计了增加子弹数量、坦克先损坏再消失两个游戏效果。

(1)增加攻击效果。根据不同玩家按下的不同按键发射子弹攻击敌方,例如按下 ENTER 或者回车键,即可发射出已经设置好的相应子弹数目。

(2)被攻击坦克先损坏,再消失。传统游戏版本中,当被攻击的坦克的血量变为零时,该坦克会立即自动消失。为了能更加逼真,血量为零后,先出现一个被损坏的坦克,2秒后再消失。

3 实验流程

3.1 模型导入与创建

(1)实验中直接导入fbx格式模型[3]。

(2)将所需物体从原有的models中的设置为预置物体,并拖放到prefabs中,使用时将预置物体挨个拖拽到场景中进行布置,实现预置物的实例化。

3.2 脚本编写

3.2.1 增加子弹数目

在inspector中修改tank 的TankHealth 面板属性 explosion prefab 的值为BustedTank。将该预置物体拖至目标坦克上,当该坦克被攻击血量达到零时,不会立即消失,先出现破损坦克BustedTank预置物,该实验中预设2秒后再消失,增加了视觉上的直观性和趣味性。

4 结语

Unity是一款专业跨平台虚拟现实及专业游戏引擎,其增强的图形功能和可扩展编辑器使得游戏开发灵活,周期短,能轻松实现虚拟仿真内容。本案例通过测试游戏的基本操作,子弹的发射、爆炸,坦克的损坏消失功能,基本达到了预期效果。

参考文献

[1]Unity Technologies. Unity5.x从入门到精通[M].北京:中国铁路出版社,2016.

[2]张敏.基于Unity 3D的游戏的设计与实现[J].计算机光盘软件与应用,2014,269-270.

[3]李慎亮,司占军.基于Unity平台的三维坦克游戏设计与实现[J].软件导刊,2015,14(8):152-154.endprint

猜你喜欢
脚本语言
基于JavaScript在Web设计中应用
一种面向SSC的电信增值业务的生成方法及实现
脚本语言在审计工作中运用的探讨
网站服务器维护措施探究
测控设备运行流程远程定制技术研究
浅析计算机技术在flash动画中的应用
基于SiPESC平台的Python扩展模块开发
脚本语言在远程教育动态网页设计中的运用