Logo entreprise

Finançable CPF
Graduate Développeur Web Gaming

Coût de la formation
3990.00€
Finançable CPF
Durée totale
Localisation
A distance 100% en ligne
Profils acceptés
Tout public
Certifications
Qualiopi

Connaissances nécessaires

Contactez un conseiller en formation pour étudier votre admissibilité.

Objectifs de la formation

Formez-vous aux métiers du game programming !

Cette formation vous permet d’acquérir les compétences indispensables pour concevoir et développer un jeu vidéo.

Programmez et concevez des applications web de A à Z, 2D, 3D, Solo ou Réseau, pour PC, Mac, Console ou Mobile !

 

Programme et détails du déroulé de la formation

Les fondamentaux du développement (facultatif)

Écosystème et outils du développeur

  • L'histoire de l'informatique et d'Internet, culture générale numérique
  • Le fonctionnement d'Internet
  • Sensibilisation à la cybersécurité
  • Les droits d'auteur et licences libres
  • La sensibilisation à la RGPD
  • Repl.it
  • Github Student Developper Pack
  • La suite Jetbrains
  • VSCode
  • La préparation de l'environnement de travail localhost
  • Les lignes de commande linux
  • Jeux de logique
  • Assurer une veille technologique en développement  

Introduction à la programmation

  • Introduction à la programmation
  • Introduction aux variables
  • Les types et portées des variables
  • Les structures de contrôle
  • les opérateurs et opérateurs logiques
  • Les boucles
  • Les chaînes de caractères
  • La structure de données Tableau
  • La structure de données Liste
  • Le type de données Date
  • L'utilisation des fonctions
  • L'écriture des fonctions
  • Représentation graphique d'un algorithme : flowchart
  • L'écriture d'un algorithme en pseudo-code
  • Mon premier algo
  • La récursivité
  • Les Tris 1
  • Les Tris 2
  • La recherche  

Développer la partie front-end d’une application

Participer à des projets web

  • L'environnement du développeur web
  • Les modèles de gestion de projet
  • Les outils collaboratifs de partage de ressources
  • Le récit utilisateur (user story)
  • Bien rédiger ses user stories  

Réaliser une maquette avec Figma

  • Introduction aux concepts UX (versus UI)
  • Planifier et suivre les tâches du maquettage
  • Prendre en main Figma et son interface
  • Importer et exporter des fichiers sur Figma
  • Créer des composants sur Figma
  • Utiliser les composants animés sur Figma
  • Créer un design responsive sur Figma
  • Créer un prototype, le partager et l'exporter avec Figma
  • Prendre en compte l'accessibilité visuelle sur Figma
  • Collaborer avec Figma
  • Découvrir le Dev Mode de Figma  

Créer un site web avec HTML & CSS

  • Introduction au HTML
  • Syntaxe générale de HTML
  • L'organisation du texte
  • Un langage hypertexte
  • Le multimédia en HTML
  • Introduction au CSS
  • CSS3 : Le stylage du texte
  • La structuration logique en HTML5 et le modèle de boîtes en CSS3
  • Les sélecteurs CSS
  • La mise en page avec CSS
  • La création de tableaux
  • La création de formulaires
  • Layout avec CSS Grid
  • Les effets avancés de CSS
  • Le responsive design
  • Introduction à Bootstrap
  • Ouverture vers d'autres frameworks CSS
  • Le référencement des sites Web
  • Valider la qualité de son site
  • Déployer son site sur le web  

Créer un site web avec le CMS Wordpress

  • Installer et configurer WordPress sur son serveur : Hello world
  • L'administration de son site wordpress
  • Les paramètres d'un site Wordpress
  • Les solutions de paiement en ligne  

Débuter avec JavaScript

  • Introduction à javascript
  • Syntaxe et intégration de JS
  • Les variables en JS
  • Les opérateurs
  • Structures de contrôle en JS
  • Les boucles
  • Les fonctions en JS
  • Les types de données
  • L'objet JavaScript Number
  • Les objets JavaScript String et Array
  • Les objets JS
  • Les classes et l'instanciation d'objet
  • L'objet Date
  • Introduction au Document Object Model  

Programmer avec Javascript

  • JS Browser BOM (window - screen - Location - History, etc)
  • Fonction asynchrone et callback
  • Le format JSON et AJAX
  • Les promesses
  • Découverte des patrons de conception
  • JavaScript Events
  • Introduction et installation de TypeScript
  • Type de donnée avec TypesScript
  • Données avancée avec TypeScript
  • L'objet avec TypeScript
  • JavaScript Graphics
  • JavaScript Canvas
  • La Gestion d'erreur
  • Debug
  • Les bonnes pratiques de la programmation avec JS  

Utiliser Git et Github pour gérer son code source

  • Introduction à la ligne de commande
  • Introduction à Git et Github
  • Les bases
  • Les interactions avec le dépôt distant
  • Naviguer dans l'historique
  • La gestion des branches
  • Les branches avec Git - Rebaser
  • Les bonnes pratiques  

Déployer son application web

  • La mise en ligne d’applications web avec Heroku
  • Présentation et utilisation de Fly.io
  • Présentation et utilisation de planethoster  

Sécuriser ses applications web

  • Les principales failles de sécurité
  • Les guides de tests
  • Analyser la sécurité pour évaluer la vulnérabilité d'une application web
  • Sécuriser la publication d'une application web  

Gérer des conteneurs

  • L’architecture applicative de microservices
  • L'outil Docker : principes, objectifs et solutions
  • Le Dockerfile et ses instructions
  • Docker Compose : Introduction
  • Docker Compose : Étude de cas
  • L'automatisation de la création des containers avec un outil de type Docker
  • L'utilisation des conteneurs pour gérer les mises à jour applicatives  

Les bases de Phaser

  • Introduction à Phaser
  • Installer Phaser
  • Editeur pour Phaser
  • Les composants essentiels de Phaser
  • Ajouter des Sprites dans l'éditeur
  • Ajouter de la physique via l'éditeur  

Créer son premier jeu avec Phaser

  • Scène dans Phaser
  • Ajout des plateformes et du background et gestion des sprites
  • Ajout du joueur et gestion des animations
  • Ajout d'un système de points
  • Ajout de sons
  • Ajout de la porte finale et des premiers ennemis  

Développer la partie back-end d’une application

Introduction aux bases de données

  • Présentation de la notion base de données
  • Installer un SGDB en ligne de commande
  • Créer une BDD et l'explorer
  • Introduction à la modélisation conceptuelle de données avec UML
  • Les diagrammes fonctionnels
  • Le diagramme de classe
  • Introduction au passage UML-Relationnel
  • Modèle relationnel Vs Objet
  • Introduction au SQL  

Développer des sites web dynamiques avec PHP

  • PHP et HTML (sorties)
  • Les types de données, les variables et les constantes
  • Les opérateurs de comparaison et les expressions booléennes
  • Les fonctions
  • Les tableaux
  • Les conditions
  • Les boucles
  • Créer ses propres fonctions
  • L'organisation des fichiers PHP
  • Les superglobales Get, Post et Files
  • Les superglobales Server, Env et Session
  • La sécurité
  • La manipulation des dates
  • La manipulation des fichiers en PHP
  • Les expressions régulières
  • Utiliser la documentation PHP et Standard de codage PHP
  • La préparation de l'environnement de travail
  • La programmation Orientée Objet : concepts de base
  • La programmation Orientée Objet : concepts avancés
  • La gestion des erreurs
  • La programmation Orientée Objet : Design Patterns
  • La programmation Orientée Objet : L’encapsulation et la visibilité
  • Le modèle MVC

Créer et administrer une base de données en SQL

  • Création et alimentation de bases de données SQL
  • L'interrogation de bases de données SQL
  • Connexion à la base de données en PHP
  • PHP/PDO : accès en lecture/écriture
  • Les requêtes SQL
  • Les fonctions SQL
  • Les jointures SQL
  • Gérer les accès des utilisateurs au niveau PHP et BD
  • Découvrir un autre SGBDR : PostgreSQL
  • Introduction à MongoDB
  • Découverte d'un ORM PHP  

Créer une application web avec le framework Symfony

  • Présentation du framework Symfony
  • Les bases de Symfony
  • Le routing
  • Les contrôleurs
  • Le moteur de template Twig
  • Les entités
  • Manipuler ses entités avec Doctrine
  • Les formulaires en Symfony
  • Le Profiler
  • La validation en Symfony
  • La sécurité et la gestion des utilisateurs
  • Déployer son site Symfony en production
  • Le composant Mailer
  • L'Event Dispatcher
  • Les tests unitaires avec PHPUnit
  • Ouverture à un autre framework PHP : Laravel

Sécuriser ses bases de données

  • Cadre légal et chiffrement des données
  • Failles liées à la BDD côté développement
  • Failles liées à la BDD côté administration
  • Les failles d'include et d'upload
  • Failles XSS
  • Attaque par brute force  

Sécuriser son infrastructure

  • Les normes et des standards relatifs aux échanges sécurisés
  • Les recommandations de configuration d’un système GNU/Linux de l’ANSSI
  • Les principes de base d'une gestion sécurisée des identités
  • Introduction à l'architecture TCP-IP
  • Les règles d'authentification
  • Introduction à OpenSSH
  • Les Niveaux de test
  • Le test fonctionnel
  • La mise en place des environnements de test
  • La mise en place des environnements de pré-production
  • L'utilisation d'un environnement de test et de pré-production
  • Le test des mises à jour de sécurité avant le déploiement
  • La mise à jour de la documentation technique après un test  

Préparer un environnement de test

  • Les méthodes Agile pour le développement logiciel
  • La démarche DevOps
  • Les bases d'un environnement de test
  • La mise en place de l'intégration continue (CI)
  • La mise en place de la livraison ou déploiement continu (CD)  

Concepts fondamentaux d'un moteur de jeu

  • Les Moteurs de jeux en 2022
  • Les différentes briques de tout moteur de jeu
  • Installation de Unity
  • Prise en main de Unity  

Développer un premier jeu 2D de type platformer avec Unity

  • Introduction du module
  • Prise en main des bases du package 2D
  • Créer le level design d'un niveau
  • Téléportation entre les niveaux
  • Notion de prefab
  • L'importance du prefab workflow
  • Fonctionnalités avancées du package 2D
  • Notion de Camera - les bases
  • Notion d'input - les bases
  • Notion des collisions  

Les composants élémentaires du moteur de jeu Unity

  • Introduction du module
  • Le composant Transform
  • Le composant Camera
  • Le composant Render
  • Le composant Light
  • Le composant Rigidbody
  • Le composant Collider
  • Le composant Animation
  • Le composant Animator
  • Les composants AudioListener et AudioSource  

Les bases des composants d'interface IHM du moteur de jeu Unity

  • Introduction du module
  • Le rôle du canvas
  • Les textes avec TextMeshPro
  • Eléments de base de l'IHM avec uGUI
  • Eléments intermédiaires de l'IHM avec uGUI
  • Adaptivité des l'IHM
  • Manipuler l'IHM par script
  • Gérer les alignements de l'IHM
  • Gestion des évènements de l'IHM  

Compiler un jeu pour le web

  • Introduction du module
  • Créer un premier build WebGL
  • Personnaliser son template
  • Debug
  • Les bases de l'optimisation
  • Déployer un build webGL en ligne  

Les bases de la POO dans Unity

  • Introduction du module
  • Notion d'objet en POO
  • Notion de staticité
  • Utilisation de l'Héritage
  • Utilisation d'Interface
  • Utilisation de classe Abstraites
  • Communiquer entre scripts dans Unity - partie 2  

Les premiers patterns indispensables dans Unity

  • Introduction du module
  • Pattern Factory
  • Pattern Object Pool
  • Pattern Observer
  • Pattern Command
  • Pattern Singleton  

Les premiers cas pratiques indispensables dans Unity

  • Introduction du module
  • Déplacer un GameObject
  • Faire Sauter un GameObject
  • Zoomer la caméra
  • Créer une Mini map
  • Sélectionner un GameObject
  • Sélectionner un GameObject - partie 2
  • Ouvrir une porte
  • Instantier un prefab
  • Tirer des projectiles
  • Effet Shake de Camera  

Les shader avec le shadergraphe Unity

  • Introduction du module
  • Introduction aux shaders
  • Choix du Renderer
  • Les bases du shadergraphe
  • Premier shader from scratch
  • Création d'un shader permettant un material animé
  • Modifier un Material par code  

Développer un premier jeu 3D de type FPS avec Unity

  • Introduction du module
  • Vues  TPV et FPV
  • Implémentation du système FPV/TPV
  • Cinemachine
  • Controller de mouvement
  • Controller d'animation
  • Controller de tir
  • Controller de vie
  • Gestion des ennemis
  • Gestion des LOOT des ennemis
  • Gestion de l'IHM
  • Gestion des changements de scènes
  • Notion des Scriptable Objects
  • Gestion des paramètres de jeu
  • Notion de Skybox  

Cette formation est finançable par le CPF

Le Compte Personnel de Formation (CPF) est un dispositif français permettant à chaque actif d'acquérir des droits à la formation tout au long de sa vie professionnelle. Ces droits, cumulés en euros, servent à financer des formations certifiantes pour développer ses compétences ou changer de métier.

Je souhaite financer la formation avec le CPF