C++与C#相比,哪个更适合开发大型游戏?
我觉得这个问题倒过来回答比较合适,先解答一下目前主流的大型游戏,都是使用什么语言开发的。再说说哪种语言更适合开发大型游戏。
首先,先说下,大部分游戏,甚至是应用,都极少只使用一种语言开发的。
主流游戏的开发语言
LOL
LOL登陆后的界面,是使用html编写的,主界面的动画效果是html+flash动画处理的。重点来了,游戏所使用的引擎,是拳头公司自己开发的3D引擎,是基于C++开发的。
GAT5
这里就说GAT5吧,GAT5采用的是RAGE引擎,这个引擎适用于PC、PS3、PS4、Wii、Xbox One和Xbox 360平台。据我所知,应该是用C++写的……
王者荣耀
王者荣耀是基于Unity3d(.NET C#)引擎开发的跨平台游戏,具网友拆包发现,王者荣耀使用的开发语言为C#。
绝地求生
据我所知,绝地求生(端游),使用的是虚幻4引擎,用的是C++。
游戏开发语言
如果一家游戏公司要开发自己的游戏引擎,为了效率,大部分都会选择C++作为开发语言。但可以开发游戏的语言非常多,主要包括C/C++,汇编语言,着色器语言、脚本语言、高效的开发语言C#或Java。可以说开发游戏,C/C++是基础。
但随着移动时代的到来,Unity3D引擎被越来越多的游戏使用,而Unity3D有三种脚本语言可供选择:java、C#、Boo,而C#是比较主流的。
C++和C#哪个适合?
这个要看你对大型游戏是个什么定义了,精细一点,MMORPG才算大型游戏,通俗点,画面精致,可创造性强,笼统一点,只要很多人玩,游戏也很需要技巧,就算大型游戏。
这样,我列出一般开发游戏使用的语言。
2D页游:AS3 JS
3D页游:AS3 C#(Unity)
IOS游戏:Obj-C js/lua(Cocos-2d-x) js/C#(Unity) AS3
安卓游戏:java js/lua(Cocos-2d-x) js/C#(Unity) AS3
在线小游戏:AS3 JS大型单机游戏/客户端MMORPG::C++ C#
原文发布时间为:2018-08-15
本文作者:w3cschool

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Linux安装python模块
# 依赖解决 # yum -y install epel-release python-devel gcc # 安装模块 # pip install psutil ------------------------------------------------------------- 作者: 罗穆瑞 出处: http://www.cnblogs.com/kazihuo/ 转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢! ------------------------------------------------------------------------------ 如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢! ------------------------------------------------------------------------------
- 下一篇
Java Hashtable类源码解析
老生常谈的问题——Hashtable和HashMap有什么区别 大家一般都能说出几条,比如Hashtable是线程安全的,不支持null作为key和value值等等。那么,要仔细了解这个问题还是直接从Hashtable的源码入手。 先列一下我找到的区别: 继承类不同,Hashtable继承的是Dictionary这是一个废弃类,而HashMap继承的是AbstractMap 产生时间不同,Hashtable自JDK1.0版本就有了,而HashMap是JDK1.2才加入的,同时Hashtable可能因为历史原因并不是我们习惯的驼峰法命名的 Hashtable比HashMap多提供了elments()方法用于返回此Hashtable中的value的枚举 Hashtable既不支持null key也不支持null value Hashtable的默认大小是11,扩大的逻辑是*2+1,对于给定大小不会做扩展。而HashMap是16,扩大时*2,初始大小会转换成恰好大于等于的2的指数次幂 Hashtable中的遍历操作是从高位开始的,而HashMap是从低位开始 Hashtable处理冲突元素时...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS关闭SELinux安全模块
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7,8上快速安装Gitea,搭建Git服务器