C++可以用来写什么类型的游戏?(页游,手游,端游,主机,单机)或者说适合写什么风格的游戏?求大神
首先,C/C++很难分开讲述。绝大多数情况下,C++系统均可看作C/C++系统。
C/C++从历史上来说,在大型桌面游戏方面有绝对的优势。现有的大型游戏引擎很多都是C/C++开发的,FPS(现代战争、反恐精英之类)、RPG(仙剑、暗黑)、战棋类、即时战略(星际、魔兽)等等。这主要是得益于对象继承机制可以方便的抽象游戏中的元素,并直接与前端渲染器形成紧密的绑定。
然而,近年来,基于Web以及移动端的游戏越来越多,且最终用户交互与后台逻辑分离成为趋势。C++可构建高性能的后台逻辑,而前端呈现手段目前已经是异彩纷呈了,采用JS以及WebGL也能生成非常棒的体验,C/C++更多用于在底层、中层进行支持。如JS解释器V8、WebKit、Chrome的内核、Lua解释器、数据库系统(DBMS)等等。此外,C/C++常用于制造生产资料,如游戏开发人员使用的地图编辑器、资源管理设施等。
作为游戏开发人员,只有在任职于Rockstar这样的一线公司时,才有可能参与底层、中层生产资料的开发。一般的游戏公司会采用成熟的框架、引擎加入自己的情节设定来制作游戏。
从目前的趋势来看,C++适合做主机后台服务(包括算法)与单机游戏,页游、手游、端游都有各自成熟的框架,虽然这些框架的技术栈撸到底,基本100%是C/C++,但一般人很少会重新去开发一套自己的技术栈。其实从找工作的角度,既然已经涉及游戏开发,也可以像场景仿真这样的行业应用去转型。如施工仿真、手术仿真、虚拟实验室、地理信息系统等。这些领域虽然来钱没有游戏快,但是融汇有缓变行业(建筑、医疗、教育等)的专业知识,职位安全性显著高于游戏开发。
c++只是语言,要结合框架(比如cocos2d-x),开发手游(手机游戏)。页游适合用flash/flex,端游指客户端游戏(包括电脑客户端和手机客户端)。