Game Development

From HaskellWiki
Revision as of 16:42, 29 August 2014 by Henk-Jan van Tuyl (talk | contribs) (→‎Articles and blog posts: Added "The Quest for Programming Nirvana: On Programming Game Systems in Haskell")
Jump to navigation Jump to search


This page and the #haskell-game IRC channel are the starting points for everyone interested in doing game development with Haskell. You may also wish to join the Games group on haskellers.com.

There are quite a lot of games, unfinished libraries, and interested people out there - please gather links here and join us on #haskell-game !

Games and game engines


Other supporting software

  • grid provides tools for working with regular arrangements of tiles, such as might be used in a board game or self-organising map (SOM). Grid currently supports triangular, square, and hexagonal tiles, with various 2D and toroidal layouts (description).


Articles and blog posts

  • Lambdor blog mostly about Yampa FRP and game development in Haskell with some tutorials
  • LambdaCube 3D is a domain specific language and library that makes it possible to program GPUs in a purely functional style.

Videos

  • Games in Haskell - Matthew Sackman and Tristan Allwood on developing games with OpenGL in Haskell

Examples

  • GorillaBAS - this was an attempt on defining computer games, and build such a thing.
  • http://hackage.haskell.org/package/dow - Dungeons of Wor is an homage to the classic arcade game, Wizard of Wor. This game is also an experiment in functional reactive programming, so it might be a useful resource to anyone interested in this topic.
  • Possible Hackage categorisation guidelines: upload games to Game, engines and libs to Game Engine, or at least to some category beginning with Game, and check latest categories before uploading

Wishlist

Is hackage missing a useful data structure or library for some functionality that would benefit game programming? Suggestions for useful things can be added here as potential projects to hack on.

  • Octtree, kd-tree, various space partitioning techniques (maybe start with spacepart).
  • Binding to enet for multiplayer games. (jeffz is working on this).