Accueil TutorielsAstuces 7 Astuces pour Organiser votre Projet sous Unity

7 Astuces pour Organiser votre Projet sous Unity

par Isaac

Unity fait partie de ces logiciels aux potentialités tellement vastes qu’il est très facile de se perdre. C’est très rapidement le bordel et un projet désorganisé est le moyen le plus sûr de perdre énormément de temps .

The Knights of Unity, studio de developpement polonais dont l’outil de prédilection est Unity, nous livre ici ces 7 astuces pour organiser ses projets sous Unity.


1. Structure du répertoire

Nous ne pouvons pas parler d’organisation sans mentionner l’organisation de la structure du répertoire du projet. Unity vous donne une liberté totale à cet égard, mais à cause de cela, c’est très vite l’anarchie.

Voici la structure de répertoire utilisé par l’équipe de The Knights of Unity:

 

  • 3rd-Party
  • Animations
  • Audio
    • Music
    • SFX
  • Materials
  • Models
  • Plugins
  • Prefabs
  • Resources
  • Textures
  • Sandbox
  • Scenes
    • Levels
    • Other
  • Scripts
    • Editor
  • Shaders

Voici quelques conseils pratiques pour vous aider à organiser votre répertoire :

1 – Ne stockez aucun fichier d’actif dans le répertoire racine. Utilisez les sous-répertoires autant que possible.
2 – Ne créez pas de répertoires supplémentaires dans le répertoire racine, sauf si vous en avez vraiment besoin.
3 – Soyez cohérent avec la dénomination. Si vous décidez d’utiliser la méthode du « camel case » pour les noms de répertoire et les lettres minuscules pour les actifs, respectez cette convention.
4 – N’essayez pas de déplacer des ressources spécifiques au contexte vers les répertoires généraux. Par exemple, si des matériaux sont générés à partir du modèle, ne les déplacez pas dans le répertoire Materials car vous ne saurez plus par la suite d’où ils proviennent.
5 – Utiliser une tierce partie pour stocker les ressources importées de l’Asset store. Ils ont généralement leur propre structure qui ne devrait pas être modifiée.
6 – Utilisez le répertoire Sandbox pour toutes les expériences dont vous n’êtes pas entièrement sûr. En travaillant sur ce genre de choses, la dernière chose dont vous voulez vous soucier est une organisation adéquate. Faites ce que vous voulez, puis supprimez-le ou organisez-vous lorsque vous êtes certain de vouloir l’inclure dans votre projet. Lorsque vous travaillez sur un projet avec d’autres personnes, créez votre sous-répertoire Sandbox personnel comme: Sandbox / JohnyC.

2. Structure de la hiérarchie de scène

À côté de la hiérarchie du projet, il y a également la hiérarchie des scènes. Comme avant, je vais vous présenter un modèle. Vous pouvez l’ajuster à vos besoins.

  • Management
  • GUI
  • Cameras
  • Lights
  • World
    • Terrain
    • Props
  • _Dynamic

Il y a également plusieurs règles à suivre:

1 – Tous les objets vides doivent être situés à 0,0,0 avec la rotation et l’échelle par défaut.
2 – Lorsque vous instanciez un objet en cours d’exécution, assurez-vous de le mettre dans _Dynamic – ne polluez pas la racine de votre hiérarchie ou vous aurez du mal à y naviguer.
3 – Pour les objets vides qui ne sont que des conteneurs pour les scripts, utilisez « @ » comme préfixe – par ex. @Cheats

3. Utilisez prefabs pour tout

Les préfabs dans Unity ne sont pas parfaits, mais ils sont la meilleure chose que vous trouverez pour partager des hiérarchies préconfigurées d’objets. De manière générale, essayez de préfabriquer tout ce que vous mettez sur vos scènes. Vous devriez être capable de créer un nouveau niveau à partir d’une scène vide en y ajoutant simplement un ou plusieurs préfabriqués.

La raison pour laquelle vous devriez utiliser prefabs est que quand un prefab change, toutes les instances changent aussi. Vous avez 100 niveaux et vous voulez ajouter un effet de caméra sur chacun d’eux? Pas de problème! Si votre caméra est préfabriquée, ajoutez simplement un effet de caméra au préfabriqué de la caméra! Sachez que vous ne pouvez pas avoir un préfabriqué dans un autre préfabriqué. Utilisez des liens à la place – ayez un champ qui nécessite un préfabriqué à assigner et assurez-vous de l’assigner quand l’instance est créée.

Envisagez de connecter automatiquement les instances préfabriquées dans Awake () ou OnEnable () lorsque cela est utile.

Vous Aimerez aussi :   Pack de 15 Modèles 3D pour Unity et Unreal à Télécharger

4. Apprenez à utiliser le système de contrôle de version (VCS)

Vous connaissez peut-être déjà GIT, Subversion ou tout autre VCS.

En fait, « connaître quelque chose » n’est qu’un petit morceau de ce que vous pouvez apprendre. Vous devriez vous concentrer sur l’apprentissage des caractéristiques importantes mais rarement utilisées du VCS de votre choix. Pourquoi?

Principalement parce que les systèmes VCS sont beaucoup plus puissants que vous ne le pensez, et malheureusement, de nombreux utilisateurs les utilisent comme des solutions de sauvegarde et de synchronisation. Par exemple, saviez-vous que GIT vous permet de stocker vos modifications, de sorte que vous puissiez y travailler plus tard sans rien apporter à votre master branch?

Les programmeurs ont tendance à commenter des blocs de code au cas où ils seraient nécessaires plus tard. Ne faites pas ça! Si vous utilisez VCS apprenez à parcourir rapidement les versions précédentes d’un fichier. une fois que vous vous familiariez avec, votre code semble beaucoup plus agréable sans bloc inutile de code commenté.

Voici une bonne source de conseils pour les utilisateurs de GIT: http://gitready.com/

5. Apprenez à écrire des scripts

Unity est un excellent moteur de jeu en matière d’extensibilité (voir l’Asset Store).

Apprenez à écrire des scripts d’éditeur et utilisez ces connaissances. Vous n’avez pas besoin de créer une interface graphique fantaisiste pour vos scripts, cela peut être quelque chose de simple, comme des entrées de menu qui font quelque chose d’utile.

Voici quelques exemples de scripts d’éditeurs :

  • Téléchargement Google Sheets .csv – Une feuille de calcul a été enregistrée sur Google Drive. Télécharge automatiquement la dernière version en tant que fichier .csv, donc plus besoin de le faire manuellement.
  • Randomiser la position, la rotation et la taille des arbres – Afin que la disposition des arbres fasse penser plus à une forêt qu’à une grille.
  • Créer une distribution – Construit pour la cible spécifiée, zippe tous les fichiers et copie au bon endroit.

6. Apprendre la programmation défensive

Avez-vous entendu parler de la programmation défensive? Wikipedia le définit comme suit:

La programmation défensive est une forme de conception défensive destinée à assurer le fonctionnement continu d’un logiciel dans des circonstances imprévues. Les techniques de programmation défensive sont utilisées en particulier lorsqu’un logiciel peut être mal utilisé.

Généralement, lorsque vous écrivez des MonoBehaviours, vous devez vous assurer que:

  • Toutes les références nécessaires sont définies
  • Tous les composants requis sont présents
  • Si vous utilisez des singletons, assurez-vous qu’ils existent
  • Si vous recherchez des objets et attendez de trouver quelque chose, faites-le aussi vite que possible
  • Mélangez le code de l’éditeur (ExecuteInEditMode et #if UNITY_EDITOR) pour faire autant de vérifications que possible avant d’exécuter la scène

Pour plusieurs de ces vérifications, vous pouvez utiliser des asserts.

7. Implémenter des cheats dans l’éditeur et / ou dans le jeu

Après avoir appris à écrire un script éditeur, vous devriez être capable d’écrire un ensemble de cheats dans l’éditeur. Cela peut fonctionner comme une entrée de menu qui déverrouille quelque chose (tous les niveaux par exemple).

C’est vraiment facile à créer:

class Cheats
{
[MenuItem(« My Game/Cheats/Unlock All Levels »)]
public static void UnlockAllLevels()
{
if (Application.isPlaying)
{
// unlock code here…
} else {
Debug.LogError(« Not in play mode. »);
}
}
}

En règle générale, vous devriez écrire des triches qui vous permettront de:

  • Débloquer tous les niveaux, personnages, objets etc
  • Vous rendre immortel
  • Ajouter / soustraire des valeurs comme le temps, l’argent, les pièces de monnaie, etc.
  • Vous permettre de voir des choses qui ne sont pas destinées à être vues par les joueurs
  • Tout ce qui vous aidera à tester votre jeu

Bien sûr, plus pratique (mais plus difficile à écrire) sont des triches dans le jeu. Ce type de triche peut être exécuté en dehors de l’éditeur Unity, mais vous devez penser à la manière dont vous souhaitez l’exécuter.


Source : http://blog.theknightsofunity.com/7-ways-keep-unity-project-organized/

 

CECI POURRAIT VOUS INTERESSER...

Laisser un Commentaire

* En utilisant ce formulaire, vous acceptez le stockage et le traitement de vos données par ce site