43 votes

Bonnes ressources sur l'utilisation de la programmation fonctionnelle dans le développement de jeux?

Je suis assez nouveau pour que le paradigme de la programmation fonctionnelle, mais jusqu'à présent, je l'aime. Depuis que je suis dans le développement d'un jeu, je veux l'essayer à l'écriture de jeux purement fonctionnel, le style de programmation. Je n'ai pas l'esprit de la langue - être il Erlang, Haskell, Lisp, ou encore Ruby (j'ai découvert il prend en charge la programmation fonctionnelle, les caractéristiques).

Eh bien, il est évident que, pour apprendre la programmation fonctionnelle (en fait, n'importe quoi) le meilleur conseil serait juste d'apprendre un langage fonctionnel et programme de beaucoup de choses en elle. Mais ce que je suis à la recherche de quelques ressources sur l'utilisation de la programmation fonctionnelle dans les jeux et les moteurs de jeu (2D ou 3D).

Alors, avez-vous connaissance de la programmation fonctionnelle articles/livres/blogs/que ce soit à propos de l'utiliser dans les jeux réels, ou la conception simple des moteurs de jeu avec les langages de programmation fonctionnelle, et toutes les interactions entre le jeu et le moteur du jeu dans cet environnement fonctionnel?

S'il vous plaît, ne pas suggérer quelque chose comme "juste de commencer la programmation des choses simples, fonctionnelles et peu à peu, il viendra à vous". Comme je l'ai dit plus tôt, c'est évident, mais ce que je demande, voici quelques ressources sur le sujet, si il y a de tout. Merci!

23voto

Simon Michael Points 1577

Eh bien, vous pourriez faire pire que d'étudier le code de ces haskell jeux.

Certains de ces PRF (fonctionnel réactif de programmation), certaines personnes travaillent sur un pur, de haut niveau technique pour les jeux et d'autres choses. Mais la plupart sont typiques haskellish mélange de effectful et pure du code fonctionnel.

Les blogueurs avec un contenu pertinent d'inclure Jacques de la Haye.

[edit: Remarque FunGEn à la première liaison - si pas activement maintenu, c'est un moteur de jeu 2D avec des exemples.]

[edit: Il y a aussi le Propre de la langue avec son jeu de bibliothèque et de jolies images].

7voto

Andrew Calleja Points 164

Eh bien, je suis la plupart du temps un Haskell programmeur donc je ne peux que suggérer d'essayer Haskell bibliothèques comme Gtk2hs. Surtout pour la 2D les applications et les interfaces utilisateur, mais il est bon de commencer :) il est encore plus facile de la bibliothèque est HGL, mais son légèrement buggé et obsolètes. Si vous voulez essayer messier (mais plus frais!) choses, puis aller pour Haskell OpenGL bibliothèque qui peut être trouvé ici. Je n'ai jamais essayé de travailler avec Haskell et OpenGL, mais si vous consultez la réponse présentée par Simon Michael il y a des exemples de jeux dans le Hackage de la Section de Jeu qui utilisent OpenGL.

Désolé de ne pas relier toutes les bibliothèques, mais je suis un nouvel utilisateur et je ne suis pas autorisé plus d'un lien hypertexte. Si vous google, ils devraient être facilement cependant.

7voto

ThomasH Points 6597

Si vous êtes intéressé dans le réseau côté des jeux, Joel Reymont a écrit à propos de ses expériences de codage d'un site en ligne de Poker serveur. Je pense qu'il a fait au moins trois différentes implémentations (Lisp, Erlang, Haskell). Malheureusement, son matériel est dispersé à travers l'Internet. Voici deux pointeurs peuvent vous être utiles:

EDIT:

Voici quelques-suivi des indicateurs, et des liens entre les documents ci-dessus qui ont changé.

4voto

mattnewport Points 4809

Un peu daté, mais c'est la première d'une série de messages sur la façon d'utiliser F # avec le cadre de développement de jeux XNA. Vous pouvez également trouver que le blog F # for Game Development contient des informations utiles.

3voto

hiena Points 780

Frag est un jeu de tir en 3D à la première personne écrit en Haskell par Mun Hon Cheong. Il est sous licence GPL. La conception et la mise en œuvre de Frag sont décrites dans la thèse de premier cycle de Mun, Programmation fonctionnelle et Jeux 3D.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X