Nous abordons dans cet article deux éléments du C# qui permettent de rendre un programme plus formel et de s’assurer de son bon fonctionnement : les interfaces et les jeux de tests. Les interfaces décrivent ce que doit contenir une classe, alors que les jeux de tests sont plutôt une vérification de son bon fonctionnement. […]
Guide d’import de modèles Blender dans Unity 3D
Blender est une solution de choix pour créer des modèles 3D à importer dans Unity. Blender est un logiciel gratuit et open source, assez facile d’accès, avec de plus en plus de fonctionnalités au fil des années. Il y a en outre une grosse communauté derrière Blender, ce qui fait qu’on trouve une grande quantité […]
Le singleton dans Unity : un objet pour les gouverner tous…
Le singleton fait partie des design pattern (en français, patron de conception) en programmation. Pour faire court, un design pattern, c’est une bonne pratique, une manière de faire qui est répandue et habituelle parce qu’elle a prouvé de nombreux avantages dans certaines situations. Le singleton en lui-même décrit le principe d’instancier une classe une seule […]
Les types et classes incontournables d’Unity 3D
Un inventaire de différentes classes utilisables dans Unity 3D, lors de la réalisation de scripts en C# : les int, string, enum, Vector3, GameObject, Scene, Color…
Systèmes de sauvegarde pour un jeu sous Unity 3D
Lorsque votre jeu ou application atteindra une certaine complexité, il vous sera important de proposer un système de sauvegarde. À moins de faire un jeu qui ne se joue qu’en une seule session ininterrompue (ce qui ne correspond pas du tout aux usages d’aujourd’hui), il vous faut être en mesure de garder en mémoire la […]
Game design du hasard et de l’aléatoire : éviter le sentiment d’injustice
L’aléatoire, en soi, peut être un excellent outil dans la conception de jeu vidéo. Ça ajoute une touche d’inattendu, ça donne une impression plaisante au joueur (je prends un risque et ça paie, ou je mets toutes les chances de mon côté)… Mais mal maîtrisé, l’aléatoire peut devenir un inconvénient, un aspect plutôt désagréable. Pourquoi […]
Listes, dictionnaires, queues et piles : des collections C# pour tous les usages !
Aujourd’hui, nous abordons les collections. Des alternatives bien pratiques aux Array, avec de multiples avantages. On peut y insérer où en retirer plus facilement des éléments, il n’est pas nécessaire de connaître le nombre d’éléments final de la liste dès l’initialisation, et elles ont de nombreuses fonctions dédiées (tri, interrogation…). Bref, vous allez le voir, […]
Guide de nommage des variables, méthodes et autres identifiants en C# et dans Unity
Quel est un bon nom pour ma classe ou ma variable ? Quels sont les règles à respecter et les écueils à éviter ? Bien nommer les différents éléments de sa solution logicielle est une stratégie payante sur le long terme. Ça facilite la collaboration entre plusieurs développeurs, ça permet de plus facilement s’y retrouver […]
Quand et comment utiliser les fonctions Update(), FixedUpdate() et LateUpdate() de Unity 3D
Dans Unity 3D, si vous créez un script C# et que l’ouvrez pour l’éditer, le contenu par défaut du script est ainsi : On a deux fonctions bien commodes et aux noms évocateurs : Start() qui se déclenche au début du script, et Update() qui se déclenche à chaque « mise à jour » du […]
Code C# : conversion de base 10 vers et depuis une base N
Dès qu’on a un pied dans l’informatique, on croise généralement assez rapidement des bases numériques autres que le décimal. Le premier contact, c’est généralement soit le binaire, soit de l’hexadécimal, utilisé notamment pour les couleurs web, façon #FF00A6. C’est normal : le binaire ou base 2 est la langue de base des composants informatiques, et […]