microStudio accueille 4 nouveaux langages de programmation

Après le déploiement d’une version standalone, microStudio accueille à présent 4 langages de programmation supplémentaires sur la version Web : microScript, Python, JavaScript et Lua.

L’utilisation de microStudio reste la même peu importe les langages utilisés, vous gardez l’accès aux avantages de microStudio comme les bibliothèques graphiques proposées par l’outil, les astuces, les bibliothèques optionnelles comme Matter.js et Cannon.js, l’exportation HTML5, Windows, Mac, Linux ou Android.

Sur la page d’annonce de la mise à jour, l’équipe de microStudio explique les raisons du choix de ces langages :

Pourquoi Python ?

Dans de nombreux pays, les lycéens doivent apprendre Python. Les laisser s’en tenir à Python avec microStudio les aidera à pratiquer la langue sur laquelle ils seront testés, plutôt que d’avoir à passer d’une langue à l’autre.

Pourquoi JavaScript ?

Certains utilisateurs peuvent être préoccupés par les performances de leur jeu. J’ai de bonnes nouvelles pour eux concernant le microScript (lire ci-dessous), mais si vous créez un monde généré de manière procédurale en temps réel avec des milliers de contrôles de collision ou autre, vous voudrez peut-être vous fier au langage de base de votre moteur et éviter d’ajouter un autre langage couche dessus. Dans microStudio, le langage de base est JavaScript et JavaScript dans le navigateur est incroyablement rapide.

Pourquoi Lua ?

J’ai entendu des gens demander pourquoi ils devraient apprendre un Lua différent/simplifié alors qu’ils connaissent déjà le Lua. Offrir Lua rendra peut-être microStudio plus attrayant pour ces utilisateurs.

Qu’en est-il du microScript ?

microScript reste le meilleur langage pour travailler dans microStudio, voici pourquoi : microScript est plus simple, mais complet et très indulgent pour les débutants. microScript ne vous appellera pas parce que vous avez oublié de définir une variable. Aucune erreur d’exécution : le microScript ne peut pas s’arrêter à l’exécution. C’est un énorme avantage : cela signifie que vous pouvez vraiment travailler sur votre programme pendant qu’il est en cours d’exécution, apporter des modifications en direct sans risquer de casser le flux en permanence et de devoir redémarrer le jeu à chaque fois. Avec la version d’aujourd’hui, des mises à jour à chaud des classes sont disponibles, ce qui signifie que vous pouvez travailler sur une définition de classe et voir instantanément le résultat appliqué à toutes les instances d’objet dérivées de votre classe dans le jeu en cours. Cela rend le codage dans microStudio encore plus interactif.

Vous pouvez retrouver la page d’annonce de microStudio sur leur site officiel : https://microstudio.dev/community/news/microstudio-now-supports-4-programming-languages-microscript-python-javascript-and-lua/254/

David de Gamecodeur a réalisé une interview du créateur de microStudio, que vous pouvez regarder ici si vous l’avez raté :

Gamecodeur possède un parcours complet de programmation en Lua, disponible à cette adresse : https://www.gamecodeur.fr/parcours-debutant/ , ainsi qu’un parcours complet de programmation en Javascript, disponible à cette adresse : https://www.gamecodeur.fr/formation-a-la-programmation-de-jeux-video-en-html5/

Si vous souhaitez apprendre à programmer des jeux vidéo, vous pouvez rejoindre Gamecodeur à l’adresse suivante : https://www.gamecodeur.fr/acces-premium/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

SDL passe en version 2.0.18

SDL, acronyme de Simple DirectMedia Layer, est une bibliothèque cross-plateforme de développement donnant accès aux entrées audio, clavier, souris, joystick, et cartes graphiques via OpenGL et Direct3D. Utilisée dans la conception de jeux vidéo, d’émulateurs, et d’autres programmes informatiques, la SDL est une fantastique bilbiothèque bas niveau (proche de la machine) supporté sur Windows, Mac OS X, Linux, iOS et Android. Ecrite en C et fonctionnant nativement avec le C++, la SDL supporte l’utilisation d’autres langages grâce à de nombreuses liaisons (language bindings) incluant le C#, le Python ou encore le Lua.

Exemple d’un jeu développé avec la SDL : Civilization Call to Power

SDL

La SDL vient de passer en version 2.0.18, qui, avec la correction de nombreux bugs, apporte de nombreux changements :

Général :

  • La documentation du wiki SDL et les en-têtes de développement sont automatiquement synchronisés.
  • Chaque fonction contient des informations sur la version de SDL dans laquelle elle a été introduite.
  • Ajout de l’indice SDL_HINT_APP_NAME pour informer SDL du nom de votre application à divers endroits où il peut apparaître dans les informations système.
  • Ajout de SDL_RenderGeometry() et SDL_RenderGeometryRaw() pour permettre le rendu de formes arbitraires à l’aide de l’API de rendu SDL 2D.
  • Ajout de SDL_SetTextureUserData() et SDL_GetTextureUserData() pour associer des données d’application à une texture SDL.
  • Ajout de SDL_RenderWindowToLogical() et SDL_RenderLogicalToWindow() pour convertir entre les coordonnées de fenêtre et les coordonnées de rendu logique.
  • Ajout de SDL_RenderSetVSync() pour changer si un moteur de rendu présent est synchronisé avec vblank au moment de l’exécution.
  • Ajout de SDL_PremultiplyAlpha() pour prémultiplier l’alpha sur un bloc de SDL_PIXELFORMAT_ARGB8888 pixels.
  • Ajout d’un événement de fenêtre SDL_WINDOWEVENT_DISPLAY_CHANGED qui est envoyé lorsqu’une fenêtre change l’affichage sur lequel elle est centrée.
  • Ajout de SDL_GetWindowICCProfile() pour interroger le profil ICC d’une fenêtre et d’un événement de fenêtre SDL_WINDOWEVENT_ICCPROF_CHANGED qui est envoyé lorsqu’il change.
  • Ajout de l’astuce SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY pour permettre aux fenêtres EGL d’être transparentes au lieu d’être opaques SDL_WaitEvent() a été repensé pour utiliser moins de CPU dans la plupart des cas.
  • Ajout de SDL_SetWindowMouseRect() et SDL_GetWindowMouseRect() pour confiner le curseur de la souris à une zone d’une fenêtre.
  • Vous pouvez maintenant lire le mouvement précis de la molette de la souris à l’aide des champs d’événement « preciseX » et « preciseY ».
  • Ajout de SDL_GameControllerHasRumble() et SDL_GameControllerHasRumbleTriggers() pour demander si un contrôleur de jeu prend en charge le rumble.
  • Ajout de SDL_JoystickHasRumble() et SDL_JoystickHasRumbleTriggers() pour demander si un joystick prend en charge le rumble.
  • L’implémentation Hidapi de SDL est désormais disponible en tant qu’API publique dans SDL_hidapi.h

Les fenêtres :

  • Mouvement relatif de la souris amélioré sur le Bureau à distance Windows.
  • Ajout de l’astuce SDL_HINT_IME_SHOW_UI pour afficher les composants natifs de l’interface utilisateur au lieu de les masquer (désactivé par défaut)

Windows/UWP :

  • WGI est utilisé à la place de XInput pour une meilleure prise en charge du contrôleur dans les applications UWP

Linux :

  • Ajout de l’indice SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME pour définir l’activité affichée par le système lorsque l’économiseur d’écran est désactivé.
  • Ajout de l’astuce SDL_HINT_LINUX_JOYSTICK_CLASSIC pour contrôler si /dev/input/js* ou /dev/input/event* sont utilisés comme joysticks.
  • Ajout de l’indice SDL_HINT_JOYSTICK_DEVICE pour permettre à l’utilisateur de spécifier les appareils qui seront ouverts en plus de la détection normale du joystick.
  • Ajout de SDL_LinuxSetThreadPriorityAndPolicy() pour plus de contrôle sur la priorité d’un thread sous Linux

Android :

  • Ajout de la prise en charge de la sortie et de la capture audio à l’aide de AAudio sur Android 8.1 et versions ultérieures.
  • La prise en charge du Steam Controller est désactivée par défaut et peut être activée en définissant l’indice SDL_HINT_JOYSTICK_HIDAPI_STEAM sur « 1 » avant d’appeler SDL_Init()

Apple Arcade :

  • Ajout de SDL_GameControllerGetAppleSFSymbolsNameForButton() et SDL_GameControllerGetAppleSFSymbolsNameForAxis() pour prendre en charge les titres Apple Arcade

iOS :

  • Ajout d’une documentation indiquant que la clé UIApplicationSupportsIndirectInputEvents doit être définie sur true dans Info.plist de votre application afin d’obtenir de vrais événements de souris Bluetooth.
  • La prise en charge du Steam Controller est désactivée par défaut et peut être activée en définissant l’indice SDL_HINT_JOYSTICK_HIDAPI_STEAM sur « 1 » avant d’appeler SDL_Init()

Gamecodeur possède un parcours de programmation en C en cours de production, vous permettant de mettre en place un environnement de travail pour débuter un projet en C, cer et compiler votre premier programme en C avec la SDL2, et travailler sur les images. Vous pouvez retrouver le parcours de formation à l’adresse suivante : https://www.gamecodeur.fr/liste-ateliers/parcours-programmation-de-jeux-en-c/

Si vous souhaitez apprendre à programmer des jeux vidéo, vous pouvez rejoindre Gamecodeur à l’adresse suivante : https://www.gamecodeur.fr/acces-premium/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

LIVE CODE n°87 – Programmer mieux c’est bien : Coder un Service Locator

Tu n’es pas membre Premium de l’école en ligne.
Tu n’as donc pas accès à ce Live.

Adhére aujourd'hui

L’école Gamecodeur c’est à partir de 19 € / mois

Plus d’information sur cette session :

Ce soir à 19h, on se retrouve en Live pour un cours débutant. 

Un véritable cours de programmation, sympa, fun et enrichissant. Pendant 1 heure, sur Zoom !

Ce soir on va travailler sur un concept de programmation qui va vous servir toute votre vie : Le Service Locator. Ce concept permet d’en finir avec les problèmes de dépendances entre composants ou objets de votre jeu !

Le magazine DLC est un contenu réservé aux membres Premiums.

A ce soir !

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Fleet : un éditeur de texte léger développé par JetBrains

JetBrains est une société spécialisée dans la création d’outils pour développeurs, notamment des IDE comme Intellij IDEA ou encore PhpStorm. Très récemment, JetBrains vient d’annoncer le lancement de Fleet, un éditeur léger.

Fleet

Fleet se veut être un éditeur complet avec mise en évidence des éléments de syntaxe (syntaxe highlighting), saisie semi-automatique simple et de nombreuses autres fonctionnalités. Un simple clic permet de passer en mode IDE afin de profiter de la réfactorisation, la navigation, le débogage et d’autres outils.

L’éditeur est multilangage, et permet de travailler sur les langages suivant : Java, Kotlin, Python, Go, JavaScript, Rust, TypeScript et Json. Bientôt l’éditeur pourra accueillir le PHP, le C++, le C# et le HTML5.

L’architecture de Fleet est distribuée, répartie entre frontend, backend, serveur d’espace de travail et observateur de système de fichiers. Fleet peut être lui-même exécuté de manière distribuée, ce qui permet des scénarios dans lesquels l’analyse et d’autres opérations peuvent être réalisées sur une machine distante par exemple.

Fleet est un outil collaboratif vous permettant de travailler à plusieurs sur le même projet, que ce soit sur la rédaction du code, le partage de terminaux ou de sessions de débogage.

L’éditeur est actuellement en cours de développement, et de nombreux ajouts seront apportés à l’outil.

Vous pouvez en apprendre plus sur Fleet, et rejoindre l’early preview si vous le souhaitez à l’adresse suivante : https://www.jetbrains.com/fleet/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

[Projet de membre] Maatelott, un shooter à la sauce Bretonne par Kaïros

Kaïros est un membre de Gamecodeur qui s’est inscrit au parcours de certification proposé par Gamecodeur en association avec Gaming Campus. Néophyte en programmation, il a écrit ses premières lignes de code il y a 10 semaines en rejoignant Gamecodeur. Après un premier projet en Lua / Love2D, il vient d’en terminer un second en Javascript : Maatelott.

Maatelott

Vous pouvez jouer à Maatelott à l’adresse suivante : https://narsile.itch.io/maatelott

Maatelott a été conçu dans le cadre de la certification proposée par Gamecodeur en association avec Gaming Campus. Il s’agit d’un encadrement sur 20 semaines avec 4 modules : Lua/Love2D, JS/HTML5, C#/Monogame, C#/Unity, et 4 projets à rendre dont un en 3D. Les cours enseignés sont ceux de Gamecodeur.

Vous pouvez en apprendre plus sur le parcours de certification à l’adresse suivante : https://gamingcampus.fr/cpf/developpeur-de-jeux-video.html

Si vous désirez rejoindre la prochaine certification, vous pouvez remplir le formulaire suivant : https://ungpyi31k7b.typeform.com/certifdec21

Attention !! À l’heure où sont écrites ces lignes, il ne reste que 2 places pour la prochaine certification !!

Si vous souhaitez apprendre à programmer des jeux vidéo et rejoindre Gamecodeur sans passer par le parcours de certification, vous pouvez vous inscrire à l’adresse suivante : https://www.gamecodeur.fr/acces-premium/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Plug in Digital lève 70 millions d’euros afin de monter en grade

Plug in Digital est un éditeur et distributeur indépendant Montpelliérain de jeux vidéo, créé en 2012 par Francis Ingrand. Presque 10 ans après sa création, l’éditeur passe un cap grâce à un investissement de 70 millions d’euros mené par Bridgepoint Development Capital, un fond d’investissement Britannique, qui devient ainsi leur nouvel actionnaire majoritaire.

Avec ce nouvel investissement, Plug in Digital souhaite investir dans ses outils de distribution et financiers développés en interne, accroître la production de jeux en augmentant leur ticket d’entrée sur les futurs productions en passant de 500,000€ à 1,5 million d’euros par jeu afin d’obtenir des titres classés AA, et également faire l’acquisition de studios de développement de jeux vidéo.

David de Gamecodeur a réalisé une interview de Francis Ingrand, que vous pouvez voir sur la chaine Youtube de Gamecodeur si vous l’avez raté :

Retrouvez plus d’informations sur Plug in Digital directement sur le site de l’éditeur : https://plugindigital.com/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Draw.io, un éditeur de diagrammes en ligne

Organiser ses projets ou ses algorithmes à l’aide de diagrammes est important dans le développement d’un jeu vidéo afin d’avoir une ligne directrice et de pouvoir réfléchir en amont aux problèmes pouvant subvenir lors de la production. De nombreux outils sont disponibles pour vous aider à vous organiser, notamment Draw.io, un éditeur de diagrammes open-source développé en Javascript, et accessible en ligne.

Draw.io, un éditeur de diagrammes en ligne

Draw.io peut exporter le diagramme sous différents formats : PNG, JPEG, SVG, PDF, VSDX, HTML, XML et URL. Il est possible de sauvegarder son travail sur différents supports Cloud (Google Drive, OneDrive, GitHub, GitLab) ou directement sur un espace de stockage physique.

L’outil est accessible directement en ligne, à l’adresse suivante : https://app.diagrams.net/

Une version desktop téléchargeable sur le Github du projet : https://github.com/jgraph/drawio-desktop/releases.

Une extension VS Code est également disponible sur le marketplace de Microsoft, vous pouvez le retrouver en tapant son ID dans la barre de recherche des extensions : hediet.vscode-drawio

Draw.io est un projet Javascript réalisé avec Electron, un framework permettant la construction d’applications desktop en Javascript.

Gamecodeur propose un parcours de formation HTML5 / Javascript disponible à l’adresse suivante : https://www.gamecodeur.fr/formation-a-la-programmation-de-jeux-video-en-html5/

Si vous souhaitez apprendre à programmer des jeux vidéo, vous pouvez rejoindre Gamecodeur à l’adresse suivante : https://www.gamecodeur.fr/acces-premium/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Black Friday : Music Pack sur l’Unreal Engine Marketplace

En ce moment c’est le Black Friday, période de l’année où de nombreuses soldes sont présentes dans une majorité de commerces. Aujourd’hui nous nous intéressons à des pack de musiques composées par Michael La Manna, disponibles à -70 % sur le marketplace de Unreal Engine.

Black Friday Music Pack Unreal Engine

On retrouve ainsi 17 packs de musiques à -70 % avec de nombreuses pistes conçues pour être bouclées, spécialement composées pour le jeu vidéo. Les musiques sont de qualité, et de genre différents, allant de l’ambiance Science Fiction, à l’ambiance Fantasy, Horreur, Plateforme, Aventure…

Vous pouvez accéder aux packs de musiques à l’adresse suivante : https://www.unrealengine.com/marketplace/en-US/profile/Michael+La+Manna?count=20&sortBy=effectiveDate&sortDir=DESC&start=0

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Shadertoy, un site de partage de shaders

Les shaders sont des effets graphiques de rendu réalisés par une carte graphique ou un moteur de rendu logiciel à l’aide de calculs mathématiques. Très utilisés dans le jeu vidéo mais également dans le cinéma, on les retrouvent dans de nombreuses productions afin de réaliser des effets de lumière, textures, réflexion, réfraction, ombrages… C’est incontournable pour avoir un rendu de qualité.

Exemple d’un shader représentant un amas de nuages :

Shadertoy

Il existe un site sur internet permettant le partage de Shaders : Shadertoy. Le site permet la création de shaders avec une fenêtre de rendu en temps réel, ainsi que le partage de vos créations auprès des autres membres de la communauté. Les membres peuvent donc se partager leurs créations, voir les créations des autres membres, et de ce fait voir et modifier (sans enregistrer) le shader des autres membres de la communauté, ce qui peut être pratique pour étudier un shader et apprendre à refaire quelque chose de similaire.

Shadertoy

Vous pouvez accéder à Shadertoy à l’adresse suivante : https://www.shadertoy.com/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

LIVE CODE n°86 – Programmation HTML5 avec VS Code : Environnement de développement avancé

Tu n’es pas membre Premium de l’école en ligne.
Tu n’as donc pas accès à ce Live.

Adhére aujourd'hui

L’école Gamecodeur c’est à partir de 19 € / mois

Plus d’information sur cette session :

Ce soir à 19h, on se retrouve en Live pour un cours débutant. 

Un véritable cours de programmation, sympa, fun et enrichissant. Pendant 1 heure, sur Zoom !

Ce soir j’ai invité Yoan, membre de l’école et développeur pro. Il va vous proposer un environnement optimisé pour commencer un projet de jeu html5 avec canvas. Semi automatisé il permet de transpiler le code en JS standard si vous utiliser une version de JS trop récente, d’obfusquer le code automatiquement et propose une utilisation des modules JS pour éviter d’intégrer vos scripts manuellement dans le .html.

Le magazine DLC est un contenu réservé aux membres Premiums.

A ce soir !

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .