李岩
电子游戏行业的发展自上世纪70年代至今已经经历了50年的时间。随着人类电子计算机技术的发展,越来越多新的技术被应用于电子游戏的开发,不但给玩家带来了优质的游戏体验,同时也推动了全球游戏行业相关企业的发展。
自上个世纪90年代起,有别于二维空间的三维空间游戏(简称3D游戏)进入了玩家的视野,并凭借着更旷阔的探索空间和沉浸式的体验,逐渐取代了传统2D游戏,2010年,“次时代图像基础”概念的推出,使得法线贴图,高光贴图等技术在三维游戏中得以应用,使得三维空间的游戏画面更加逼真,在一段时间内,传统3D游戏制作技术中的“手绘贴图技术”unity3d 开发网页游戏,和利用新的贴图光影技术的“次时代”技术成为了三维游戏中两种主流的画面风格。次时代技术由于制作方法复杂,最初只有少数人可能进行此项技术的运用。2015年后,随着Substance Painter,Blender,Zbrush等更多更加简单方便的图像制作软件的推出,使得原本复杂的图像技术门槛进一步降低,越来越多的人逐渐掌握了这项技术,同时也促进了游戏行业整体的发展。
在于技术领域,不同的应用环境决定着需要用不同的语言来编写软件程序,目前市面上主流的Java,Html,C,C++,C#等语言应用在程序开发,网页开发,游戏开发等各个领域。而相对而言,程序所要学习的内容门槛较高。我是一名游戏策划人员,在游戏行业从业多年,对程序领域有略微的了解,但是对于完全没有程序基础的我来说,利用传统程序语言开发游戏是一件非常困难的事情。如何才能够快速掌握编程技术,高效的完成游戏开发也是我这些年来一直研究的课题。“可视化编程”作为一个“新”的概念,被很多想从事游戏开发的爱好者所关注和研究。
随着计算机技术的发展,编程的门槛也逐渐降低。而可视化编程将成为未来游戏开发的一大趋势。目前主流的游戏开发引擎当中,Unity3d和unreal游戏引擎最为出名。而在早先,Epic(Unreal引擎制作商)就在其公司旗下的Unreal4游戏引擎中引入了“蓝图”的可视化编程系统。“蓝图”系统是基于C语言技术的庞大的编程系统。它将原本通过编程编写代码来实现的功能编程一个一个的节点,通过对节点的链接进行程序功能的实现。
相对而言,Unity3d游戏引擎虽然早先在画面技术上落后于Unreal4游戏素材,但是凭借其灵活易上手的特性,相比虚幻4拥有着更多的用户群体。而Unity引擎基于C#编程语言,需要通过额外的编程工具进行编程,并没有属于自己的官方可视化游戏引擎。随着Unity3d 2018版的官方资源商店的推出,原来越多的用户所开发和制作的资源被放到了官方商店上。而Unity官方资源商店中的“Playmaker”可视化编程插件,拥有者较高的人气。Playmaker是一款类似于Unreal4蓝图功能的节点式可视化编程插件,和Unreal4引擎的蓝图功能所不同,Playmaker将很多已经实现好的功能封装到一个节点中,从而大大的提升了游戏开发效率,而Unreal4需要若干个子节点才能够完成Playmaker一个节点所需要的内容。
Playmaker插件相对出名的第二个原因在于,PC(电脑游戏)平台著名的独立游戏《Inside》以及暴雪《炉石传说》中的部分功能都是通过Playmaker进行实现。Playmaker插件是由第三方软件开发商“Hutong Games”所开发的一款专门用于Unity平台的可视化编程插件。它为用户提供了一整套的可视化的解决方案,让用户可以无需编写脚本代码,就能控制Unity中的游戏对象,从而实现功能和交互逻辑。Playmaker的使用逻辑非常清晰,游戏中的物体如果要进行某种行为,我们都可以把它细分成一个由多个步骤组成的序列事件。
其基本的逻辑为,在Unity的场景(scene)中创建一个物体(Creat Object),将该物体拖到Playmaker的可视化编程面板中,即可开始对该物体的功能编写。在Unity引擎中,一个物体所要实现功能是通过一个个的组件来实现的。有的组件是官方自带的,而更多的功能时通过脚本组件来实现的。利用PlayMaker所实现的功能其实也是一个组件,功能和脚本功能类似。
经过了对Playmaker插件一个月的探索和研究,已经对此插件所能够实现的功能有了基本的了解。该插件所使用的命令与C#编写基本能够很好的吻合,而且非常的灵活,代码和PlayMaker可以同时对一个物体元素进行功能的添加。
Playmaker目前最新版本为P17版,距离初版到现在已经经历了十個年头,目前的功能已经相对完善来应付游戏的开发。打开Playmaker插件的界面,我们可以将这个插件分为四个部分:第一部分为Playmaker插件的初始界面部分,在此界面,我们可以对插件进行安装,论坛快速访问以及版本更新确认等。当用户在运行Unity3d时,该界面将自动弹出。当插件安装完成后,会在Unity3d的顶部操作栏中添加了一个“Playmaker”的选项,点击这个选项,可以看到编辑器、编辑器窗口,组建功能、工具按钮以及帮助按钮。虽然Playmaker的图标是一个中文的“玩”字,开发他们的公司又叫做“HutongGames”,但是却是一个外国公司,只是而爱中国文化。
插件的第二部分是编辑器界面,这个界面是一片空旷的区域,这个区域的功能和蓝图很像,我们将物体拖拽到这个区域当中,即可对物体进行功能的编程。在编辑器界面中,分为四个模块,其中包含:状态机、状态、事件、变量。在状态机中,我们可以对当前状态机的名称进行编辑(类似需要实现的功能)。我们在外部对已经编辑的功能进行debug调试,从而测试软件的相关功能。
第三部分是动作浏览器。所谓动作菜单就是可以利用Playmaker完成哪些命令。在Playmaker的动作浏览器中,包含了大部分开发所应用的命令(这里称为动作),从播放动画,播放音乐,数组。摄像机。角色unity3d 开发网页游戏,ui,操作等很多部分进行了分类。在每一个类型中,包含了若干命令,当点击每个命令时,在动作浏览器的下方会显示当前名利个的预览,其中包含里面相关的参数。此功能类似正常写代码部分的参数命令。我们将这些命令拖拽到编辑器窗口中,即可对当前物件实现选定命令的功能,非常的方便。
第四部分为全局变量功能。在Unity的游戏开发中,我们将变量分为本地变量和全局变量,所谓本地变量就是当前物体能够调用的数值。而全局变量就是在这个项目当中,所有的元素都能够调用的数值。而这个数值是可变的。所以称之为变量。变量有很多种类型,其中包括bool布尔值,Float浮点值,Int整数值创作人,String文本值,GameObject保存的物体等等。如果善用变量会让游戏的开发事半功倍。
在本学期的游戏创意工厂项目开发中,我们工作室的《幻境》,《灵光剑舞》等项目通过Playmaker插件进行了开发,大大的提升了开发效率。而《永恒青空》这款项目是采用一半代码一半playmaker编程的方式进行开发,也取得了成功。在实际的项目开发中,Playmaker为我们的工作室项目开发效率带来了很大的提升。也希望有更多的游戏开发者能够使用这款插件来提升开发效率。
文章来源:https://m.zqwdw.com/zhuanyewenxian/2020/0505/196594.html