3.1 游戏脚本语言概述
本节将介绍游戏脚本语言的诞生、Unity3D所使用的脚本语言以及C#的常用开发环境配置。
3.1.1 游戏脚本语言的诞生
第2章介绍过游戏引擎的诞生和发展过程。在游戏引擎出现之前,游戏开发者需要在与游戏体验无关的底层开发工作上消耗大量的时间,比如图形渲染、音效播放、动画生成、网络实现等。
随着商业游戏引擎的出现,所谓的GPP(Game Play Programmer)职位出现。与此同时,游戏策划与美术设计人员不再被排除在游戏开发的流程之外。
大多主流的游戏引擎是使用C/C++实现的,包括一些大厂的自有游戏引擎。但是C/C++语言属于相对难以精通的语言,相应的开发人才难以培养。在游戏引擎兴起之后,与性能和运行效率相关的工作基本上由游戏引擎解决,开发团队更关注的是游戏内容和游戏逻辑的实现。而实现这些东西可以使用相对开发者而言更友好的脚本语言,如Lua、Python、JavaScript、Java、C#等。
3.1.2 Unity3D所使用的脚本语言
Unity3D引擎本身是使用C/C++语言开发的。但是,我们使用Unity3D引擎来开发游戏时,不需要使用C/C++语言,而是使用Unity3D支持的脚本语言C#。
C#是一种安全、稳定、简单、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率的特点,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
3.1.3 C#的开发环境
从Unity 2018.1版本开始,对于Mac系统,Unity将Vistual Studio for Mac作为macOS上的C#开发环境。对于Windows系统,Unity则默认将Visual Studio Community作为C#的开发环境。
当然,除了使用Visual Studio这种功能强大而复杂的集成开发环境外,我们还可以使用其他简单的代码编辑器来编写代码,比如Vim、Emac、Atom、Sublime Text,甚至是普通的文本编辑器。但是对于初学者,强烈推荐使用默认的Visual Studio。