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

Posté par  (Mastodon) . Édité par palm123 et Benoît Sibaud. Modéré par claudex. Licence CC By‑SA.
Étiquettes :
46
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  (Mastodon) . Édité par NeoX, Benoît Sibaud, claudex, Nÿco et palm123. Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
49
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  (Mastodon) . Édité par Nils Ratusznik et palm123. Modéré par Ontologia. Licence CC By‑SA.
Étiquettes :
38
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  (Mastodon) . Édité par ZeroHeure, Pierre Jarillon, palm123 et Nÿco. Modéré par Ontologia. Licence CC By‑SA.
100
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  (Mastodon) . Édité par baud123, claudex, Benoît Sibaud et Pierre Jarillon. Modéré par Pierre Jarillon. Licence CC By‑SA.
Étiquettes :
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  (Mastodon) . Édité par baud123, nazcafan, Manuel Menal et Benoît Sibaud. Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
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  (Mastodon) . Modéré par tuiu pol. Licence CC By‑SA.
Étiquettes :
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.

LLVM 2.9 !

Posté par  (Mastodon) . Modéré par patrick_g. Licence CC By‑SA.
45
8
avr.
2011
Technologie

La version 2.9 de LLVM vient de sortir et a été annoncée par Chris Lattner le 6 avril !

Pour ceux qui se posent encore la question, LLVM est une suite de compilation concurrente de GCC, sous licence UIUC (semblable à BSD), qui a pour but de produire des briques de bases modulaires pour construire toute sorte de programmes : compilateurs, debugger, assembleur, etc. L'aspect hautement modulaire permet également de pouvoir travailler sur une petite partie et d'en faire bénéficier toutes les autres. C'est notamment le cas des optimisations : en effet, LLVM utilise une représentation intermédiaire (IR) parfaitement spécifiée et les optimisations se font sur cette représentation. Et ce n'est qu'un des nombreux avantages de LLVM.

Cette version 2.9 permet de consolider plein d'aspects de LLVM. Parmi les nouveautés principales, on notera :

  • la génération de code a été améliorée, en particulier pour l'architecture ARM ;
  • l'optimisation au moment de la liaison (LTO) a été améliorée également ;
  • un nouvel allocateur de registre a été écrit, mais n'est pas activé par défaut pour cette sortie ;
  • l'infrastructure Machine Code est désormais utilisée par défaut pour produire du code objet directement (plutôt que de passer par un assembleur externe) ;
  • Clang, le compilateur C/C++/Objective-C/Objective-C++ gère le C++0x de mieux en mieux, avec l'ajout des rvalue references et des variadic templates ;
  • LLDB, le débugger du projet LLVM, atteint un certain stade de maturité alors que ce n'était qu'un projet larvaire à la dernière sortie.

LLVM 2.8, ça avance !

Posté par  (Mastodon) . Modéré par patrick_g.
31
22
oct.
2010
Technologie
Une nouvelle version de LLVM (Low-Level Virtual Machine) est sortie le 5 octobre 2010. Elle se nomme LLVM 2.8 et suit la version 2.7 sortie le 27 avril dernier. LLVM est une infrastructure de compilation sous licence BSD et est soutenue par Apple. Elle représente en fait une boîte à outils pour réaliser des compilateurs, des machines virtuelles et plein d'autres choses. Elle est fondée sur un langage assembleur typé qui sert de représentation intermédiaire pendant la compilation, mais également de bytecode sur le disque et de langage assembleur à part entière. Le projet LLVM développe également nombre de sous-projets, et non des moindres, comme Clang qui est un compilateur C/C++/Objective C/Objective C++.

Cette nouvelle version apporte plein d'améliorations, notamment au niveau des performances, et de nouveautés, que ce soit dans LLVM ou dans les projets annexes. Quelques-unes des principales avancées sont données dans la suite de la dépêche.

La Jyraphe sort des steppes en version 0.4

Posté par  (Mastodon) . Modéré par baud123.
Étiquettes :
8
21
avr.
2009
Internet
Jyraphe est une application libre web de dépôt de fichier simple et facile à installer, écrite en PHP pur qui est née il y a à peu près un an. Elle permet de s'affranchir des sites d'hébergement de fichiers en un clic et d'avoir son propre dépôt de fichier sur son bout de serveur et ainsi contribuer à l'extinction du Minitel 2.0.

À quoi peut servir un tel site ? Facile ! Qui n'a jamais voulu envoyer un fichier à travers un protocole de messagerie instantanée sans y arriver ? Ou envoyer une pièce jointe à une liste de diffusion qui dépasse la taille autorisée ? Jyraphe est fait pour ça : vous allez sur votre dépôt, vous envoyez votre fichier et vous recevez un lien en échange que vous pouvez diffuser. Les seules contraintes sont les paramètres PHP qui limitent la taille du fichier à envoyer (2Mo par défaut).

Le projet Jyraphe est publié sous licence AGPLv3 et est hébergé par GNA!.

Jyraphe, votre dépôt en ligne de fichier

Posté par  (Mastodon) . Modéré par Amaury.
0
17
avr.
2008
Internet
La Jyraphe est sorti des steppes dans sa première version publique, la version 0.1.

Jyraphe est une application web de dépôt de fichier, facile à installer et facile à utiliser. Jyraphe est une application complètement libre, distribuée selon les termes de la GNU Affero General Public License, version 3 ou supérieure. Jyraphe est développé selon la philosophie Getting Real, donc possède juste les fonctionnalité nécessaires. La suite de la dépêche vous donnera un aperçu de ces fonctionnalités.

Le but de Jyraphe est de proposer une application web de dépôt de fichier simple que tout le monde puisse installer sur son bout de serveur. Le but est de multiplier les Jyraphe sur l'Internet, à l'inverse de certains sites dont le but est de centraliser le service au maximum, en ajoutant au passage de la publicité qui fait mal aux yeux.

Cette application est un bon remède contre le Minitel 2.0