C#或C-Sharp是一种比C++更现代和灵活的编程语言,它也在游戏开发中广受欢迎。C#是Unity 3D的默认语言,Unity 3D是一种领先的游戏引擎,它为各种游戏提供动力,例如《口袋妖怪围棋》、《超级马里奥跑》和《神庙跑》。
Unity 3D也在虚拟现实游戏(VR)中很受欢迎,例如《半衰期:爱莉克斯》和《超级热》。
使用C#开发游戏的主要优势是该语言比C++更简单和易用。
它有更清晰和一致的语法,更强大和丰富的库和框架,例如.NET、Xamarin和MonoGame。它也支持面向对象编程(OOP)和函数式编程(FP),这些编程范式可以帮助游戏开发者组织和重用代码,提高可读性和可维护性。
另一个优势是C#支持跨平台开发,即可以在不同的设备和操作系统上运行游戏,例如Windows、macOS、Linux、Android、iOS和控制台。这是因为C#运行在一个名为公共语言运行时(CLR)的虚拟机上,它可以把C#代码转换成适合不同平台的机器码。
C#的主要缺点是该语言比C++更慢和占用更多的资源。这是因为CLR需要额外的时间和空间来执行代码转换和管理内存。
此外,C#对于底层优化的控制能力比C++差,例如直接访问硬件或操作系统功能。因此,C#更适合创建中等规模和复杂度的游戏。
从游戏引擎开始时,你所用的编程语言可能是一个决定性因素。在Unity中,使用C# 编写代码,而在Unreal中,使用C++。
虽然Unreal有自己的集成可视化脚本,叫做蓝图(Blueprints),但C++被认为是一种更难学的语言。而可视化脚本可以很好地代替编程——无需编码,就能做同样的事。只需创建节点并将它们连接在一起,就可以为游戏开发逻辑。
虽然到目前为止,Unity还没有集成的可视脚本,但是有许多第三方选项可供使用,例如Bolt和PlayMaker(Bolt现在已免费,并且计划在引擎中集成)。
如果你要写代码,可以更轻松地选择用C#的Unity,如果你不想写代码,也可以使用Unreal的蓝图。