Programming languages 游戏项目开发

Programming languages 游戏项目开发,programming-languages,Programming Languages,我想开发一个游戏,它将由一个3D世界组成,在这个世界中,简单的3D形状相互作用,其中涉及到“真实”物理 我没有视频游戏编程方面的经验,我愿意学习,因此我想问,对于一个由相互交互的3D形状和“真实”物理组成的游戏,您会使用哪种编程语言和/或库 我知道这个问题有多种答案,但我想了解一下目前最常用的技术是什么。我使用David Brackeen的《用Java开发游戏》一书为Windows开发了两款Java平台游戏。它确实涵盖了3D内容,但我还没有做到这一点。我建议研究一下微软的XNA框架。这将涵盖it

我想开发一个游戏,它将由一个3D世界组成,在这个世界中,简单的3D形状相互作用,其中涉及到“真实”物理

我没有视频游戏编程方面的经验,我愿意学习,因此我想问,对于一个由相互交互的3D形状和“真实”物理组成的游戏,您会使用哪种编程语言和/或库


我知道这个问题有多种答案,但我想了解一下目前最常用的技术是什么。

我使用David Brackeen的《用Java开发游戏》一书为Windows开发了两款Java平台游戏。它确实涵盖了3D内容,但我还没有做到这一点。

我建议研究一下微软的XNA框架。这将涵盖it的“游戏”方面。至于物理,我建议看看子弹引擎,尽管有很多选择。

看看:

Bullet 3D游戏多物理库提供最先进的碰撞检测、柔体和刚体动力学

  • 许多游戏公司在Playstation 3、XBox 360、任天堂Wii和PC上使用AAA级游戏
  • 大多数组件的热交换模块化扩展C++ < /LI>
  • 为Playstation 3 Cell SPU和其他平台提供多线程支持的优化后端
  • 离散和连续碰撞检测(CCD)
  • 扫描碰撞查询
  • 具有自定义碰撞过滤的光线投射
  • 通用凸支撑(使用GJK)、胶囊、圆柱体、圆锥体、球体、长方体和非凸三角形网格
  • 刚体动力学,包括约束解算器、常规约束、碎布玩偶、铰链、球窝
  • 支持约束限制和电机
  • 柔软的身体支撑,包括布料、绳索和可变形
  • Bullet集成到Blender 3D中,并提供Maya插件
  • 支持导入和导出为COLLADA 1.4物理格式
  • 通过重新装配加速结构,支持非凸三角形网格的动态变形

根据ZLib许可证,该库可免费用于商业用途和开源。

我建议您从使用Flash开始。这是一个很好的创建简单游戏的环境,但是当你想玩得更花哨的时候,它有很好的3D和物理引擎(例如和)。

C/C++用于性能和脚本编写

Lua简介

您应该研究SDL库(),因为它支持多种平台,并且具有多种编程语言的绑定。它还支持OpenGL


祝你好运

用C#编写的XNA游戏工作室。学习比C++和DirectX/OpenGL更容易(主观)。


这里还有另一条线索。当我找到它时将链接。

Blitz非常擅长快速启动和运行某些东西

Blitz3D支持3d卡之类的东西。

它也足够强大,可以为“真正的”游戏提供动力

乙二醇

SDL实际上是游戏的起点,在某些平台上也是如此。它将使您快速启动并运行(并且它在linux上工作)


在那里,您可以搜索sourceforge中的一些:例如,PLIB、食人魔、水晶空间。它们都很好,虽然我不知道它们在过去几年里的进展。

< P>如果你想用纯物理来运行纯实时3D,我建议C++,例如OpenGL。 我建议您在下面查找有关OpenGL的教程。您还可以在以下位置找到碰撞检测系统的示例:

<>如果你真的不擅长实时的东西,你可能会用C++来编写一个“简单”的编码语言。你需要开始研究哪一款适合你的游戏设计


大多数商业游戏都是用C++编写的,用其他语言来进行绑定。其他语言提供了不同的特性,例如Java对移动电话的可移植性。

仅供参考,有一个非常相互测试的开源BSD许可项目,名为,它包括在C#和Mono中重新创建服务器端基础设施


这似乎符合你的朋友和你想要做的事情。虽然仍处于Alpha阶段,但它非常稳定,绝对值得一试。

如果您完全没有编程经验,并且希望获得真正快速的视觉效果,那么您应该查看诸如DarkBasic或Blitz3D之类的语言

也就是说,这些语言有很大的局限性,如果你也在考虑学习编程,你可能会想使用Java或C#的不同用户创建的API,如JOpenGl、Jogre、XNA、SDL.Net或irlicht.Net。它们将让你在创建游戏时学习对象编程的基础知识

以下是不同的链接:

爪哇:

C#:


简单而强大的东西(至少根据我的口味:)是

完全开源、大量演示、大量教程,可以直接与许多常用格式(如MD2、Cal3D或BSP)配合使用,从而允许您使用高级工具创建您的世界

用C++编写,脚本编写在Lua(有专门的脚本编辑器)。C++中的

< P>已使用过;在Python中,我使用了和


<> P>语言,如果你使用C++,那么我绝对会建议使用Lua或Python之类的脚本来编写脚本,尽管整个游戏的编写都像Python一样好。(并且性能应该开始成为一个问题,你可以写的只是模块,这是在C++中引起问题的课程之后)。

< P>如果你熟悉Delphi,试试GlScene。

是的,C和XNA是一个很好的组合。好的生产力,容易学习。XNA不包括物理(但是我也不知道)。