Language agnostic 游戏框架的利弊
这个问题针对的是那些刚刚开始游戏开发的人。首先想到的是: 我应该使用哪种语言/框架?Language agnostic 游戏框架的利弊,language-agnostic,Language Agnostic,这个问题针对的是那些刚刚开始游戏开发的人。首先想到的是: 我应该使用哪种语言/框架? 解决方案列表: -> -> -> -> -> -> -> 自定义-> 答案模板: 框架名称(链接) 优点: Pro1 Pro2 缺点: Con1 Con2 在我看来,XNA专业版的XNA应用程序除了可以在PC上运行外,还可以在Xbox360上运行,而且你可以从.NET Framework支持的任何语言中选择你最喜欢的语言,这是相当多的。任何框架(游戏、网络等)的优点
解决方案列表:
- ->
- ->
- ->
- ->
- ->
- ->
- ->
- 自定义->
答案模板: 框架名称(链接) 优点:
- Pro1
- Pro2
- Con1
- Con2
缺点往往会在稍后出现,一旦您想要超越框架的能力,它就会变得非常困难。对于许多更复杂的框架,扩展它们的功能以使其能够完成设计上不具备的任务,这将导致您不得不编写大量自己的样板代码。如果您有时间,请自己动手。这是值得您体验的,您将学到很多东西,而不是如何使用FrameworkX 专业人士
- 完全控制
- 有丰富的学习经验
- 游戏引擎和程序之间的代码一致
- 倾向于非常适合它所应用的应用程序
- 支持任何语言/环境
- 高难度
- 没有在线文档
- 一般来说,不太通用。更难应用于其他游戏
- 其他人很难使用
- 可能比更流行的框架更复杂
- 没有经过很好的测试
- 很难得到帮助
- 大量3D特征
- 跨平台,使用DirectX或OpenGL
- 插件架构提供更多功能
- 不尝试成为一个无所不包的引擎,只是一个图形引擎(甚至不像许多图形库那样尝试处理输入)
- 使用单例模式
- 很难进行2D或基本体渲染(单个多边形、线等)
- 大量的代码使得学习曲线相当陡峭
- 使用.NET语言;托管内存、VisualStudio环境的易用性等
- 高水平和低水平的良好组合
- 很好地支持2D和3D
- 是被证明的;看看Xbox Live Arcade,所有这些游戏都是用XNA制作的
- 游戏可以在联网的Xbox上轻松运行
- 使用.NET语言;不能使用java、C++等
- 目前还没有太多的资源(如书籍),尽管它很容易学习和使用,所以这可能不是一个问题
- 只有窗户。Mono(在Linux上)根本不支持XNA
- XNA3.0在2.0发布后不到一年就发布了,现在是3.1;像这样频繁的更改可能会妨碍文档编制,即书籍很快就会过时,并且在将2.0游戏升级到3.0游戏时,许多东西会损坏
- 截至2014年
- 易于开始并创建可见的内容李>
- 跨平台李>
- 很多开源游戏都可以用来检查源码李>
- Python语言的优点(灵活性、动态类型、字符串/数组/元组等)李>
- 性能智能不能扩展到非常大的游戏(业余游戏开发很少如此)李>
- 主要适用于2D,但也可以使用3D李>
- 难以作为封闭源分发李>
- 低难度
- 跨平台
- 默认情况下OpenGL加速图形
- 易于添加的进一步OpenGL图形增强功能
- Python语言
- 比pygame更不知名
- 游戏“循环”有点不合常规
- 高级图形和最大化性能所需的OpenGL知识
- 使用Java;托管内存,在许多成熟的IDE(Eclipse、NetBeans等)中高度支持,高度可移植
- 良好的混合和高水平和低水平
- 现代三维场景图
- 建立在上面,一个非常成熟和运作良好的游戏库
- 非常轻;不会增加很多开销
- 以多种格式加载内置三维模型
- 内置基于现代节点的三维场景图
- 易于使用
- 开源;不断发展和改进
- 包括剔除、碰撞检查等
- 具有保存和读取自身超紧凑、超快速二进制模型格式的选项
- 还没有在许多商业应用程序中使用过(因此也没有得到“验证”)
- 没有任何类型的附加编辑器,一切都必须在纯代码中完成
- 很难做2D游戏(你可以试试)