我是函数式编程范例的新手,但到目前为止我很喜欢它。因为我是从事游戏开发的,所以我想尝试用纯函数式编程风格编写一些游戏。我不介意语言--不管是Erlang,Haskell,Lisp,甚至Ruby (我发现它支持函数式编程特性)。
很明显,要学习函数式编程(实际上,任何东西),最好的建议就是学习函数式语言,并在其中大量编程。但我正在寻找的是一些在游戏和游戏引擎(2D或3D)中使用函数式编程的资源。
那么,你是否知道任何函数式编程的文章/书籍/博客/关于在实际游戏中使用它,或者使用函数式编程语言设计简单的游戏引擎,以及在这个函数式环境中游戏和游戏引擎之间的所有交互?
请不要建议“只要开始用函数式编程简单的东西,它就会逐渐出现在你的脑海中”。正如我前面所说的,这是显而易见的,但我在这里询问的是关于这个主题的一些资源,如果有的话。谢谢!
发布于 2009-07-30 20:38:48
嗯,你可以做比研究其中一些haskell games的代码更糟糕的事情。
其中一些使用FRP (函数式反应编程),一些人正在将其作为一种纯粹的高级技术用于游戏和其他事情。但大多数都是有效和纯函数代码的典型haskellish混合。
有相关内容的博客包括James Hague。
注意第一个链接中的FunGEn -尽管没有积极维护,但它是一个带有工作示例的2D游戏引擎。
还有一个干净的语言,它的game library and nice screenshots。
发布于 2009-07-31 09:56:53
嗯,我主要是一个Haskell程序员,所以我只能建议尝试Haskell库,比如Gtk2hs。它主要用于2D应用程序和用户界面,但它对你的入门很有帮助:)一个更简单的库是HGL,但它有一些but和过时。如果你想尝试更混乱(但是更酷!)然后可以在here中找到Haskell的OpenGL库。我从来没有尝试过使用OpenGL和Haskell,但如果你看看Simon Michael提交的答案,你会发现Hackage的游戏部分有使用Haskell的示例游戏。
很抱歉没有链接所有的库,但我是一个新用户,不允许超过一个超链接。不过,如果你在谷歌上搜索它们,它们应该很容易就会出现。
发布于 2009-07-31 17:13:06
如果你对游戏的网络方面感兴趣,Joel Reymont已经写下了他编写在线Poker server的经验。我认为他至少做了三种不同的实现(Lisp,Erlang,Haskell)。不幸的是,他的资料散布在互联网上。这里有两个你可能会发现有用的指针:
编辑:
以下是上述文档中一些已更改的后续指针和链接。
编辑II:
Joel显然已经出售了他的扑克代码,因此它不再以open source的形式提供。
https://stackoverflow.com/questions/1209097
复制相似问题