Vendredi 13 avril 2007
5
13
/04
/Avr
/2007
00:23
Mon premier jeu sur NDS n’aura rien de révolutionnaire car ce sera un... démineur ! Bon, je vous entend d’ici : quoi, encore un démineur, il en existe déjà des brouettes, etc. J’en conviens, ce ne sera pas le jeu le plus original de l’année ! Mais je me suis lancé dans sa réalisation parce qu’il n’y a finalement pas tant de démineurs que ça sur NDS et qu’ils manquent cruellement de fun. Ma version apportera quelques petites innovations...
Mais surtout ce premier jeu est avant tout l’occasion pour moi de découvrir la programmation sur NDS. Ce type de jeu a aussi pour avantage d’être facile et rapide à programmer : j’en suis approximativement à 75% du développement. Il ne me reste plus guère à faire que le menu, la gestion de la victoire et de la défaite, ainsi que la gestion des meilleurs scores. Le plus difficile encore sera de lui trouver un nom ! Son nom de code est pour le moment Ka-BoOm, l’onomatopée américaine pour une explosion (l’équivalent du "boum" français, quoi). Des screenshots arriveront sous peu...
Par Stravingo
-
Publié dans : Jeu : Ka-Boom
0
Jeudi 12 avril 2007
4
12
/04
/Avr
/2007
15:37
Devkitpro est le SDK qu’il vous faut pour développer sur NDS. Il vient avec la librairie libnds qui vous évite d’avoir à accéder au bas niveau du matériel de la console pour la programmer. Vous pouvez ainsi accéder aux différentes fonctionnalités de la console en évitant de manipuler des registres ou d’écrire et de lire des données à des adresses spécifiques de la mémoire. Mais bien que libnds vous simplifie la tâche, la programmation directe à l’aide de cette librairie reste assez ardue. En particulier, l’initialisation de la console, la gestion de la mémoire et des graphismes sont plutôt lourds. Heureusement pour les homebrewers est arrivée la libraire Palib. Développée par un molusque parisien (salut Mollusk
), elle simplifie la programmation sur NDS en s’appuyant sur la libnds dont elle cache la complexité. Une communauté internationale très dynamique de homebrewers s’est organisée autour de cette librairie qui évolue constamment, apportant périodiquement son lot d’innovations.
Pour mes premiers développements sur NDS j'ai choisi d'utiliser Palib qui s'avère très agréable, bien que souffrant parfois de manque de doc. Il faut souvent aller voir dans le code source (fourni) afin de trouver l'information ou comprendre le fonctionnement de telle ou telle fonction. Mais Palib est un projet très dynamique - ce qui peut expliquer que le code évolue plus rapidement que la doc - et cela devrait aller en s'améliorant.
Par Stravingo
-
Publié dans : Général
0
Mercredi 11 avril 2007
3
11
/04
/Avr
/2007
14:08
Pourquoi m'être lancé dans le développement sur NDS? Presque par hasard, sur l'achat impulsif d'une NDS, un cadeau d'anniversaire fait en février à mon neveu Samuel par manque d'idée... et du coup je m'en suis aussi acheté une pour moi ! Et oui, j'aime me faire des cadeaux. Après avoir offert à Sam la DS Lite blanche, je me suis offert la noire. Elles sont toutes les deux magnifiques. J'avais lu sur bien des forums que l'inconvénient de la noire était qu'elle se salissait rapidement et bien c'est vrai ! Vous aurez beau faire tout votre possible, vous ne pourrez éviter de la recouvrir d'empreintes de doigts ! Les ingénieurs de Nintendo ont du boulot pour la prochaine version de la console. Dans leur todo list, à la suite d'évidentes améliorations techniques, je leur conseille de prévoir un traitement spécial de la coque ou l'utilisation d'un autre matériau.
Une fois la console achetée, étant programmeur depuis bien des années, la suite logique était de chercher à programmer la bête. Je me suis donc lancé le défi de réaliser quelques projets de jeux (et oui, j'aime aussi me lancer des défis). Tout cela remonte maintenant à 2 mois et ça avance plutôt bien. Bientôt les premiers résultats sur ce blog !
Par Stravingo
-
Publié dans : Général
0
Mercredi 11 avril 2007
3
11
/04
/Avr
/2007
12:50
Développer sur NDS est relativement facile pour peu que l'on ait des connaissances en C/C++. Il y a aussi la possibilité de développer en assembleur, mais de nos
jours on préfère pour des raisons de rapidité de développement utiliser des langages de haut niveau, quitte à écrire certaines parties critiques du code en assembleur pour accélérer les
traitements. J'ai choisi pour ma part de développer en C/C++.
L'étape suivante est de se procurer un système de développement que l'on utilisera sur PC (ou sur Mac) qui permettra d'écrire le programme et de le compiler en un
code machine compréhensible par la NDS (processeurs ARM). La solution officielle consiste à s'inscrire auprès de Nintendo pour demander le système de développement (SDK) officiel de la console.
Autant dire que cela ne concerne que les grosses boîtes, qui cherchent à développer des jeux commerciaux. L'autre solution, beaucoup plus grand public, est d'utiliser le formidable Devkit Pro, système gratuit de développement sur consoles (NDS mais aussi GBA, GameCube, GP32, PSP). C'est la solution adoptée par tous les programmeurs de
"homebrews", ces programmes amateurs (dans le sens noble du terme - encore que, des fois...) faits à la maison. Ou dans le garage.
Mais une fois le programme écrit puis compilé sur PC se pose un gros problème : la NDS est une console fermée, elle ne dispose pas contrairement à la PSP d'un port
USB qui permettrait d'y transférer le programme. Il y a la possibilité de lancer le programme sur un émulateur, il en existe plusieurs pour la NDS, mais ceux-ci sont encore perfectibles. Ils
n'émulent pas encore correctement toutes les fonctionnalités de la console, et pas avec une vitesse suffisante. Heureusement, il existe ce qu'on appelle des "linkers", cartouches au format NDS ou
GBA, s'insérant respectivement dans les slot-1 et slot-2 de la console, et disposant de mémoire flash dans laquelle on peut installer nos programmes fait maison. J'utilise une M3 DS Simply, très
bon linker Slot-1.
Mais les émulateurs sont néanmoins indispensables à mon sens dans la chaîne de développement pour tester rapidement son programme, pour éviter d'avoir à le
transférer systématiquement sur le linker après chaque compilation. J'utilise pour ma part l'excellent No$gba, le meilleur émulateur NDS à l'heure
actuelle.
En résumé, pour être fin prêt pour le développement de homebrews, il faut donc un SDK, un émulateur, un linker... et une console, à moins de développer uniquement
sur émulateur !
Par Stravingo
-
Publié dans : Général
0
Mercredi 11 avril 2007
3
11
/04
/Avr
/2007
01:01
Et voilou !
Quelques octets de plus jetés dans la toile, mais qui les rattrapera ? Vers
combien d'internautes désoeuvrés (ou perdus) iront-ils ? Un petit octet pour moi, un mégaoctet pour l'humanité ? Dans ce flux d'octets qui jaillit du net pour venir vous frapper la rétine, je
parlerai de mes développements pour la Nintendo DS, petite console de jeu (mais pas seulement) bien sympathique au très fort potentiel ludique. Programmer la bestiole est un vrai plaisir. Elle a
pour elle des atouts parfois très originaux : double écran, écran tactile, micro, WIFI, 3D accélérée, ainsi que des extensions possibles (gyroscope, pack rumble), etc. Parvenir à tirer parti
intelligemment de toutes ces possibilités sera un challenge mais je relève ici le défi ! Les idées ne me manquent pas, le temps si - malheureusement !
Tout cela se mettra progressivement en place. C'est là l'intérêt d'un blog, permettre de voir l'évolution des choses au jour le
jour.
Il y a un début à tout. Une fin aussi, mais on verra plus tard...
Par stravingo
-
Publié dans : Général
1