en
Feedback
Gamecodeur - Les coulisses

Gamecodeur - Les coulisses

Open in Telegram

Mes formations et mes meilleurs conseils en avant premiĂšre.

Show more
754
Subscribers
No data24 hours
+17 days
+530 days
Posts Archive
Ma sĂ©rie d'emails sur le temps volĂ© par le tĂ©lĂ©phone vous a fait rĂ©agir. En effet le manque de temps, et la surcharge de sollicitations, est un phĂ©nomĂšne de sociĂ©tĂ©. On mesure chaque jour ce que l'invention du smartphone nous a apportĂ© en terme de libertĂ© de communication et de source d'information. Mais on ne mesure pas toujours les dĂ©gĂąts collatĂ©raux qui sont colossaux. Avoir vĂ©cu SANS smartphone, pour les plus ĂągĂ©s d'entre nous, nous permet de comparer nos modes de vies avant et aprĂšs son arrivĂ©e. Je vous avais annoncĂ© vouloir partager quelques tĂ©moignages, en voici quelques un. Marc, par exemple, qui a ressenti une bouffĂ©e de nostalgie quand j'ai Ă©voquĂ© les annĂ©es 80 : Ayant grandi dans les annĂ©es 80 et 90, il m'arrive bien souvent d'ĂȘtre nostalgique de cette Ă©poque. Certes, certaines choses Ă©taient moins pratiques, mais comme tu l'Ă©cris, la tranquillitĂ© d'esprit n'Ă©tait pas comparable Ă  ce qu'on vit aujourd'hui! Mon premier ordi Ă©tait un amstrad cpc 6128, et seul, dans la buanderie de ma grand mĂšre, lĂ  oĂč se trouvait ma machine, du haut de mes 16 ans, je programmais des jeux. Oh rien de fou, des jeux en mode caractĂšres (qu'on pouvait dĂ©finir avec une matrice de points et la commande "symbol") mais, ce pavĂ© de manuel, je l'ai retournĂ© dans tous les sens. ForcĂ©ment c'Ă©tait Ă  l'Ă©poque un des seuls moyens d'apprendre. Je ne peux m'empĂȘcher d'ĂȘtre admiratif de grands dĂ©veloppeurs de l'Ă©poque (ex: Raffaele Cecco qui avait dĂ©veloppĂ© une magnifique version de Cybernoid sur Amstrad) qui arrivaient Ă  rĂ©aliser de telles prouesses techniques avec si peu de mĂ©moire Ă  disposition. Maintenant, tout est certes plus simple, mais, je ne sais pas, il m'arrive quand mĂȘme de regretter de ne pas avoir l'Ăąge que j'ai maintenant en 1980 pour dĂ©velopper sur des petites machines. C'est bĂȘte sĂ»rement. Nicolas, lui, nous partage ses astuces pour garder le contrĂŽle. Je suis admiratif de tant de motivation : Mes astuces : - supprimer instagram, facebook, twitter, reddit, tiktok, netflix. Il n'y a vraiment rien Ă  garder. Je les ressortirai quand il faudra marketer un jeu. - mettre en place des habitudes, trĂšs faciles "coder 1 ligne de code par jour", attractives "coder une mĂ©canique nouvelle" et satisfaisantes "plus je code plus j'ai de chance de rĂ©aliser mon rĂȘve" via du journaling - me rappeler chaque jour qui j'ai envie d'ĂȘtre "je veux ĂȘtre un game dev qui crĂ©e des expĂ©riences que les joueurs adorent", et le dire Ă  mes proches pour ce soit un engagement public J'adore sa vision de la programmation de jeux vidĂ©o. Son objectif n'est pas technique mais humain ! J'ai aussi reçu un super message de Julien, qui me dit que mon mail sur les 54 jours perdu sur le tĂ©lĂ©phone chaque annĂ©e a dĂ©clenchĂ© une conversation avec ses collĂšgues de travail. Il en profite pour partager une anecdote sur la façon dont il s'est rendu compte qu'il pouvait se passer d'une application qu'il utilisait pourtant beaucoup : Sans ĂȘtre un gros consommateur d'Ă©cran tĂ©lĂ©phonique, l'application Messenger de Facebook me prenait du temps, et avait surtout dĂ©veloppĂ© chez moi l'habitude de regarder rĂ©guliĂšrement si j'avais des nouveaux messages, ainsi que de suivre assidument les conversations de groupe auxquelles j'appartenais. Suite Ă  une mise Ă  jour de l'application, mon tĂ©lĂ©phone m'a redemandĂ© le mot de passe de mon compte Messenger. Et surprise... je ne m'en souvenais plus. Alors au travail, je ne pouvais pas effectuer les dĂ©marches pour en gĂ©nĂ©rer un nouveau. Les journĂ©es ont passĂ©es sans que je prenne le temps de me reconnecter Ă  cette application et j'ai dĂ©couvert plusieurs choses: - Je ne manquais absolument rien, ou presque. - J'ai commencĂ© Ă  ressentir un soulagement quant au fait de ne plus avoir Ă  regarder rĂ©guliĂšrement, juste "au cas oĂč". Ça fait plusieurs mois maintenant, j'ai pris le temps de prĂ©venir mes contacts proches de m'envoyer un sms plutĂŽt qu'un message sur l'application si le besoin s'en faisait ressentir, et je l'ai dĂ©sinstallĂ© de mon tĂ©lĂ©phone. Et ça marche.

Dans les annĂ©es 80 les journĂ©es Ă©taient 2 fois plus longues. On pouvait Ă  la fois travailler, faire du sport, se former, voir des amis (en y allant Ă  pieds), jouer. Dans la mĂȘme journĂ©e ! Sais-tu pourquoi ? Il n'y avait pas de smartphone... Imagine une journĂ©e dans les annĂ©es 80 : Au rĂ©veil, tu n'as rien Ă  vĂ©rifier sur ton tĂ©lĂ©phone : ni tes messages, ni les news, ni les stories du jour... Toute la journĂ©e, tu n'as pas de tĂ©lĂ©phone avec toi. Ce qui veut dire que tu n'es pas joignable Ă  moins qu'on ne sache oĂč tu es pour t'appeler sur un fixe... depuis un fixe. A midi, tu dĂ©jeunes l'esprit lĂ©ger, tu n'es pas stressĂ© par les infos que tu manques ou distrait par ton Whatsapp. Tu sais que personne ne va te dĂ©ranger ! Le soir quand tu rentres chez toi, aucune sollicitation. Tu peux passer du temps avec des amis, ou bosser Ă  apprendre Ă  programmer sur ton ordi (qui n'a mĂȘme pas internet). Les livres et les relations sont ta seule source d'information. Maintenant regarde ta journĂ©e en 2024. Prend ton tĂ©lĂ©phone et vas dans l'application ParamĂštres et sur "Bien-ĂȘtre numĂ©rique et contrĂŽle parental" sur Android. Ou "RĂ©glages > Temps d'Ă©cran" sur ton iPhone. Fais le bilan. En dehors des coups de fils importants, combien de temps ton tĂ©lĂ©phone t'a t'il volĂ© ? Fais une moyenne journaliĂšre et multiplie par 365 pour faire le total sur une annĂ©e. Divise par 24 et admire le nombre de journĂ©es que tu as passĂ© sur ton tĂ©lĂ©phone. La moyenne est de 54 jours par an devant le tĂ©lĂ©phone (3,6h par jour). 54 journĂ©es de 24h !! Et les ados peuvent y passer plus de 7h soit plus de 100 jours ! Alors quand on me dit "je n'ai pas le temps de crĂ©er des jeux vidĂ©o ou pour suivre tes formations"... Ajoutez au tĂ©lĂ©phone le temps sur Netflix ou la console... C'est une folie. Moi aussi j'en suis victime. J'ai une tendance Ă  l'addiction. Alors j'ai quelques techniques pour limiter les dĂ©gĂąts. J'en partage une avec toi demain. En attendant, tu peux me donner tes propres astuces ou ton ressenti !

Puis vous serez rattrapĂ©s par la programmation. Conclusion : Code is the key. Bon code et reste libre ! A demain. PS : Je planifie la prochaine formation. J'aimerais bosser sur une formation que je pourrais appeler "DĂ©veloppe ton propre Framework de jeu rĂ©utilisable en C# et Raylib". Tu apprendrais ici Ă  coder ta propre architecture de jeu rĂ©utilisable avec C# et Raylib. Cette formation te guiderait Ă  travers la crĂ©ation d'un framework de jeu complet, prĂȘt Ă  ĂȘtre utilisĂ© pour tous tes futurs projets : systĂšme de scĂšnes, splash screen, Ă©cran d'options, fenĂȘtrĂ© / fullscreen, chargement des assets (loading...), etc. Si tu es intĂ©ressĂ©, tu peux me le dire en commentaire.

(Note : lis jusqu'Ă  la fin, il y un PS oĂč je t'annonce quelque chose) Aujourd'hui je rĂ©ponds Ă  Pouty. Il m'Ă©crit : Il me faut plusieurs semaines entiĂšres pour pondre un prototype de jeu en love2d [...] donc Ă  l'avenir, je pense utiliser un moteur plus haut-niveau. On peut pas tout savoir, ça ne sert Ă  rien de vouloir tout recoder. Il faut tracer une limite quelque part, mĂȘme si la poursuite des connaissances est louable. Je n'ai jamais compris ce mythe. L'idĂ©e que d'utiliser un "moteur" va permettre d'aller plus vite. Si on me disait "j'arrĂȘte de coder mon propre moteur en pur OpenGL" je pourrais comprendre. Mais prototyper quelque chose en Lua / Love2D. On n'est pas dans le "rĂ©inventer la roue" ici. On n'est pas dans la "poursuite des connaissances" comme si ceux qui codent sans moteur Ă©taient des idĂ©alistes fuyant le capitalisme. Car Love2D est un framework de jeu vidĂ©o, il mache donc Ă©normĂ©ment le travail du programmeur. Pour un vĂ©ritable dĂ©veloppeur pro, coder un jeu en Lua avec Love2D c'est un peu comme faire du footing avant une course. En aucun cas il ne verrait cela comme quelque chose de plus compliquĂ© que d'utiliser un moteur. "Je n'arrive pas Ă  conduire un Karting, donc je vais conduire une F1". Que va apporter un moteur rĂ©ellement ? (ici on compare donc Love2D et un moteur, donc on parle de jeu en 2D) Un systĂšme de scĂšne ? 👉 Ce n'est pas vraiment nĂ©cessaire dans un prototype et de toute façon en Lua c'est juste un "if" dans la game loop. Pouvoir afficher un sprite par drag and drop ? 👉 C'est juste 1 ligne de code avec Love2D donc pas un gros avantage. Faire un jeu en 3D ? 👉 C'est ici un gros apport du moteur, mais pas tellement niveau programmation, niveau mise en scĂšne uniquement. Eviter de coder ? 👉 C'est lĂ  le mythe. On code en Unity tout autant qu'avec Love2D, et c'est mĂȘme plus compliquĂ©. Un moteur ne va pas vous Ă©viter de programmer. Une fois sorti de ce que le moteur vous "mache", il va bien falloir ouvrir l'Ă©diteur de code... Et lĂ  c'est le drame : non seulement l'API de Unity est trĂšs complexe (des centaines de pages), mais en plus son architecture est trĂšs avancĂ©e : systĂšme de scripts, systĂšme de composants, Monobehavior, Transform... Et dĂšs qu'il faut coder quelque chose de concret : liste d'entitĂ©s, gĂ©nĂ©ration procĂ©durale, comportements, interactions/choix du joueur, ... C'est la panique. Il faut tout autant coder et en plus dans un environnement et une architecture de pros, qui nous est imposĂ©e et codĂ©e par d'autres. MĂȘme Unreal Engine ne vous sauvera pas car le Blue Print les amis, c'est de la programmation visuelle ! Donc de la programmation. J'ai pu expĂ©rimenter le mythe du moteur sur plus de 200 Ă©lĂšves. Je dĂ©livre un accompagnement pour une certification "DĂ©veloppeur de jeux vidĂ©o" depuis quelques annĂ©es. Le programme est dĂ©coupĂ© en 3 modules : Pur code Lua / Love2D : Jeu en topview Pur code C# / Monogame : Puzzle game type Casse brique hybride Moteur C# / Unity : Infinite Runner On pourrait s'attendre ici Ă  une Ă©volution dans la complexitĂ© du gameplay. AprĂšs tout, avec un moteur "pas besoin de rĂ©inventer la roue" non ? RĂ©sultat ? Le projet Unity est le plus pauvre. Peu de fonctionnalitĂ©s. Beaucoup de difficultĂ©s dans la rĂ©alisation. IncohĂ©rences et manque de rigueur niveau code. Un vrai bordel. LĂ  oĂč les mĂȘmes Ă©lĂšves avaient fait preuve de crĂ©ativitĂ© et d'ingĂ©niositĂ© dans les 2 prĂ©cĂ©dents projets quand ils n'avaient sous les yeux que du code... Pourtant j'ai choisi un infinite runner car c'est un genre trĂšs adaptĂ© Ă  un moteur : utilisation du moteur de physique, dĂ©cor "lĂ©go", etc. Les seuls projets Unity dignes de ce nom qu'on me livre sont ceux dont l'Ă©lĂšve a bien compris et utilisĂ© la programmation. Faut-il fuir les moteurs ? Pas du tout. Je ne dis pas ici que c'est mal. J'ai personnellement produit une 20e de jeux avec Unity avec mon Ă©quipe de 2000 Ă  2015 et ça nous a bien aidĂ©. Je dis juste que cela ne vous sauvera pas si vous ne savez par programmer. L'illusion sera de courte durĂ©e : quelques jours au mieux.

La scĂšne en question.
La scĂšne en question.

Avant de commencer, je voulais remercier toutes celles et ceux qui ont sautĂ© le pas et se sont lancĂ© dans ma derniĂšre formation "La rĂ©volution Raylib : Programmer facilement des jeux 2D ou 3D en C#". Vous avez Ă©tĂ© prĂšs de 200 Ă  rejoindre la formation ! MERCI 💖. Maintenant que je vous ai remerciĂ©, je voulais parler d'un sujet qui fĂąche. La procrastination. Car il ne suffit pas de suivre une formation, il faut ensuite se lancer ! Je le sais, c'est trĂšs difficile. Si c'Ă©tait facile tout le monde le ferait. Mais j'ai remarquĂ© un truc bizarre sur les raisons de procrastiner. Souvent ce qui bloque ce n'est pas la motivation. Ce n'est pas non plus le manque de temps. Ni le manque de compĂ©tences. C'est le manque d'idĂ©es ! Alors je vais partager avec toi une expĂ©rience rĂ©cente et peut-ĂȘtre ça va t'aider. Et du coup tu vas mieux comprendre le titre de cet email. C'Ă©tait pendant que je travaillais sur la formation Raylib. Je cherchais Ă  rĂ©aliser un mini projet pour vous apprendre Ă  crĂ©er une scĂšne 3D en pur code, le dĂ©placement d'un modĂšle dans la scĂšne et l'interaction avec le dĂ©cor. Je n'avais aucune idĂ©e de quoi mettre en scĂšne... Du coup j'ai commencĂ© par crĂ©er un modĂšle 3D avec Asset Forge. J'adore cet outil, il me rappelle quand je jouais aux Legos. J'ai donc "fait joujou" avec. (le terme compte). Et de lĂ  est nĂ©e une voiturette. C'Ă©tait l'Ă©tincelle qui me manquait. Je me suis mis Ă  l'imaginer rouler devant une maisonnette. J'avais mon proto. J'ai mĂȘme imaginĂ© la suite (que je prĂ©vois pour une prochaine formation) : un jeu de livraisons ! Du coup c'est quoi le conseil ? C'est de retrouver l'enfant qui est en toi. De te mettre Ă  faire 'joujou' comme tu le faisais devant tes Legos. Sans avoir la moindre idĂ©e de ce que tu vas faire. Et les idĂ©es vont venir APRES et non pas avant comme tu l'imaginais. Bon code et reste libre ! A lundi pour d'autres conseils et anecdotes.

Un mot pour te rappeler que c'est le dernier jour pour profiter de tes 70% offerts sur ma nouvelle formation : La rĂ©volution Raylib : Programmer facilement des jeux 2D ou 3D en C# https://school.gamecodeur.fr/la-revolution-raylib-programmer-facilement-des-jeux-2d-ou-3d-en-csharp?coupon=RAYLIB2024T 👆 Le coupon expire ce soir Ă  minuit. À l'intĂ©rieur : 🧠 Je te forme au langage C# : le plus populaire langage de programmation en 2024 et un des plus puissants qui soit. đŸ’» Je t'apprends Ă  utiliser Raylib en C#, la librairie rĂ©volutionnaire qui va t'ouvrir les portes de la programmation de jeux vidĂ©o en C#. đŸ•č Je te dĂ©voile comment programmer des jeux en 2D mais aussi en 3D, aussi facilement que tu le faisais avec Love2D. Plus de 130 personnes ont dĂ©jĂ  pris leur place. Si tu ne l'as pas encore fait c'est ta derniĂšre chance.

?
Anonymous voting

Pour ceux qui ont vu l'exemple qu'on travaille dans la formation en 3D. (C'est-Ă -dire la voiturette capable de tourner autour d'un bĂątiment et de collisionner avec lui. Et le bĂątiment qui devient transparent quand on passe derriĂšre.) Ça me donne trop envie de coder un jeu genre de gestion du temps oĂč on doit livrer des trucs. Genre rĂ©gressif comme les enfants qui jouent au petit camion. Un truc comme ça ça vous plairait dans une formation ? L'idĂ©e serait de travailler la structure complĂšte d'un petit jeu en 3D. De travailler sur des effets de camĂ©ra. Bien sĂ»r d'un gameplay en 3D. Et sur un systĂšme d'objectifs.

90 commandes passĂ©es en 24 heures. Je m'attendais Ă  ce que cette formation cartonne, car elle Ă©tait trĂšs attendue. Mais je ne m'attendais pas Ă  autant de motivation. Certains ont dĂ©jĂ  terminĂ© tous les modules et ont commencĂ© Ă  bosser sur un projet ! Si tu n'as pas encore pris ta place, tu peux le faire en cliquant ici : https://school.gamecodeur.fr/la-revolution-raylib-programmer-facilement-des-jeux-2d-ou-3d-en-csharp?coupon=RAYLIB2024T Et si tu passes ta commande avant ce soir minuit, tu recevras une master class gratuite. Je crois que le succĂšs de cette formation rĂ©vĂšle un besoin profond : Celui de revenir Ă  des choses simples. À l'autonomie. Mais aussi Ă  un besoin de puissance. Jusqu'Ă  peu, il Ă©tait compliquĂ© de concilier simplicitĂ© et puissance pour programmer des jeux vidĂ©o. Les programmeurs s'embarquaient dans des galĂšres. Le langage C# associĂ© Ă  la librairie Raylib, c'est vraiment une rĂ©volution. Une seule commande pour paramĂ©trer un projet C# et commencer Ă  programmer un jeu. Le programme minimum d'un projet de jeu ne fait que 20 lignes de code. On peut afficher et manipuler des images et des modĂšles 3D en 2 lignes de code, et crĂ©er rapidement des scĂšnes incroyables. On a accĂšs Ă  une super librairie de fonctions pour tous les besoins courants d'un programmeur de jeux vidĂ©o. On bĂ©nĂ©ficie des performances impressionnantes du C#, qui tourne Ă  plein rĂ©gime, sans la lourdeur d'un moteur. On me demandait hier les avantages du langage C# par rapport au C++. Ces 2 langages ne sont pas comparables. Le C# est un langage accessible, moderne et polyvalent. Le C# offre une syntaxe simple et lisible. C'est vraiment facile Ă  utiliser. Le C# gĂšre automatiquement la mĂ©moire. Pas de prise de tĂȘte, on n'a pas besoin de savoir combien d'octets mesure une variable. Rien Ă  configurer pour intĂ©grer une librairie. Une commande ou un clic et voilĂ . Pas d'includes de l'enfer. On ajoute un fichier et il est intĂ©grĂ© au projet. Le C# dispose du framework Dotnet qui nous dĂ©roule une autoroute pour gĂ©rer listes, vecteurs, dictionnaires, les maths, les fichiers, le JSON, etc. C'est le langage moderne par excellence avec une communautĂ© Ă©norme et un Ă©cosystĂšme communautaire super actif. Et que dire de sa puissance ? Le C# se rapproche du C++ par ses performances. VoilĂ  comment ça marche : Le code source en C# est d'abord compilĂ© en un code intermĂ©diaire. Puis lorsque le programme C# est exĂ©cutĂ©, ce code intermĂ©diaire est compilĂ© en code machine. Directement pendant son exĂ©cution donc ! RĂ©sultat : Un code hyper performant car en langage machine tout en Ă©tant multi plateforme (puisqu'il est compilĂ© sur place, pas chez le programmeur !). C'est du gĂ©nie. CouplĂ© Ă  la librairie Raylib pour le C# c'est un duo incroyable pour coder des jeux. Raylib est conçu pour ĂȘtre facile Ă  apprendre et Ă  utiliser, avec une API simple et intuitive, idĂ©ale pour les dĂ©butants. Raylib ne nĂ©cessite aucune dĂ©pendance et aucune configuration Ă  part taper une ligne de commande pour l'ajouter. Raylib inclut des fonctionnalitĂ©s 3D natives, permettant de manipuler des modĂšles 3D, une camĂ©ra, etc. sans bibliothĂšques supplĂ©mentaires. Raylib fournit de nombreuses fonctionnalitĂ©s intĂ©grĂ©es pour le dĂ©veloppement de jeux : textures 2D, modĂšles 3D, primitives 2D ou 3D, audio, texte, contrĂŽles, collisions, etc. Raylib bĂ©nĂ©ficie d'une communautĂ© active et d'un support solide, avec des mises Ă  jour rĂ©guliĂšres et une forte prĂ©sence sur GitHub. Raylib est hautement portable et Raylib-Cs fonctionne sur Windows, Mac et Linux. Choisir ma formation C# et Raylib pourrait t'apporter, Ă  terme, ce dont tu avais besoin pour crĂ©er des jeux 2D ou 3D facilement, avec des performances inĂ©galĂ©es. Je veux qu'elle soit accessible Ă  toutes et tous, alors elle est en promo pour son lancement. Tu peux l'avoir Ă  seulement 59,40 € au lieu de 198.00 € et tu peux payer en 2 fois si tu le souhaites. Clique ici pour faire valoir ton droit : https://school.gamecodeur.fr/la-revolution-raylib-programmer-facilement-des-jeux-2d-ou-3d-en-csharp?coupon=RAYLIB2024T

Merci. 80 inscriptions en moins de 24h. Vous ĂȘtes motivĂ©s de fou.
Merci. 80 inscriptions en moins de 24h. Vous ĂȘtes motivĂ©s de fou.

La réception de cette formation est incroyable. Merci !
La réception de cette formation est incroyable. Merci !

Note : la formation arrive aussi sur l'espace Premium/Club.

Je te l'avais promis. Depuis deux mois, je travaille sur une grande formation pour te former Ă  la programmation de jeux en C# pur code. En 2D et en 3D. Que tu sois programmeur dĂ©butant ou avancĂ©, tu vas pouvoir poser la premiĂšre pierre de ton futur jeu en C#, sans aucun moteur surdimensionnĂ©. La formation s'appelle "La rĂ©volution Raylib". Et tu peux la dĂ©couvrir maintenant en cliquant ici : https://school.gamecodeur.fr/la-revolution-raylib-programmer-facilement-des-jeux-2d-ou-3d-en-csharp?coupon=RAYLIB2024T 👉 DerriĂšre ce lien : - Une formation complĂšte et de nombreux bonus pour faire de toi un expert en programmation de jeux C# en pur code avec la rĂ©volutionnaire librairie Raylib 5.0. En 2D et en 3D. - Un atelier vidĂ©o de plus de 4 heures : Je te forme en me filmant en train de programmer. Je t'explique tout ce que je fais, pas Ă  pas. Je te donne de nombreux conseils pour programmer comme un pro. - Le code source de chaque projet est livrĂ© avec la formation. 👉 A la fin de cet atelier tu seras capable : - De programmer en C# - D'utiliser la librairie Raylib comme un pro, pour crĂ©er des jeux en 2D ou en 3D trĂšs facilement - Jamais la programmation de jeux C# en pur code n'aura Ă©tĂ© aussi accessible ! 🎁 En bonus : - Une formation pour apprendre le C# en 1 journĂ©e. - Une formation dĂ©diĂ©e Ă  la Programmation OrientĂ©e Objet en C# - Une master class pendant laquelle je t'apprends Ă  programmer le jeu SNAKE de A Ă  Z avec Raylib en C# De trĂšs nombreux Ă©lĂšves l'attendaient. PrĂšs de 200 personnes se sont prĂ©inscrites. Si tu en fais partie, je te conseille d'ĂȘtre rapide. Il y a un cadeau pour les premiers inscrits
 Et une grosse rĂ©duction pendant 3 jours seulement. Tout est lĂ  : https://school.gamecodeur.fr/la-revolution-raylib-programmer-facilement-des-jeux-2d-ou-3d-en-csharp?coupon=RAYLIB2024T

Atelier Raylib C#.gif57.69 MB

J'ai programmĂ© plusieurs gros projets mais... J'ai dĂ» choisir entre la complexitĂ© du C++ que j'ai utilisĂ© pour Age of Enigma (prĂšs de 12000 lignes de code !), ou les limitations de BlitzMax pour Geisha Le Jardin Secret. Cela fait maintenant 20 ans que je rĂȘve de trouver une chaĂźne d'outils (langage + framework) qui rĂ©unisse Ă  la fois la puissance et la prĂ©cision du C++, l'accessibilitĂ© et la productivitĂ© du BASIC ou du Lua, et la simplicitĂ© de Love2D pour les graphismes, le son et les contrĂŽles. J'ai fini par me dire que cela n'existait pas... Mais en 2013 quelque chose s'est passĂ© ! Ramon Santamaria, un dĂ©veloppeur passionnĂ© et prof de programmation, a dĂ©cidĂ© de crĂ©er une bibliothĂšque simple et puissante pour le dĂ©veloppement de jeux. Son objectif Ă©tait de permettre aux dĂ©veloppeurs de se concentrer sur la crĂ©ation de contenu plutĂŽt que sur les dĂ©tails techniques complexes. DĂšs sa sortie, Raylib a attirĂ© l'attention grĂące Ă  sa simplicitĂ© et Ă  sa flexibilitĂ©. En quelques lignes de code, les dĂ©veloppeurs pouvaient crĂ©er des fenĂȘtres, dessiner des formes, et manipuler des textures. Cette facilitĂ© d'utilisation a rapidement fait de Raylib un choix populaire parmi les amateurs de dĂ©veloppement de jeux et les professionnels. En 2023, la grogne contre les politiques de licence d'Unity a propulsĂ© Raylib en tĂȘte d'affiche sur Github. Les dĂ©veloppeurs cherchaient une alternative plus lĂ©gĂšre et plus transparente, et Raylib a rĂ©pondu Ă  cet appel avec brio. Sa communautĂ© a explosĂ©, et les contributions ont affluĂ©, rendant la bibliothĂšque encore plus robuste et polyvalente. En plus, cette annĂ©e lĂ , comme une prophĂ©tie, la version 5.0 de Raylib est arrivĂ©e. Elle proposait des amĂ©liorations significatives, notamment une meilleure performance grĂące Ă  des optimisations de bas niveau, des nouvelles fonctionnalitĂ©s incluant une API plus intuitive facilitant la prise en main pour les dĂ©veloppeurs de tous niveaux. Mais surtout : le support de SDL2 comme backend, lui ouvrant potentiellement la porte de toutes les plateformes. DĂ©sormais Raylib Ă©tait devenue un librairie de jeux vidĂ©o mature, accessible et parmi les plus complĂšte du marchĂ©. GrĂące Ă  ces Ă©volutions, Raylib est devenu un choix incontournable pour les dĂ©veloppeurs de jeux indĂ©pendants et les studios cherchant une solution agile et efficace. La version 5.0 a consolidĂ© Raylib non seulement comme une alternative viable Ă  Unity, mais aussi comme une plateforme de dĂ©veloppement de jeux Ă  part entiĂšre, capable de rivaliser avec les outils les plus sophistiquĂ©s du marchĂ©. J’ai bossĂ© pendant plusieurs semaines sur une toute nouvelle formation consacrĂ©e Ă  Raylib
 J’ai créé un grand atelier pour t'apprendre Ă  programmer des jeux vidĂ©o en C#, sans moteur, avec une librairie rĂ©volutionnaire. Non seulement tu vas pouvoir te former au C# mais aussi apprendre tous les concepts dont tu auras besoin pour crĂ©er des jeux en 2D... et en 3D ! Pour toi aussi apprendre Ă  programmer des jeux en C# sans moteur, comme un pro ! Pour dĂ©couvrir tout ça
 Ne rate en aucun cas l'email que je vais t’envoyer demain matin. Je vais te montrer comment obtenir cette formation et les bonus qui l'accompagnent, pour un tarif de lancement exceptionnel et accessible. Attention : tu n’auras que 3 jours pour y accĂ©der. Alors n’oublie pas d’ouvrir l'email demain Ă  partir de 9h. À demain.

J'ai reçu ce message : "Je voudrais savoir si tu devais rĂ©apprendre tout, utiliserais-tu Lua et LÖVE ? Et surtout, comment extraire les idĂ©es de jeux et les coder ? Je m'explique : disons que je veux recrĂ©er Final Fantasy 1. Ok, je sais afficher une map, un personnage, etc. Mais comment crĂ©er le systĂšme de combat ? Quelle est ta rĂ©flexion ? Ce point m'empĂȘche vraiment d'avancer, du coup je n'ose rien faire et je me dis que je suis trop bĂȘte pour rĂ©ussir sĂ»rement..." SignĂ© je sais pas qui... Pensez Ă  signer au moins d'un prĂ©nom... Pour la 1Ăšre question, j'ai dĂ©jĂ  abordĂ© cela indirectement depuis quelques semaines : Je partirai sur du pur code, codĂ© de maniĂšre Ă  ĂȘtre agnostique du framework. Du C# avec Raylib ou Monogame + une couche d'abstraction, comme je le fais pour mon dernier projet. Pour la 2Ăšme question plus compliquĂ©e... "Quelle est ta rĂ©flexion ?" C'est un gros problĂšme auquel je ne peux pas rĂ©pondre. Ce serait faire croire qu'il y a une recette pour tout. La rĂ©alitĂ© c'est que le seul moyen d'acquĂ©rir un capacitĂ© Ă  rĂ©flĂ©chir C'EST DE BOUFFER DES MILLIERS DE LIGNE DE CODE. DĂ©solĂ© d'ĂȘtre direct, mais il n'y a aucune recette pour apprendre Ă  rĂ©flĂ©chir. Cela vient uniquement avec la pratique. "Comment crĂ©er le systĂšme de combat ?" En le codant... Tu prends ton Ă©diteur de code et tu tapes du code, une ligne Ă  la fois. Il faut voir ton jeu comme des piĂšces de Lego et il faut se lancer dans le code sans trop rĂ©flĂ©chir. Le "comment" au dĂ©part n'est pas si important. Vu que tu vas recommencer plusieurs fois jusqu'Ă  le trouver. VoilĂ  une recette : Coder. Coder. Rater. Merder. Recommencer. Pendant des jours. Des semaines. Des mois. Je ne suis pas lĂ  pour vous rendre du rĂȘve. Je suis lĂ  pour vous apprendre Ă  programmer. Et pour la rĂ©flexion, le raisonnement, je suis lĂ  pour vous rappeler qu'on est pas sur TikTok. Cela prend des mois et beaucoup de passion et de travail. Je suis lĂ  pour vous rappeler que c'est dur. Que c'est long. Voyez ça comme un jeu : codez pour "voir ce que ça donne" et si c'est pas bon, vous n'avez tuĂ© personne. Vous avez juste Ă  rĂ©essayer. Dernier point qui fait mal : Ce point m'empĂȘche vraiment d'avancer, du coup je n'ose rien faire et je me dis que je suis trop bĂȘte pour rĂ©ussir sĂ»rement... Ne rien faire, ben c'est l'Ă©chec Ă  100%. Au contraire tu as quelques chances de rĂ©ussir en essayant. Et tu as zĂ©ro chance en ne faisant rien. Et si tu n'as aucune idĂ©e de comment commencer, c'est peut ĂȘtre que tu manques de pratique et que tu es trop impatient. Ton projet est sĂ»rement trop ambitieux. Coder Final Fantazy a demandĂ© une Ă©quipe, et des milliers d'heures de programmation... Toi tu es seul. Se lancer dans un projet impossible est un excellent moyen d'Ă©chouer. Commence par coder des "bouts" d'un FF. Ton systĂšme de combat, vois-le comme un jeu dans le jeu. Et tu peux mĂȘme dĂ©couper ton systĂšme de combats en plusieurs morceaux. Pour manger un Ă©lĂ©phant entier, il faut y aller une bouchĂ©e Ă  la fois », dit le proverbe. Courage. Bon code et reste libre !

Voici la dĂ©finition d'un artisan : Artisan (nom) : Personne qui pratique un mĂ©tier manuel selon des normes traditionnelles. On peut citer le boulanger, le menuisier, le cuisinier... A l'opposĂ© d'autres utilisent des machines, de la chimie ou du surgelĂ©. Est-ce qu'on peut comparer leur produit ? Pas toujours. Ils crĂ©ent Ă©galement, leur rĂ©sultat est Ă©quivalent, parfois supĂ©rieur, parfois mĂ©diocre. Ce qu'on peut comparer c'est leur dĂ©marche. L'artisan aime tout autant le processus de fabrication que le produit fini. Il aime utiliser des matĂ©riaux simples, souvent naturels. Il aime les procĂ©dĂ©s traditionnels. Et il pense, Ă  tort ou Ă  raison, lĂ  n'est pas le dĂ©bat, que son produit est plus noble. Il y a mis de l'amour, du labeur. Je fais partie des gens qui pensent qu'un programmeur de jeu vidĂ©o est un artisan. A l'instar de Marc qui a rĂ©pondu Ă  ma lettre d'hier. J'y donnais des conseils pour dĂ©marrer une journĂ©e quand on est programmeur de jeu vidĂ©o, en fonction de son niveau. Voici son tĂ©moignage : Comme la fin de ce mail me suggĂšre de rĂ©pondre, j'y vais: cette semaine, je continue mon projet de jeu de tennis arcade vu d'en haut comme ce bon vieux tennis ace sur sega master system. Plus prĂ©cisĂ©ment, je travaille sur un Ă©diteur qui convertit mon squelette 3D en une sĂ©rie de sprites. J'ai placĂ© des couleurs basiques dans ce squelette afin de, via un shader, sĂ©parer les Ă©lĂ©ments pour gĂ©nĂ©rer diffĂ©rents masques. Ainsi, je pourrai colorer les diffĂ©rentes parties du corps de mon sprite (peau, t-shirt, cheveux etc...) par programmation et ainsi gĂ©nĂ©rer procĂ©duralement mes joueurs. Comme je fais tout en pur code avec monogame, pas le choix, les outils je dois les faire moi-mĂȘme :-) Il a mĂȘme accompagnĂ© son message d'une image : CrĂ©er ses propres outils... Si vous n'avez jamais vĂ©cu cette expĂ©rience, je vous souhaite vivement de la vivre un jour. J'ai des souvenirs Ă©mus lorsque j'ai créé l'Ă©diteur de niveaux de mon 1er jeu commercial (Geisha The Secret Garden). D'autres souvenirs amusĂ©s quand nous avons dĂ» crĂ©er un outil pour extraire les caractĂšres utilisĂ©s dans nos dialogues traduits en Japonais de mon jeu Age of Enigma, afin de rĂ©duire la taille de la police de caractĂšres qui sinon pesait plusieurs dizaines de mĂ©gas ! Quand on créé ses outils, on se sent artisan. Et l'artisan est heureux... Bon code et reste libre !

Le cours d'initiation au mode 3D de Raylib va ĂȘtre fun :)
Le cours d'initiation au mode 3D de Raylib va ĂȘtre fun :)

Si tu as dĂ©jĂ  un projet avancĂ©, prend le temps de te replonger dans le code au lieu de te lancer tĂȘte baissĂ©e, l'envie de coder va te venir au bout d'un moment. C'est parti ? Tu bosses sur quoi cette semaine ? (tu peux rĂ©pondre Ă  cet email je lis toutes les rĂ©ponses) Bon code et reste libre !