编程基于坐标的游戏,如点或棋子

时间:2008-12-01 01:19:23

标签: javascript c geometry gridworld

我正在寻找有关笛卡尔几何或基于坐标的游戏编程的一些基础知识。平台是无关紧要的,虽然我最精通JavaScript,C,Objective-C。最终能够创造诸如点或棋子之类的东西将是理想的。我的想法是让我了解精灵的工作原理以及路径如何以编程方式工作。我向你们提出的问题是,学习基础知识的最佳位置在哪里?一些不是数学的东西,因为坦率地说,在这一点上比微积分更进一步的东西是一条灰线,需要刷新我的记忆。

如果有特定的书籍,网站或开源项目 - 这可能对我有用。

感谢任何想法。

11 个答案:

答案 0 :(得分:13)

我认为还有一些步骤可以实现您的目标,即了解游戏编程的基础知识。你提到理解精灵和路径,这对于游戏编程是必不可少的,但我认为最初你应该花一点时间来理解一般图形用户交互背后的编程和方法。

无论您最终将游戏编程为何种语言,我认为使用Java或C#等现代语言进行学习将为您提供大量的库,并允许您完成动画和事件监听器等任务。只是。

以下是一份指南和教程列表,我认为这些指南和教程对我们非常有帮助,就像对我和其他人一样:

  1. This is an extremely-detailed tutorial用于Java游戏框架,其中包含完整的源代码以及用Java编写臭名昭着的“Snake”游戏的完整步骤(包含源代码),以及控制面板,记分板和声音效果!
  2. Jonathan S. Harbour的书"Beginning Java 5 Game Programming"将向您介绍2D矢量图形和包括精灵动画在内的位图等概念。另外,您可以在亚马逊商城上以12美元的价格使用它!
  3. Here是一个令人难以置信的Sprite Animation教程,它有超过5个部分!此外,它由CompSci教授Richard Baldwin撰写,是一位极其可靠且知识渊博的资源。有关他的更多教程,this is his site.
  4. 在这些来源之间,您将拥有适用于任何语言的游戏部分的方法论,以及如何实际实施这些部分的知识。

    G'luck!

答案 1 :(得分:5)

O'Reilly在Mac上使用Objective-C和Cocoa进行了简单的游戏开发教程。 Lines of Action.

答案 2 :(得分:1)

othello这本书当然是着名的PAIP Peter Norvig

答案 3 :(得分:1)

我经常访问的网站是GameDev.net。他们通常有很多游戏编程资源。论坛是获得游戏开发更具体答案的好地方。

在网站上,访问Articles and References页面,其中包含开发人员就各种游戏主题撰写的文章。

通过阅读Chilton手册,您不了解汽车发动机;你必须弹出引擎盖并弄脏你的手!

希望这有帮助。

答案 4 :(得分:1)

我目前正在使用pygame进行跳棋程序。让图形工作简直超乎想象,实现流畅运动所需的数学只是简单的矢量和矢量动画。

板上的每个矩形或正方形都有一个centerx和centery坐标。左边的下一个方形对角线是centerx-82和centery + 82,或者右边的下一个对角线是centerx + 82和centery + 82.跳跃只是2个对角线。将函数分开以模块化你的代码,没有太多的数学,你就有了一个简单的跳棋程序。简单。

答案 5 :(得分:0)

嗯,对于Java,有一个名为GridWorld的API,(它用作AP计算机科学考试的案例研究,这就是我熟悉它的原因)它使用了一个坐标系,所以你可能会从中看到它。

答案 6 :(得分:0)

您可能希望了解minimaxAlpha Beta pruning

答案 7 :(得分:0)

基于您选择在哪个平台上执行程序,精灵动画会有很大差异,并且在该平台上制作动画的任何通用参考都将引导您完成此操作。如果你想为Java拍摄,Yoely的参考文献看起来很不错。

对于游戏AI,我建议您查看Russell和Norvig的Artificial Intelligence: A Modern Approach。它看起来令人生畏,理解本书的大部分内容将掌握高级数学概念的工作知识。然而,它很有吸引力和写得很好,你可以通过前十几章左右完成,而不会遇到任何数学地雷。该书中的算法和概念将足以帮助您为简单的游戏编程AI,甚至可以帮助您做出决定。

答案 8 :(得分:0)

我的建议是使用一种语言/开发环境,以便轻松使用精灵。

看看Scratch

Scratch网站包含数千个可在开发环境中下载和编辑的项目。

以下是一些可以帮助您入门的项目:http://scratch.mit.edu/tags/view/checkers

另外,如果你遇到困难,有一个很好的在线论坛,里面有很多乐于助人的人!

使用Scratch制作游戏后,您可以直接从开发环境上传/分享游戏,也可以将其发布到您自己的网站上(尽管需要做一些事情)。

希望这有帮助。

答案 9 :(得分:0)

http://www.gamedev.net/

这可能是网上最知名的游戏/图形编程网站之一。它的论坛受制于计算几何,算法和所有级别的GPU编程概念。

你可以在这里得到很多帮助。在这个网站上已经有很多关于游戏编程主题的文章,你可以从这些文章中看到实例并理解这些系统组合背后的思维过程。

答案 10 :(得分:0)

http://www.pygame.org/

Python非常适合入门,并提供了很好的示例和教程。