Devoir de vacances : XNA

Derniere version : 1.1

Je me suis mis en tête de faire mes premiers pas avec XNA. Pourquoi ?

Parce que je suis curieux. Et parce que c’est du C#, qu’il faudra peut être (mais pas sur) que j’utilise un jour au taf. Donc me voilà parti sur un développement à partir de presque zéro. Je connais pas Visual Studio, je connais pas le C#, je connais pas XNA.  En revanche je connais le C, je connais un peu PAlib pour la DS, j’ai de vague notion d’objet (cours d’AOO, POO et java à l’école ya longtemps) et surtout je connais google.

Au final j’ai un clone d’Asteroid (wouhou! encore un…) parce que c’est facile à faire. Et oui monsieur skaven, moi je les ai fini mes devoirs de vacances, j’ai pas mis 2 ans! Bon, ok, personne ne bave devant mon jeu. J’ai du mettre 6 ou 7h, en comptant les tutoriaux. 3 ou 4h pour le jeu

Image hosted by uppix.net

A prendre ici donc. (obsolete, derniere version en haut du post)

XNA c’est un truc assez cool. Pour ceux qui on déjà touché à la PAlib pour DS, c’est le même genre. Le travaille d’I/O est déjà tout fait. Visual Studio c’est pas mal comme IDE. Bref, si tu te fais chier en vacances, choppe Visual C# Express et XNA 3.0, et code un Lemmings.

Par contre ya un truc qui m’a fait chier, c’est la gestion des collisions. J’ai pas trouvé comment le fait élégamment, alors c’est 2 boucles imbriquées bourrin et des if.

Concernant le super jeu, quelques infos zéro :
=====================================================================
Installation :
– cliquer sur setup
=====================================================================
Desinstallation
– ajout suppresion de programme
=====================================================================
Controle:
– Avancer : fleche du haut || Xboxpad haut
– Reculer :  » du bas || Xboxpad bas
– tourner à gauche : fleche .. de gauche! || Xboxpad gauche
– tourner à droite : vous avez compris.
– tirer : espace || Xboxpad X
– Nouvelle partie : F2 || Xboxpad start
– Quitter : Escape || Xboxpad back
=====================================================================
FAQ :
c’est normal que c’est moche?
– oui, made in paint (et un peu toshop pour le fond)

c’est normal que j’entend rien?
– oui, ya pas de son

c’est normal que ça vibre?
– oui, si tu as une manette xboite
– non si tu n’en as pas.

yaura une mise à jour ?
– je crois que ca suffira une seule version
=====================================================================

Edit :

– Correction de la  Direction  au clavier
– Correction de l’Accélération également trop brusque
– Changement taille sprite de tir
– Correction d’un bug : arret de spawn des rochers avec un score de 40 ou 41
– Correction d’un bug : impossible de reculer avec la manette xboite
– changement de la resolution en 1024×600 pour que je puisse bosser sur mon netbook.

Mon grand angle est en route!

Image hosted by uppix.net

J’ai craqué, je me suis longtemps tâter entre celui ci et le 14-54 v2, mais finalement, un peu de grand angle et de zoom en plus, c’est pas plus mal. Et bon, l’argument de ma copine est pas mauvais : « Prend tout de suite le haut de gamme, c’est plus cher mais t’aura pas d’état d’âme ».

Le caillou est donc en voyage depuis le sud, je l’ai acheté chez Muller Photo Service. A noter au passage que je l’ai acheté 790 euros au lieu de 1000 (prix globalement constaté). J’ai eu une petite mésaventure au passage au moment de l’achat, a savoir que juste après avoir payé, dans mon historique de commande j’avais 3 commandes qui ne comportaient qu’un seul article sur les trois que je voulais. Il est 23h30 un dimanche, j’envoi donc un mail. Le lendemain,10h, le monsieur Muller m’appelle, on check un peu tout, corrige mon carnet de commande, et me dit qu’il envoi le bouzin. Bref, l’internet mondial a fait de la merde et tout a été corrigé rapidement.

J’avais déjà commandé chez eux au mois de décembre la bague d’adaptation officielle Olympus OM vers 4/3 pour 75 euros au lieu de 99. 1h après ma commande une dame m’avait rappelé pour confirmer et me dire que le colis allait partir.

La commande de dimanche dernier me confirme que ce petit magasin est très efficace et surtout pas cher. Un 35mm f3.5 coute 199euros chez eux, contre 240 chez digit photo et 265 à la fnac. Par contre (et c’est tant pis pour vous, ah ah ah !) Un Canon 70-300 IS est à 520 euros, idem que chez digit photo, contre 615 à la fnouc. Pour moi c’est donc une bonne boutique sérieuse pour le matoss olympus.

Parlons « embarqué »

Je digresse un peu du thème du bleug pour parler de ce qui me fait gagner ma croûte et me permet de craquer parfois sur du matériel photo, et par la même occasion bouffer et avoir un toit. Le « système embarqué ». Sous ce terme très à la mode, se planque la plupart des choses qui font qu’au quotidien vous pouvez utiliser un programme super compliqué sur votre machine à laver (lavage à 38,12°, puis essorage un peu vif mais pas trop , séchage optimal pour le t-shirt « 10 types de personnes, ceux qui connaissent le binaire et les autres » sans abimer la dentelle de la lingerie de madame), avoir des super intéressantes sur l’afficheur digital de votre autoradio, savoir combien de kilomètres vous pouvez encore parcourir avec votre voiture, ou bien configurer votre box internet pour laisser ouvert le port pour recevoir plus rapidement les films que votre cousin d’Amérique vous envoie par Internet.

Bref, yen a partout. Mais physiquement, ya quoi derrière ce merdier?

Ben la plupart du temps, le même bordel que dans votre PC. Un truc pour recevoir des stimuli de l’extérieur, un bouzin pour traiter les infos, et un bidule pour sortir des infos plus ou moins intéressante.

Question 1 : Alors ça veut dire qu’on pourrait utiliser un PC pour faire plein de truc dans ma machine à laver ?
Oui, clairement, le PC standard de Madame Michu a la capacité suffisante pour le faire. Mais…

Question 2 : mais pourquoi ya pas de prise USB sur ma machine à laver comme sur mon PC ?
Obvious : ça coûte des thunes ! et c’est inutile d’avoir un Core 2 Quad pour gérer le cycle d’essorage.

Question 3 : Il y a quoi dans ce cas dans ma machine à laver ?
Il peut y avoir plein de chose. Mais surtout, il y un chef d’orchestre, un composant qui peut être clairement omnipotent sur tout ce qui se passe dans la machine, de la présence d’une source d’énergie suffisante, à la gestion de la température de l’eau, en passant par l’usure du moteur électrique du tambour de la machine (important ça, mais pas si utiliser que l’on aimerait).

Et ce composant, c’est la plupart du temps un microcontrôleur.

Question 4 : C’est quoi un microcontrôleur?
C’est ça. Selon ma propre définition, c’est un microprocesseur avec des périphériques intégrés, parce que vous le savez déjà, bande de geek, quand on intègre plusieurs fonctions dans un même composant, c’est moins cher que de les prendre en pièce détaché. On va donc trouver plusieurs fonctions comme :

  • un cœur central qui fait des calcul (le microprocesseur, finalement)
  • une petite mémoire vive
  • parfois une mémoire morte
  • des entrées/sorties numériques
  • des entrées/sorties analogiques
  • des UART (Universal Asynchronous Receiver Transmitter) (mon dieu, en cherchant la traduction exacte du terme, je me suis rendu que j’écrivais la même chose que wikipedia…) qui sont globalement des liaisons séries (ouais, la prise DB-9 sur laquel vous branchiez votre antique modem 33k).
  • etc

Ça a l’air de rien comme ça, mais votre Core 2, il fait pas tout ça. Bon… je m’avance un peu. Mais en tout cas, les premiers microprocesseurs d’homme avait besoin de plein de merdier autour d’eux pour gérer l’ensemble des tâches qu’on leur confiait. Pourquoi à votre avis vot’ Paintiomme il a un southbrigde et un northbrigde avec lui ?

Le microcontrôleur, lui, il se suffit « presque » à lui même, et surtout, il le fait pour pas très cher. Le micro le moins balèze que j’utilise pour le moment est un PIC 18F2525, dont le pris atteint la somme faramineuse de … 5 euros ? Et encore !

Bien évidement, tout comme pour les processeurs de PC, on a le choix. Et que dis je, on a plus que le choix. En effet, là où en informatique classique, on conseille à Madame Michu de prendre le dernier cri parce que c’est trop tout neuf de la balle, dans l’industrie on regarde à deux fois avant d’acheter, parce que le prix n’est clairement pas le le seul soucis du concepteur de système embarqué de lave linge (d’ailleurs, le prix, c’est souvent le département achat qui va lui dire : « dis donc, ton Coldfire, il coûte un peu cher là (un peu plus qu’un centaine d’euros), tu veux pas un PIC ou un ARM à 5 euros plutôt? »).

Pour repartir sur les choix possibles, on a donc plusieurs critères qui rentre en compte, comme par exemple :

  • la puissance brute : alors que les processeurs 64bit commencent à être utilisé en info « domestique », les micro, eux, existe encore en version 8, 16 ou 32bit. La vitesse joue également son rôle
  • le nombre de périphérique intégré : avoir un micro qui mouline à fond, c’est bien, mais si en plus on a plein de chose a lui faire faire (des acquisitions, de la comm série, ethernet, du calcul différentiel intégralement dérivé), c’est mieux qu’il est les bons périphériques déjà tout près (UART, liaison CAN, controlleur ethernet, etc)
  • la consommation électrique : s’il pouvait en plus être invisible sur la facture électrique (et autonome longtemps sur batterie…)
  • le prix : monde capitaliste, quand tu nous tiens.
  • le support technique: l’air de rien, un micro avec une grosse doc peut couter plus cher que son homologue russe… dont la doc n’existe qu’en russe. Sans parler des outils de développement qui vont avec.
  • la techno utilisé en interne : exemple à deux balles, un micro Intel sont en little endian, les Freescale sont en big endian, et essayer d’accorder les violons dès le départ en choisissant bien sont composants peut épargner des emmerdes (j’y reviendrais)

Bref, c’est quand même un beau bordel tout ça. Je vais préparer une suite ou je parlerais des langages, des périphériques, du jargon du coin, d’outils de dèv, et tant qu’à faire d’exemple pratique.

here comes a new challenger!

Bon, pas vraiment nouveau, mais un peu quand même. J’ai laissé mon E-510 à un heureux élu, Raumin (pour 360 euros, avec une CF 1go et un filtre UV), car l’appareil photo nouveau est arrivé. Il s’agit évidement d’un Oly, un E-30 pour être précis.

Bon, évidement un changement de boitier ne change pas l’allure globale des photos que je fais, pour la simple raison que si un bon objectif à pour raison de flatter la retine du spectateur, un boitier permet surtout du confort au photographe (je parle pour l’ensemble des boitiers amateur à semi pro, pour tout ce qui est 5D/D300 et supérieur j’ai jamais eu l’occasion de voir).

Le premier truc qui se voit c’est évidement l’écran orientable :
1)

Pour avoir déjà un peu trimballé le bouzin, c’est clair que c’est super pratique :
2)
3)
4)

Alors bien sur, bande d’aigri que vous êtes, vous me direz « oui mais bon, on prend au jugé (et à l’arrache) et on a pareil ». Bien sur, c’est clairement dispensable un écran comme ça. Mais quand je vous parlais de confort, c’est à ça que je pensais.

Deuxième point pratique, le viseur plus grand. C’est le point qui m’a fait hésité entre l’E-3 et l’E-30. Rappel :

Toutefois, celui de l’E-30 s’avère suffisant pour faire la mise au point à la mano. En effet, avec mon reflex précédent, j’étais obligé de passé en Live View pour faire la netteté avec mon 50mm (manuel, je rappelle). Maintenant plus besoin de liveview, et ça permet d’être plus réactif :

5)
6)
7)
8)

Autre intérêt, une monté en iso plus propre (et plus haute). La où avant je m’autorisais l’iso 800 en serrant les fesses pour ne pas voir apparaitre de trame, je n’ai plus de complexe à présent. Le bruit est plus uniforme et donc plus facilement corrigible.

9)
10)

Egalement au programme, la mise au point par détection de contraste. En gros, éviter les aller/retour du mirroir pour faire la mise au point en Live View. Avec un bon objectif, le 14-42 de base par exemple, c’est inutile, car la MAP classique est très rapide et précise. Mais avec mon télé (70-300mm), c’est quasi indispensable car la MAP classique est faussé. Pourquoi, j’en sais rien. Mais avec des photos avec la zone de netteté trop devant est super frustrant. Avec la detection de contraste, la MAP est plus précise. Plus lente, c’est clair. Mais ça permet d’enfin utiliser mon télé de façon efficace.

11)
12)
(Au passage je me permet d’ajouter avec un sujet qui porte des fringues rayés, la detection de contraste est particulièrement efficace!)
L’appareil permet également de faire des microajustement pour les autofocus. Ca sauvera peut etre mon télé, mais j’ai pas encore eu le temps de m’y atteler.

Sinon autre nouveauté pour moi, une balance des blancs qui se débrouille bien. Avec l’E-510, c’est simple. J’ai banni le réglage AWB (prends note Raumin, prends note). Pour le moment je laisse l’E-30 se débrouiller et ça se passe bien. Mais au moins, je connais par coeur le type de WB à utiliser dans n’importe quel situation maintenant, ça fait gagner du temps pendant les concerts au la lumière change souvent dans tes tons qui trompent l’appareil (vous connaissez peut etre le fameux éclairage violet qui donne du bleu sur la photo).

Au final je suis super satisfait de mon achat. J’ai prêté l’appareil à la maman de ma chéri et il a l’air facile à utiliser pour qqun qui connait rien des APN Olympus. Ça doit être un gage de bonne ergonomie.

13)
14)
15)

Dernier gadget de l’appareil, les filtres intégrés pour photoshoper les photos avant même la post prod.
16)
(bon voyage mon petit…)
Je verrais si j’utilise ou pas, probablement pour le prochain pixo. A voir, ou pas.

Dernier détail : j’ai vendu l’E-510 avec le 14-42mm, ce qui me laisse avec le 70-300mm et le 50mm. Bref, j’ai plus de grand angle. Faut que j’en trouve un, et je sais pas encore quoi, j’hésite entre plusieurs solutions, j’en parlerais plus tard.

re : Pix-O #12 à la bourre

avec la photo cette fois
J’avais aucune idée de quoi faire pour ce pixo, et finalement en prenant mon café je me suis rappelé que j’avais un cliché sur mon dur qui répondait à la problématique.
Enfin bon, à la bourre et cliché daté de plus d’un an (il provient de mes petits souvenirs de stage à Oxford, les innondations de juillet 2007 pour être précis)