3

0x00 前言:

随着微软越来越开放,C#也变得越来越吸引人们的眼球。而在游戏行业中,C#也开始慢慢地获得了关注。这不, 网易绝代双娇手游团队已经全面使用.Net Core支持前后端统一C#开发,跨平台部署了。

所以,我们就来总结一下C#在游戏行业中一些具体的应用吧。

0x01 游戏引擎:

说道游戏领域的应用,自然应该先来说说游戏引擎:

Unity (Unity - Game Engine


不必多说了吧,随着“移动为王”潮流的到来,Unity3D也变得越来越流行。使用C/C++开发,提供C#作为脚本。
移动游戏开发必备神器,而且随着VR热潮的到来,使用U3D开发VR内容也十分便利。总之,你值得拥有。

Axiom (Axiom


Axiom是一款开源且跨平台的3D渲染引擎,提供了对Windows, Linux, Android, iPhone以及Windows Phone等各个平台的支持。
了解游戏开发的小伙伴们一定听说过OGRE渲染引擎吧?
Axiom使用C#移植了OGRE。

Torque X(Torque X | Products


由GarageGames开发的一款基于XNA的2D/3D游戏引擎(但是不支持XNA Game Studio 4.0)。
使用C#开发,目标平台主要是PC以及XBox。
但是很多功能都没有开发完毕,目前已经被废弃。

truevision3d(3D Engine and Game Development SDK by Truevision3D


底层使用C/C++开发,不过提供对VB6, VB.Net, C#, Delphi,APL和BlitzMax的支持。
相信各位能够迅速上手。

Xenko(Home | Xenko


来自日本的开发商SiliconStudio,开发商十分靠谱。且和Unity3D相比,Xenko支持最新的版本的C#6和.Net4.6。且由于借助了Xamarin,因此在跨平台策略上不比Unity3D差。
而且,它还是免费开源的,不过由于使用了GPL3协议,因此如果是自己去修改引擎代码就必须公开。
个人觉得很有意思且值得研究的一个游戏引擎。

0x02 图像相关:

XNA :


不必多说了吧。微软自家的东西。XNA中的X表示能够在WindowsXbox和合作伙伴之间达到跨平台的强大的软件工具。N表示“下一代(Next-generation)”,A表示“架构(Architecture)”。基于DirectX的游戏开发环境。使用c#对directx进行了封装。可以在xbox360和pc间实现跨平台。

OpenTK(The Open Toolkit Library):

封装了OpenGL, OpenCL以及OpenAL的C#库。

SDL.Net(SDL.Net):


SDL(Simple DirectMedia Layer)库的C#版本。

SlimDX (SlimDX Homepage):


SlimDX是一个免费开源的框架,基于DirectX,开发者可以使用 C#, VB.NET, 或者IronPython进行开发。

0x03 物理相关:

Box2Dx(Box2Dx):

我相信Box2D各位应该十分了解,那么Box2Dx便是Box2D的C#版本。

Box2D.XNA (Box2D.XNA - Home):

和上面的类似,当然对Xbox 360做了特别的优化。

Farseer(Farseer Physics Engine):

同样是一个2d物理引擎,支持C#。当然它也基于Box2D,因此和Box2D有很多相同的功能。

Jitter(Jitter):

最后介绍一个3D的物理引擎。支持使用C#。

0x04 结语:

可以看到,C#在微软支持开源之前就已经在游戏领域有了很多应用。希望现在在微软开源的支持之下,C#能够在游戏领域获得更多的关注。


chenjd
556 声望61 粉丝

Microsoft Visual Studio and Development Technologies MVP