Je crée mon jeu vidéo E11 : génération procédurale de carte (partie 2)

Posté par . Édité par Benoît Sibaud, palm123 et Xavier Claude. Modéré par patrick_g. Licence CC by-sa
Tags :
49
28
avr.
2014
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 10, on a fabriqué des cartes d'altitude avec diverses méthodes et divers opérateurs qui permettent de rendre la carte plus réaliste. Dans cette deuxième partie de ce double épisode consacré à la génération de carte pour un RPG, on va décorer notre carte.

Je crée mon jeu vidéo E10 : génération procédurale de carte (partie 1)

Posté par . Édité par Benoît Sibaud, palm123, ZeroHeure et tuiu pol. Modéré par Benoît Sibaud. Licence CC by-sa
110
7
mar.
2014
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 09, on a vu comment C++11 procurait des constructions bien pensées qu'on pouvait utiliser dans les systèmes à entités. Cette fois, on attaque dans le dur à travers un double épisode qui va nous permettre de générer une carte pour du RPG. Dans la première partie, on va voir comment générer une «carte d'altitude» (heightmap). On va passer en revue plein de techniques qui permettent d'arriver à ce résultat. Avec tout plein d'images pour illustrer. Attention les yeux !

Je crée mon jeu vidéo E09 : Techniques de C++11 appliquées au système à entités

Posté par . Édité par palm123 et Benoît Sibaud. Modéré par ZeroHeure. Licence CC by-sa
Tags :
35
12
fév.
2014
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans le dernier épisode, on a parlé du livre de Jesse Schell, «L'Art du Game Design». Mais bon, comme il paraît qu'on ne discute pas assez de technique sur LinuxFR, donc cette fois, on va causer uniquement de technique. Du gros, du lourd, du C++ ! Et dans sa version 2011 pour que ça soit encore plus imbitable pour le commun des mortels. Comme ça, on discutera entre nous, techniciens divins et on laissera la bonne plèbe se vautrer dans la mélasse. (Est-il nécessaire que je rajoute une balise humour ?)

Je crée mon jeu vidéo E08 : fiche de lecture de «L'Art du game design» par Jesse Schell

Posté par . Édité par palm123, Benoît Sibaud et Xavier Claude. Modéré par Xavier Claude. Licence CC by-sa
Tags :
38
19
jan.
2014
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 07, on a parlé de cartes, de données et de systèmes à entités. Avec beaucoup de questions et peu de réponses. Et ce n'est pas dans cet épisode qu'on va y répondre. Non, aujourd'hui, cet épisode est consacré à un livre qui m'avait été conseillé dans un des premiers épisodes. Je l'ai acheté, je l'ai lu avec attention et je vous en parle maintenant.

Je crée mon jeu vidéo E07 : cartes, données et systèmes à entités

Posté par . Édité par ZeroHeure et Benoît Sibaud. Modéré par Xavier Claude. Licence CC by-sa
Tags :
26
16
déc.
2013
Jeu

« Je crée mon jeu vidéo » est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parle de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pouvez suivre cette série grâce au tag gamedev.

Dans l'épisode 06, on a vu comment on pouvait simplement générer des arbres procéduralement. Cet épisode invitait à des extensions grâce aux quelques liens donnés dans les commentaires et aussi grâce à d'autres lectures que j'ai pu faire depuis. Mais pas tout de suite. Aujourd'hui, on va s'intéresser à la carte du jeu et je vais partager mes réflexions sur les données du jeu et les systèmes à entités.

Je crée mon jeu vidéo E06 : génération procédurale de végétation

Posté par . Édité par palm123 et Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC by-sa
Tags :
50
24
nov.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 05, on a discuté d'un sujet qui n'avait rien à voir et qui a généré quelques trolls, ce qui est assez cocasse pour un jeu vidéo dans un univers med-fan. Cette fois, on va parler de génération procédurale de végétation et aussi un peu d'animation de sprite. Avec quelques captures d'écran pour montrer le résultat de tout ça intégré dans le jeu !

Je crée mon jeu vidéo E05 : de retour de la Paris Games Week

Posté par . Édité par palm123, Benoît Sibaud et Xavier Claude. Modéré par Christophe Guilloux. Licence CC by-sa
Tags :
36
11
nov.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 04, on a parlé des moteurs physiques et de Box2D en particulier. Depuis, je n'ai pas eu beaucoup de temps à consacrer à mon jeu. Donc, pour cet épisode, on va parler d'un truc qui n'a absolument rien à voir : la Paris Games Week.

Je crée mon jeu vidéo E04 : Paf ! les collisions

Posté par . Édité par palm123 et Benoît Sibaud. Modéré par Xavier Claude. Licence CC by-sa
Tags :
45
29
oct.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 03, on a vu la version zéro du jeu : un sprite qui bouge sur une carte. Les commentaires se sont focalisés sur la carte (la manière de l'afficher notamment) et sur le scénario/guide/design du jeu. Certains lecteurs ont même tenté la compilation (et y sont parvenus pour la plupart, malgré les difficultés). Aujourd'hui, on va parler de moteur physique, et plus particulièrement de Box2D, qui devient de plus en plus une référence en la matière dans les jeux 2D.

Je crée mon jeu vidéo E03 : la version zéro !

Posté par . Édité par NeoX, Benoît Sibaud, Xavier Claude, palm123 et Nÿco. Modéré par patrick_g. Licence CC by-sa
48
14
oct.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 02, on a vu le principe du jeu et ses principaux challenges. Beaucoup de commentaires fort pertinents sont venus agrémenter cette première description. Je vais en reprendre une partie avec quelques liens fort utiles à lire quand on commence un jeu (et que c'est le premier).

Je crée mon jeu vidéo E02 : le jeu et ses challenges

Posté par . Édité par Nils Ratusznik et palm123. Modéré par Ontologia. Licence CC by-sa
37
26
sept.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Dans l'épisode 01, on a parlé d'un nouveau paradigme utilisé dans les jeux vidéo et appelé système à entités. Ce deuxième opus sera consacré à la description du jeu que j'aimerais faire, et aux divers challenges associés. On ne parlera pas encore des technologies et bibliothèques diverses choisies pour implémenter tout ça (il faut bien garder quelques sujets sous le coude pour les prochains épisodes).

D'ailleurs, depuis le premier épisode, on a vu plein de projets liés au jeux vidéos sur LinuxFr :

Je crée mon jeu vidéo E01 : les systèmes à entités

Posté par . Édité par ZeroHeure, Pierre Jarillon, palm123 et Nÿco. Modéré par Ontologia. Licence CC by-sa
98
16
sept.
2013
Jeu

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Cet article est le premier de la série. Avant de vous dévoiler l'idée de jeu que j'ai (et qui n'est pas révolutionnaire, rassurez-vous) dans un prochain article, on va commencer par un peu de technique et parler des systèmes à entités. C'est un nouveau paradigme de programmation assez intéressant, en particulier dans le cadre des jeux vidéos où il est beaucoup utilisé depuis quelques années, en particulier dans le moteur de jeu (propriétaire) Unity.

LLVM 3.3 et Clang 3.3

73
18
juin
2013
Technologie

Le projet LLVM est un ensemble de technologies modulaires et réutilisables destinées à construire des chaînes de compilation et des compilateurs. Ce projet a grandi depuis ses débuts en tant que projet de recherche à l’Université de l’Illinois pour maintenant rivaliser avec l’autre grand compilateur du monde libre. À l’aube de ses 10 ans, le projet est on ne peut plus actif, attirant aussi bien des industriels (ARM, IBM, Qualcomm, Google, Intel, etc.) que des chercheurs.

logo LLVM

Le projet LLVM, ainsi que Clang, le compilateur C/C++/ObjectiveC officiel du projet, sont sortis dans leur version 3.3 le 17 juin 2013. LLVM apporte la prise en charge de nouvelles architectures. Clang implémente désormais la totalité du standard C++11. Ces nouveautés sont détaillées dans la seconde partie de la dépêche.

La conférence européenne LLVM 2013 qui s’est déroulée les 29 et 30 avril derniers à Paris, a permis de voir certaines améliorations possibles qui seront peut‐être un jour intégrées dans LLVM/Clang.

Enfin, il est important de noter que LLVM a reçu le 2012 System Software Award, rejoignant ainsi Eclipse (2011), Java (2002), TCP/IP (1991) et tant d’autres.

Rencontre des Développeurs LLVM 2012

Posté par . Édité par baud123, Xavier Claude, Benoît Sibaud et Pierre Jarillon. Modéré par Pierre Jarillon. Licence CC by-sa
Tags : aucun
35
25
nov.
2012
C et C++

Les 7 et 8 novembre derniers a eu lieu la Rencontre des Développeurs LLVM 2012 (2012 LLVM Developers' Meeting) à San José en Californie. C'est la sixième rencontre du genre et les participants sont toujours de plus en plus nombreux. Dans son introduction, Chris Lattner, le père de LLVM, a fait un rapide bilan de l'année écoulée.

LLVM (anciennement appelé Low Level Virtual Machine en français : « machine virtuelle de bas niveau ») est une infrastructure de compilateur conçue pour optimiser la compilation, l'édition de liens, l'exécution d'un programme écrit dans un langage quelconque.

En plus des nouvelles fonctionnalités (notament C++11) et des nouvelles architectures prises en charge (Hexagon et MIPS64), Chris a fait état d'une communauté des développeurs LLVM et Clang très dynamique. En ce qui concerne LLVM, 78 nouveaux committers (personnes qui ont du code qui a été incorporé) sont arrivés cette année pour porter le total à 167 committers différents. Les chiffres sont quasiment identiques pour Clang (le frontend C/C++/Objective-C de LLVM) : 72 nouveaux committers pour un total de 132. Le code source de LLVM a grossi de 131 KLoc pour un total de 1,4 MLoc tandis que le code de Clang a grossi de 260 KLoc pour un total de 1,0 MLoc.

La conséquence est l'apparition de nouveaux problèmes : certains patchs ont du mal à être revus, l'infrastructure de build et de test de performance commence à montrer ses limites, la gestion des sorties de nouvelles versions se complique. Chris a donc fait un appel à la communauté pour demander de l'aide dans l'analyse des problèmes de performance, dans l'infrastructure de test, dans la documentation, etc.

Il a également demandé aux contributeurs les plus impliqués de devenir «propriétaire de code» (au sens responsable dudit code). Concrètement, il s'agit de prendre en charge une sous-partie de LLVM dont le propriétaire s'engage à assurer la bonne maintenance et évolution, notamment en passant en revue les patchs concernant cette sous-partie. Immédiatement, de nombreux volontaires se sont fait connaître ou ont été proposés.

La suite de la dépêche propose un résumé de quelques présentations qui ont eu lieu lors de cette rencontre.

LLVM 3.0

Posté par . Édité par baud123, nazcafan, Manuel Menal et Benoît Sibaud. Modéré par patrick_g. Licence CC by-sa
Tags :
55
2
déc.
2011
Technologie

LLVM, pour Low Level Virtual Machine, est une suite de compilation qui commence à se faire une place à côté du vénérable GCC. Sa grande modularité, comparé au monolithique GCC, permet d'écrire facilement un compilateur, en utilisant la représentation intermédiaire de LLVM, et en faisant appel ensuite aux optimisations et à la génération de code de LLVM.

Le projet arrive maintenant à une certaine maturité grâce à cette version 3.0 qui apporte beaucoup de nouveautés. Il est à noter que la numérotation suit le schéma d'OpenBSD, c'est-à-dire que la version 3.0 suit la version 2.9, ce n'est donc pas une version majeure – malgré les modifications plus importantes qu'à l'accoutumée – qui sont détaillées dans la seconde partie.

Rencontre des utilisateurs européens de LLVM 2011

Posté par . Modéré par tuiu pol. Licence CC by-sa
18
30
sept.
2011
Technologie

Le 16 septembre dernier a eu lieu la première rencontre des utilisateurs européens (2011 European User Group Meeting) de LLVM — Low Level Virtual Machine —, la suite de compilation alternative à GCC. Sept présentations ont eu lieu à Londres devant pas moins de 80 personnes. La deuxième partie de la dépêche détaille quelques‐unes de ces présentations.

À noter que la prochaine réunion des développeurs LLVM aura lieu le 18 novembre 2011 à San José en Californie, soit deux jours après la date de sortie prévue de LLVM 3.0 qui apportera plein de nouveautés.