我希望学习一些关于笛卡尔几何或基于坐标的游戏编程的基础知识。平台无关紧要,尽管我最精通 JavaScript、C、Objective-C。最终能够创建诸如点或棋盘格之类的东西将是理想的。这个想法是让我了解精灵如何工作以及路径如何以编程方式工作。我对你们的问题是,学习基础知识的最佳地点在哪里?数学不是很重的东西,因为坦率地说,在这一点上,任何比微积分更高级的东西对我来说都是一条灰线,需要刷新我的记忆。
如果有特定的书籍、站点或开源项目——那可能对我帮助最大。
感谢您的任何想法。
我希望学习一些关于笛卡尔几何或基于坐标的游戏编程的基础知识。平台无关紧要,尽管我最精通 JavaScript、C、Objective-C。最终能够创建诸如点或棋盘格之类的东西将是理想的。这个想法是让我了解精灵如何工作以及路径如何以编程方式工作。我对你们的问题是,学习基础知识的最佳地点在哪里?数学不是很重的东西,因为坦率地说,在这一点上,任何比微积分更高级的东西对我来说都是一条灰线,需要刷新我的记忆。
如果有特定的书籍、站点或开源项目——那可能对我帮助最大。
感谢您的任何想法。
我认为还有几个步骤可以实现您的目标,即了解游戏编程的基础知识。您提到了理解精灵和路径,这对于游戏编程来说是必不可少的,但我认为最初您应该花一点时间来理解一般图形用户交互背后的编程和方法。
无论您最终将使用哪种语言编写游戏,我认为学习 Java 或 C# 等现代语言将为您提供大量库,并使您能够更简单地完成动画和事件侦听器等任务。
以下是我认为对您非常有帮助的指南和教程列表,就像它们对我和其他人一样:
在这些资源之间,您将拥有适用于任何语言的游戏部分的方法论,以及如何实际实现这些部分的知识。
祝你好运!
O'Reilly 有一个关于在 Mac 上使用 Objective-C 和 Cocoa 进行简单游戏开发的精彩教程。行动路线。
我经常访问的网站是GameDev.net。一般来说,他们有很多用于游戏编程的资源。论坛是获得有关游戏开发的更具体答案的好地方。
在网站上,访问“文章和参考”页面,其中包含开发人员撰写的关于各种游戏主题的文章。
您不会通过阅读 Chilton 的手册来了解汽车发动机;你必须打开引擎盖,弄脏你的手!
希望这可以帮助。
我目前正在使用 pygame 开发一个跳棋程序。让图形工作起来非常简单,实现流畅运动所需的数学只是简单的矢量和矢量动画。
棋盘上的每个矩形或正方形都有一个 centerx 和 centery 坐标。左边的下一个正方形对角线是 centerx - 82 和 centery + 82 或右边的下一个对角线是 centerx + 82 和 centery + 82。跳跃只是 2 个对角线。将函数分开以模块化您的代码,并且无需太多数学运算,您就有了一个简单的检查程序。简单的。
好吧,对于 Java,有一个名为GridWorld的 API ,(它用作 AP 计算机科学考试的案例研究,这就是我熟悉它的原因)它使用坐标系,所以你可能会从中学到一些东西.
您可能想了解minimax和Alpha Beta pruning。
Sprite 动画会根据您选择在哪个平台上执行程序而显着不同,在该平台上进行动画制作的任何通用参考都可以帮助您完成。如果你想为 Java 拍摄,Yoely 的参考资料看起来很不错。
不过,对于游戏 AI,我建议您查看Russell 和 Norvig的《人工智能:现代方法》 。它看起来很吓人,要理解这本书的大部分内容,需要掌握高级数学概念的工作知识。但是,它引人入胜且写得很好,您可能可以通过前十几章左右而不会碰到任何数学地雷。那本书中的算法和概念足以帮助你为一个简单的游戏编写人工智能,甚至可以帮助你决定一个游戏。
我的建议是使用一种语言/开发环境,使使用精灵变得容易。
看看从头开始。
Scratch 网站包含数千个项目,您可以直接在开发环境中下载和编辑这些项目。
这里有一些项目可以帮助您入门:http ://scratch.mit.edu/tags/view/checkers
另外,如果您遇到困难,还有一个很好的在线论坛,里面有很多乐于助人的人!
使用 Scratch 制作游戏后,您可以直接从开发环境上传/共享它,也可以将其发布到您自己的网站上(尽管这需要一些操作)。
希望这可以帮助。
这可能是网络上最著名的游戏/图形编程站点之一。它的论坛涉及计算几何、算法和各级 GPU 编程概念。
你可以在这里得到很多帮助。该站点上已有许多关于游戏编程主题的文章,您可以从中查看示例并了解将这些类型的系统组合在一起背后的思维过程。
:]
Python 非常适合入门,并且有很好的示例和教程可供使用。