le sujet est ardu car je recherchais un ou plusieurs logiciels me permettant de développer pour les smartphones des applications techniques
Jean Pascal S- Livres et vidéos
- Unity3D - Développer en C# des applications 2D/3D multiplateformes (iOS, Android, Windows...)
Unity3D Développer en C# des applications 2D/3D multiplateformes (iOS, Android, Windows...)
1 avis
Ce livre présente les bases de la création d'une application multiplateformes avec Unity3D et le langage C#, dans le cadre de jeux vidéos comme d'applications d'entreprises. Il s'adresse à des développeurs C# qui débutent dans ce type de développement. Même si la création d'une application 2D/3D, multiplateformes, paraît bien complexe à un débutant, les auteurs se sont appuyés sur des exemples simples et...
Consulter des extraits du livre en ligne
Aperçu du livre papier
- Niveau Confirmé à Expert
- Nombre de pages 442 pages
- Parution janvier 2016
- Niveau Expert
- Parution janvier 2016
Ce livre présente les bases de la création d'une application multiplateformes avec Unity3D et le langage C#, dans le cadre de jeux vidéos comme d'applications d'entreprises. Il s'adresse à des développeurs C# qui débutent dans ce type de développement. Même si la création d'une application 2D/3D, multiplateformes, paraît bien complexe à un débutant, les auteurs se sont appuyés sur des exemples simples et précis pour guider le lecteur dans ses premiers pas. Après la lecture de ce livre, il sera en mesure de créer son propre jeu et de le déployer sur les différentes plateformes ciblées par Unity3D : iPhone, iPad, Android, Windows, Windows Phone, Xbox, Blackberry...
Après une présentation générale d'Unity3D et particulièrement de son éditeur, les auteurs détaillent les différents éléments, ou GameObjects, manipulés dans Unity3D et leurs composants. Un chapitre est bien sûr consacré au scripting (création, déboggage, cycle de vie,...) et aux coroutines, un autre aux interactions avec l'utilisateur (entrées clavier, souris, tactile...) puis à l'utilisation des différents assets, au système d'animation et au moteur physique d'Unity3D. La description complète de la création d'une interface utilisateur (système Canvas, système de positionnement et d'ancrage, éléments d'affichage...) aboutit naturellement au chapitre sur le réseau et le système multijoueurs. Les derniers chapitres sont consacrés à la génération des packages, plateforme par plateforme et à leur déploiement.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – Unity et le développement de jeux vidéo – Éditeur, pièce maîtresse – Le GameObject et ses composants – Le système de scripting – Interactions avec l'utilisateur – Utilisation des assets graphiques et audio – Le système d'animation – Le moteur physique – Unity UI et interfaces utilisateurs – Communication réseau et jeux multijoueurs – Génération et déploiement de package
Après une présentation générale d'Unity3D et particulièrement de son éditeur, les auteurs détaillent les différents éléments, ou GameObjects, manipulés dans Unity3D et leurs composants. Un chapitre est bien sûr consacré au scripting (création, déboggage, cycle de vie,...) et aux coroutines, un autre aux interactions avec l'utilisateur (entrées clavier, souris, tactile...) puis à l'utilisation des différents assets, au système d'animation et au moteur physique d'Unity3D. La description complète de la création d'une interface utilisateur (système Canvas, système de positionnement et d'ancrage, éléments d'affichage...) aboutit naturellement au chapitre sur le réseau et le système multijoueurs. Les derniers chapitres sont consacrés à la génération des packages, plateforme par plateforme et à leur déploiement.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – Unity et le développement de jeux vidéo – Éditeur, pièce maîtresse – Le GameObject et ses composants – Le système de scripting – Interactions avec l'utilisateur – Utilisation des assets graphiques et audio – Le système d'animation – Le moteur physique – Unity UI et interfaces utilisateurs – Communication réseau et jeux multijoueurs – Génération et déploiement de package
Téléchargements
Avant-propos
- Pourquoi ce livre ?
- À qui s'adresse cet ouvrage ?
- Structure de l'ouvrage
- Remerciements
Unity et le développement de jeux vidéo
- Qu’est-ce que Unity ?
- 1. Introduction
- 2. Les plateformes supportées
- 3. Les licences
- a. Personal Edition
- b. Professional Edition
- 4. La technologie
- 1. MonoDevelop
- 2. Visual Studio
Éditeur, pièce maîtresse
- Présentation de l’éditeur
- Présentation de l’interface
- 1. Les menus
- a. Menu File
- b. Menu Edit
- c. Menu Assets
- d. Menu GameObject
- e. Menu Component
- f. Menu Window
- g. Menu Help
- 1. Les menus
- 2. La vue Scene
- a. Présentation de la vue
- b. Manipulation des objets et du point de vue
- c. Barre d’outils
- 3. La hiérarchie des objets
- a. Présentation
- b. Manipulation des objets
- c. Filtrage des objets
- 4. La vue de rendu
- a. Présentation
- b. Modification de la résolution
- c. Statistiques de rendu
- 5. La hiérarchie du projet
- 6. La console
- 7. L’Inspector
- a. Les propriétés de base
- b. Les composants de base
- c. Exposer des propriétés à traversl’Inspector
- 1. Personnaliser la disposition des vues
- 2. Les menus personnalisés
- a. Créer un menu simple
- b. Créer un menu avec raccourci
- c. Créer un menu avec validation
- d. Créer un menu avec priorisation
- e. Créer un menu contextuel
- f. Modifier les menus de base de l’éditeur
- a. Introduction
- b. Utilisation des gizmos
- a. Introduction
- b. Mise en place d’un affichage personnalisé
- c. Ajouter un bouton
- d. Ajouter une zone d’aide
- e. Les différents types de champs
- f. Aller plus loin
Le GameObject et ses composants
- La programmation par composition
- 1. Présentation
- 2. Le GameObject : le conteneur de composants
- 3. Les différentes familles de composants
- a. Les meshes
- b. Les effets
- c. La physique 3D
- d. La physique 2D
- e. La navigation
- f. L’audio
- g. Le rendu
- h. La disposition de l’interface utilisateur
- i. L’interface utilisateur
- j. Les scripts
- k. Le réseau
- l. Les événements
- m. Les autres
- 1. Présentation
- 2. Manipuler un GameObject
- a. Ajouter un GameObject
- b. Supprimer un GameObject
- 1. Ajouter un composant
- 2. Supprimer un composant
- 3. Copier un composant
- 4. Mise à zéro d’un composant
- 1. Présentation
- 2. Création d’un prefab
- 3. Réutilisation d’un prefab
- a. À partir de l’éditeur
- b. À partir d’un script
- c. Modification d’un prefab
Le système de scripting
- Les scripts, des composants à part
- 1. Définition
- 2. Ajouter un script à un GameObject
- Comment afficher des informations de débogage
- 1. Écrire dans la console
- 2. Dessiner des lignes dans la scène
- 3. Prendre le contrôle de l’exécution
- Le cycle de vie des scripts
- 1. Initialisation du script
- a. La méthode Awake
- b. La méthode Start
- c. La méthode OnEnable
- 1. Initialisation du script
- 2. Les événements pendant la bouclede jeu
- a. La méthode Update
- b. La méthode LateUpdate
- c. La méthode FixedUpdate
- 3. Les événements liés aurendu graphique
- a. Les méthodes OnBecameVisible et OnBecameInvisible
- b. La méthode OnGUI
- c. La méthode OnDrawGizmos et OnDrawGizmosSelected
- 4. Les événements de fin de vie oude remise à zéro
- a. La méthode OnDisable
- b. La méthode OnDestroy
- c. La méthode OnApplicationQuit
- d. La méthode OnApplicationFocus
- e. La méthode Reset
- f. La méthode OnValidate
- 1. Permettre la configuration d’un script
- 2. Accéder au GameObject parent
- 3. Manipuler les composants de base
- a. Trouver un composant déjà ajouté
- b. Ajouter un composant
- c. Supprimer un composant
- a. Déclarer un événement simple
- b. Réagir à la levée d’un événement
- c. Déclarer un événement complexe
- d. Écrire sa propre méthode de réaction à un événement
- 1. Utiliser les propriétés de la classeApplication
- 2. Utiliser les directives de précompilation
- 1. Définition
- 2. Pourquoi les coroutines sont nécessaires
- 3. Mise en œuvre
- a. Déclarer une coroutine
- b. Écrire le corps de la coroutine
- c. Lancer une coroutine
- d. Stopper une coroutine
- 1. Singleton
- a. Définition
- b. Implémentation du singleton dans Unity
- c. Instanciation du singleton
- a. La problématique à résoudre
- b. La solution théorique
- c. Mise en œuvre technique
Interactions avec l’utilisateur
- Présentation générale
- Prise en charge par défaut
- 1. Le gestionnaire de commande
- 2. Propriétés d’un axe virtuel
- 3. Utilisation dans un script personnalisé
- a. La classe Input
- b. Exemples d’utilisation du clavier
- c. Exemples d’utilisation de la souris
- d. Exemples d’utilisation du tactile
- 1. Utilisation du micro
- a. Présentation
- b. La classe Microphone
- c. Exemple d’utilisation
- a. Présentation
- b. La classe WebCamTexture
- c. Exemple d’utilisation
Utilisation des assets graphiques et audio
- La caméra
- 1. Présentation
- 2. Paramétrage de l’affichage
- a. Affichage des objets
- b. Vision et projection
- 3. La vue Frustum
- a. Définition
- b. Expérimentations
- c. Limites d’affichage
- d. Différence entre la vue perspective et lavue orthographique
- 1. Présentation
- 2. Paramétrage des lumières
- a. Point
- b. Spot
- c. Directionnelle
- d. Aire
- 1. Introduction
- 2. Les matériaux
- a. Introduction
- b. Les propriétés
- c. Les méthodes
- d. Création d’un matériau
- a. Introduction
- b. Le Standard Shader
- c. Les Built-in Shaders
- d. Les shaders personnalisés
- 1. Présentation
- 2. Mesh Filter
- 3. Mesh Renderer
- a. Introduction
- b. Les propriétés
- 1. Présentation
- 2. Les types de texture
- 3. Les textures simples
- 4. Les Normal Maps
- 1. Présentation
- 2. Sprite Renderer
- 3. Sprite Editor
- 1. Introduction
- 2. Audio Listener
- 3. Audio Clip
- 4. Audio Source
- 5. Audio Mixer
- 6. Les filtres et effets
- 1. Présentation
- 2. Static Batching
- 3. Dynamic Batching
Le système d’animation
- Présentation de Mecanim
- 1. Présentation
- 2. Les animations
- a. Introduction
- b. La fenêtre Animation
- 3. Les animateurs
- a. Introduction
- b. La fenêtre Animator
- c. Ajouter un état
- d. Ajouter une transition
- 1. Mise en place de la scène
- 2. Création de l’animation
- 3. Configuration de l’animateur
- 4. Ajout de paramètres
- 5. Ajout de conditions
- 6. Lancement de l’animation
- 1. Introduction
- 2. Créer un avatar
Le moteur physique
- Présentation du moteur physique
- Le composant Rigidbody
- 1. Introduction
- 2. La gravité
- 3. Les forces
- 4. La cinématique
- Le composant Collider
- 1. Introduction
- 2. Statique ou dynamique
- 3. Les colliders primitifs
- a. SphereCollider
- b. BoxCollider
- c. CapsuleCollider
- 4. Les colliders par composition
- 5. Le MeshCollider
- 6. Les matériaux physiques
- 7. Les événements
- a. Les déclencheurs
- b. Les événements de script
- 8. Exemples de collision
- a. Entre un collider statique et un collider dynamique
- b. Entre des colliders dynamiques
- 1. Introduction
- 2. FixedJoint
- 3. SpringJoint
- 4. HingeJoint
- 5. CharacterJoint
- 6. ConfigurableJoint
Unity UI et interfaces utilisateurs
- Présentation générale
- 1. Définition
- 2. Un peu d’histoire
- 3. Le nouveau système d’UI
- Le système de Canvas
- 1. Définition
- 2. Nombre de Canvas dans une scène
- 3. Les différents modes de rendu
- a. Par défaut : Screen Space - Overlay
- b. Screen Space - Camera
- c. World Space
- 4. Adaptation du rendu à la taille de l’écran
- a. Par défaut : Constant Pixel Size
- b. Constant Physical Size
- c. Scale With Screen Size
- 1. Le composant RectTransform
- 2. Le système d’ancrage
- a. Définition
- b. Valeurs prédéfinies
- a. La zone d’ancrage est un point
- b. La zone d’ancrage est une ligne verticale ou horizontale
- c. La zone d’ancrage est un rectangle
- d. Schéma récapitulatif des positionnements
- 1. Text : afficher un texte
- a. Configuration de l’affichage des lettres
- b. Configuration de la disposition
- c. Utilisation de texte riche
- d. Utilisation via un script
- a. Description du composant
- b. Utilisation via un script
- a. Types d’affichage
- b. Utilisation du mode Filled
- c. Utilisation via un script
- a. Les différents états visuels
- b. Définir le sens de navigation au clavier
- c. Réagir au clic sur un bouton
- d. Utilisation d’un composant via un script
- e. Interactions avec les Selectable via un script
- a. Configuration du composant
- b. Événements exposés
- c. Utilisation via un script
- a. Configuration du composant
- b. Assignation d’un ToggleGroup
- c. Événement du composant
- d. Utilisation via un script
- a. Configuration du composant
- b. Événement exposé
- c. Utilisation via un script
- a. Configuration du script
- b. Événement exposé
- c. Utilisation via un script
- a. Ajout d’un ScrollRect et de son contenu dans la scène
- b. Ajout d’un Mask pour contraindre l’affichage
- c. Ajout de barres de défilement
- d. Configuration du ScrollRect
- e. Événement exposé
- f. Utilisation via un script
- 1. Layout Element
- a. Configuration du LayoutElement
- b. Comportement du système de dimensionnement
- a. Configuration du composant
- b. Comportement des mesures du composant
- c. Exemple de configuration utilisant les tailles flexibles
- a. Configuration du composant
- b. Comportement des mesures du composant
- a. Configuration du composant
- 1. Logique du composant de traduction
- 2. Création des fichiers de ressources
- 3. Lecture du fichier de traduction
- 4. Interprétation du fichier de ressources
- 5. Assignation de la valeur traduite
- 1. Import d’une police
- 2. Fonts dynamiques et statiques
Communication réseau et jeux multijoueurs
- Les jeux multijoueurs
- 1. Introduction
- 2. L’API haut niveau
- a. Introduction
- b. Concept du multijoueur
- c. Les principaux composants de l’API
- 3. Création d’un jeu multijoueur
- a. Mise en place
- b. Création du personnage
- c. Paramétrage et synchronisation du personnage
- d. Ajout du Network Manager
- 4. UNET Service
- a. Introduction
- b. La classe NetworkMatch
Génération et déploiement de package
- Le player et les builds : concepts de base
- 1. Définition
- 2. Différents formats de builds
- Configuration du player
- 1. Description
- 2. Resolution and Presentation (résolution etprésentation)
- a. Plateformes mobiles (Android, iOS, Windows, Tizen...)
- b. Plateformes web (Web Player et WebGL)
- c. Plateformes autonomes (PC, Mac, TV...)
- 3. Icon (îcones)
- a. Plateformes Windows Store
- b. Plateformes Windows Phone 8.0
- c. Autres plateformes
- 4. Splash Image (image de démarrage)
- 5. Other Settings (autres paramètres)
- a. Rendering (affichage et technique de rendu)
- b. Identification
- c. Configuration
- d. Optimization (optimisations)
- 6. Publishing settings (paramètres de publication)
- 1. Fenêtre de configuration et générationd’une build
- a. Choix des scènes à inclure
- b. Choix de la plateforme
- c. Configuration du type de build
- d. Qu’y a-t-il dans mon package ?
- 1. Génération d’un package Android
- a. Installation du SDK et configuration d’Unity
- b. Génération du package
- c. Signature du package
- a. Génération du projet Xcode
- b. Support de la version 64 bits d’iOS
- a. Installation et activation du SDK Microsoft
- b. Génération du package
- 1. Déclencher le processus de build
- a. Création d’un élément demenu
- b. Récupérer les différentesscènes à inclure
- c. Récupérer le chemin de compilation
- d. Lancer la compilation
- 1. Le principe des plugins
- 2. Utilisation d’un plugin Android
- 3. Utilisation d’un plugin iOS
- a. Appel d’un plugin standard
- b. Intégration automatique de code source Objective-C
- 1. Jusqu’à présent : Mono
- 2. Le futur : IL2CPP
- 1. Déterminer la répartition du poids en fonction des composants
- 2. Le stripping
- a. Le principe
- b. Attention à la réflexion
- c. Stripping avec IL2CPP
Jonathan ANTOINE
Jonathan ANTOINE est développeur .NET chez Infinite Square. Il est reconnu Microsoft MVP (Most Valuable Professional) dans la catégorie Visual Studio and Development Technologies & Windows Development.
Depuis quelques années, Jonathan se passionne pour le développement de jeux vidéos avec Unity3D. N'étant pas issu de formations spécialisées dans le développement de jeux vidéos, il s'est heurté à la plupart des problématiques que va rencontrer le lecteur. S'appuyant sur son expertise en tant que développeur .NET mais aussi en tant que game developer sur différents jeux multiplateformes, il a su écrire un livre parfaitement accessible aux développeurs débutants dans le monde de la 2D/3D.
En savoir plusDepuis quelques années, Jonathan se passionne pour le développement de jeux vidéos avec Unity3D. N'étant pas issu de formations spécialisées dans le développement de jeux vidéos, il s'est heurté à la plupart des problématiques que va rencontrer le lecteur. S'appuyant sur son expertise en tant que développeur .NET mais aussi en tant que game developer sur différents jeux multiplateformes, il a su écrire un livre parfaitement accessible aux développeurs débutants dans le monde de la 2D/3D.
Maxime FRAPPAT
Maxime FRAPPAT est consultant sénior chez Aneo. Il est reconnu Microsoft MVP (Most Valuable Professional) dans la catégorie Visual Studio and Development Technologies, et depuis quelques années, il se passionne pour le développement multiplateforme. Il est auteur d’un livre sur le développement de jeux vidéo avec Unity3D aux Editions ENI.
En savoir plus