Affichage des articles dont le libellé est Nicholas Lachance. Afficher tous les articles
Affichage des articles dont le libellé est Nicholas Lachance. Afficher tous les articles

mardi 13 octobre 2015

Level Art


Pour conclure le projet, j'ai passé beaucoup de temps à intégrer les derniers assets et les placer dans le niveau, principalement dans MAP_Decor_01, mais aussi pour finaliser la MAP_Decor_02 de Maxime Chapdelaine. Comme il en avait été parlé vendredi, nous nous sommes principalement concentré sur le polishing, à savoir le vertex painting et le placement de decals.
  • MAP_Decor_01
    • Intégration des particules de poussière, de lucioles et de vent
    • Intégration de petites lumière sans shadow pour colorer l'image
    • Intégration et placements des nouveaux végétaux et decals 
    • Vertex Painting des falaises et des sols 
      • Blending des normals map pour conserver l'aspect de volume des falaises
      • Création du matériel M_Master_VertexPaint2 supportant une autre channel de vertex painting
    • Création de nouveaux ilôts flottant
    • Corrections de couleur de textures diverses
    • Retravaille complet de la texture de ciel pour retirer certains nuages manquant de perspective
    • Modification à SM_D_Canyon_01 pour lui donner plus de volume (en suivant la normal map)
  • MAP_Decor_02
    • Intégration des particules de poussière, de lucioles et de vent
    • Intégration de petites lumière sans shadow pour colorer l'image
    • Intégration et placements des nouveaux végétaux et decals 

    • MAP_Lighting
      • Finalisation du Post-Process
        • Modifications des teintes de l'image
    Travail sur le sommet du temple

    Début du canyon

    Fin du Canyon

    Détail de la fin du Canyon

    Le Ravin 2.0

    Îlots distants

    Closup d'un îlot distant
    Le héro à l'aventure dans le Canyon


    Lighting du Canyon

    Lighting de la vista
    Lighting d'un détail d'arrière-plan


    Blueprints

    En cette dernière semaine, j'ai principalement peaufiné les blueprints et intégré les effets de particules de Nicolas Beaulieu-Drolet à l'intérieur de ceux-ci.

    • Création de l'Executable (beaucoup de troubleshooting)
    • ThirdPerson_Character
      • Intégration du système de particules du jetpack et de la collision au sol
    • Level Blueprint
      • Matinee 1-1
        • Intégration des particules d'explosion
        • Intégration de la chaine (apparition/disparition)
      • Matinee 1-2
        • Intégration des particules de jetpack (on/off pour saut)
      • Matinee_Fin
        • Intégration du beam protecteur
        • Intégration des nouvelles animations (QUET_TurnAround et QUET_Death)(apparition/disparition)
    • Modifications diverses collisions pour physique
      • Travail sur les collisions du tunnel avec Maxime Chapdelaine
        • Solution non-retenu: retirer le jetpack dans cette zone
    • Event_Plateforme
      • Intégration des particules d'explosion
    • BP_SK_ABPLaunch et BP_SK_AnimLaunch
      • Création de nouveaux blueprints pour lancer des animations avec TriggerBox pour remplacer BP_Mouvement_QUET (le QUET suivant une spline)

    mardi 6 octobre 2015

    Blueprints

    Cette semaine, dans le domaine des blueprints, j'ai travaillé à améliorer leur fiabilité. Pour la semaine qui suit, je désir principalement améliorer la douceur du saut en jetpack, intégrer les particules, augmenter la qualité des nombreuses physiques du jeu et intégrer le projet Wwise de nos sound designers.

    • Level Blueprint
      • Ajout touche (Enter) pour sauter la Matinee 1-2
      • Retravaille sur la séquence Finale
        • Suppression des conditions d'échec
        • Nouvelle Matinée de Victoire (plan d'ensemble de la Finale)
        • Alignement entre le Character controllé par l'IA et le SK du levier, puis coordination des animations
        • Intégration du levier et de son animation dans la séquence
      • Troubleshooting de la disparition du QUET et du héro dans la séquence initial avec l'aide de Maxime Deroy
        • Solution: Téléporter le SK hors de vue au lieu de toggle sa visibility, puisque ceux-ci n'apparaissent pas assez vite

      • ThirdPerson_Character
        • Travail déccélaration du jetpack
        • Ajout variable vérification utilisation pour l'Animation Blueprint de SK_Hero2
          • Différentiation entre saut et utilisation du jetpack
      • Suppresion des tutoriels en decals sur les murs
      • BP_Event_Tunnel et BP_Event_Plateforme
        • Ajout Controleur pour faciliter le placement dans la scène
        • Ajout variable pour remplacer les Destructibles
        • Travail sur la physique 
          • Retrait de la collision après X temps pour ne pas bloquer le personnage (solution temporaire)

      Matériaux

      J'ai travaillé cette semaine à la création de divers nouveau matériaux pour accomoder l'intégration des meshes

      • M_V_Foliage
        • Ajout variable pour taille du mapping de variations
      • M_Neon
        • Création d'un matériel emissive avec variables d'intensité et de durée du cycle d'animation (pulse)
      • M_AP_Vegetation
        • Création d'un matériel pour les éléments distants de végétation, comme les planes d'arbres et de foret
      Variation du matériel de foliage dans l'espace

      Level Art, Objets Interactifs et Éclairage

      Cette semaine, j'ai passé beaucoup de temps à placer des assets à l'intérieur du niveau, à l'intérieur de la Decor01 du niveau (principalement le Temple, la Faille dans la montagne et le Ravin, ainsi que les ilôts se trouvant au loin. Beaucoup des rochers ont du être replacé, pour combler l'absences de modèles. Maxime Chapdelaine et moi avons fait beaucoup de back and forth, pour étudier les techniques de l'autre et conserver un tout cohérent, pour parfois aussi aller faire quelques retouches et assister l'autre. Assis avec les modeleurs, j'ai pu passer de nombreuses commandes et corrections, qui ont pu être exécuté rapidement, si je ne le faisais par moi-même.

      En tant que Technical Artist, j'ai aussi commencé la créations des Destructibles Meshs,  partant des meshs créé par les modeleurs, parfois en allant découper les modèles dans Blender.

      Avec cette vue d'ensemble que m'apportait le Level Art, j'ai aussi progressivement travaillé le post-process. J'ai travaillé aussi à paramétrer directement les couleurs des textures de Laurie Durand et Nicolas Beaulieu-Drolet pour donner un tout cohérent à l'image finale.

      Pour le reste de la semaine, je vais commencer à modéliser des nouveaux meshes pour renforcer la diégétique de l'univers, ainsi que de travail de la verticalité de l'image


      • Ajout SphereCapture_Actors
      • Travail d'intégration des assets de Nicolas Beaulieu-Drolet (principalement)
        • Création des matériels instances et leur paramétrage
        • Correction des couleurs des textures
      • Vertex Painting dans la Decor01
        • Blending des matériaux de Sol 
        • Paiting d'ambient occlusion et des ombres sur les rochers et falaises
      • Promotion des proxys de roches en mesh
        • Travail des UVs pour fonctionner au Texel Ratio
        • Retravaille de certaines collisions
        • Création des SM_D_Gravats, d'à partir d'une simulation de physique
      • Placement des assets dans Decor01
        • Painting du foliage
          • Création du foliage d'à partir des assets de Nicolas Beaulieu-Dolet
      • Création de destructibles 
        • Création et adaptation du mesh Plateforme_05 d'à partir de Plateforme_01 de Véronique Boisvert
      • Travail du lighting
        • Diverses modifications aux fogs pour  intégrer les ilots distants
        • Travail post-process venant avec l'intégration des textures et couleurs



      Decor 01
      Exemples d'éclairage et post-processing dans le niveau

      Exemple de retouche de couleur directement dans l'engin


       Exemple de travail de verticalité par Marc-Antoine Joly











      lundi 28 septembre 2015

      Matériaux

      Cette semaine, j'ai apporté quelques modifications au matériel Master.

      • M_Master
        • Ajout d'un facteur de random (variable) basé sur la position du mesh pour modifier la couleur 
          • Situé après le blending de matériel et avant la retouche de teinte au pinceau
        • Ajout d'une option (activé par défaut) pour peinturer en vertex paint un ajustement de couleur (variable)
          • Variable d'opacité global
          • Branché sur le Channel Vert
      Modification du value pour du noir

      Version Unlit

      Random par position (chaque objet à le même matériel)


      Blueprints et Wwise

      Cette semaine, j'ai travaillé à l'amélioration des différents blueprints, notamment pour facilité le playtest du niveau. J'ai aussi apporté quelques mineures modifications au level design.


      • Level Blueprint (MAP_Principale)
        • Séquence Début
          • Remplacement du personnage pour SK_Hero2
            • Activation de l'animation lors de la première touche sur E
          • Rajout d'une touche (/) pour passer les deux matinées (Matinee_Debut_01 et Matinee_Debut_02), puis spawner le personnage principale
          • Rajout d'une touche (Enter) pour passer la première matinée et arriver à la séquence QTE
          • Modélisation, UV et création du Destructible SM_OI_Colonne_Debut_01_Destructible (et de sa base, SM_OI_Colonne_Debut_Base_01)
            • Séquence de destruction lié à un Event Matinée de Matinee_Debut_01
        • Séquence Finale:
          • Correction problème reliée au prompt du QTE
          • Correction problème reliée au respawn du personnage lors de l'échec du joueur
        • Ajout de points de téléportations aux points clés du tableau
          • Debut (près du temple) = Touche 1
          • Ravin (après le trigger de Event_Vue) = Touche 2
          • Arène (tout juste avant l'escalier flottant) = Touche 3
          • Finale (avant le triggerbox du QTE) = Touche 4
      • BP_Shake_Plateforme (Camera shake)
        • Amplification du mouvement
      • Thirdperson_Character
        • Travail sur la caméra
          • Celle-ci est désormais de plein pied et centré sur le personnage
        • Travail sur Character_Movement pour plus de réactivité
        • Remplacement du SK par SK_Hero2
          • Transfert de l'eventgraph de SK_Hero vers SK_Hero2 (animgraph transféré par Maxime Deroy)
      • BP_Event_Plateforme
        • Retrait de la collision après (variable)temps
      • Création de decals placeholder pour tutoriels
        • MI_UT_Prompt_01
          • "Double-Espace pour utiliser le Jetpack"
        • MI_UT_Prompt_02
          • Attendez pour Recharger le Jetpack"
      • Modification Level Design
        • Retrait de l'escalier inversé problématique 
        • Modification du mouvement de caméra BP_Event_Attaque pour mieux voir le chemin à prendre
        • Ajout du trigger box pour faire disparaitre le premier QUET flottant
      Cette semaine, j'ai aussi rencontré nos trois sound designers: Léandre Monette, Théo Gjini et Gabriel Essiambre. Nous avons établis une liste des sons et différentes trames nécessaire pour l'ensemble du jeu.
      J'ai par la suite tenté, infructueusement de créer une version custom de Unreal avec Wwise d'intégré. La chose fut plutôt longue et obscure, vu l'absence de documentation. Je vais donc tenter d'utiliser la version buildé par Violaine Toutée, une autre Technical Artist de la classe.  

      lundi 21 septembre 2015

      Proxys

      Cette semaine, j'ai travaillé sur la création des proxys des ensembles montagneux et rochers, que j'ai par la suite monté selon le blocking, établissant la base des volumes, selon les thumbnails de Nicolas Beaulieu-Drolet. J'ai ensuite annoté la map  pour que les levels artists puissent poursuivre sur ce travail.

      Placement des assets proxys pour confirmer les modules de roches à être produit

      Annotation de la map et vue d'ensemble sur le premier ilôt

      Proxys créé et importé

      Blueprints

      Cette semaine, j'ai travaillé à créer l'architecture finale de tout les blueprints du niveau 2.0 (post-rencontre Cours03). J'ai placé la plupart des éléments interactifs avec des variables ou des assets temporaires, en attendant le travail du département d'animation, d'UI et de level design. Le jeu est donc jouable de A à Z et représente bien toute les interactions possibles. Chaque mécanique à été playtester pour en assurer la qualité, puis lancé dans la scène Principale, puis retester par Maxime Chapdelaine et moi.

      • Level Blueprint (MAP_Principale)
        • Séquence Début
          • Lance Matinee_Debut_01, puis séquence QTE (Buttonmash E) avec autre Character (attaché). Si succès, enclenchement Matinee_Debut_02, puis respawn avec le véritable personnage jouable (Thirdperson_Character)
            • Feedback lors de la pression de la touche 
            • Variable Score succès
        • Sequence Finale
          • Disable Input, le jeu prends controle du personnage puis le guide grâce à un IA jusqu'au point désiré  (variable). Le jeu prends prends aussi controle de la caméra et fait une transition jusqu'au point désiré (variable). Séquence QTE (Buttonmash E). Si succès, lance Matinée_Fin_Succes, puis le jeu se ferme. Si échec par temps (Variable), mort du joueur, reset des variables puis respawn (variable).
            • Feedback lors de la pression de la touche
            • Variable Score succès
      • Event_Vue
        • Modification transition de la caméra pour s'adapter à la vue du Character
      • BP_Event_Tunnel
        • Variante d'Event_Plateforme: Trigger box (variable) enclenche destruction
          • Variables de puissances de destruction
      • BP_BoxCollision
        • Box Collision pour murs invisibles
      • BP_Spline et BP_Mouvement_QUET
        • Trigger box (variable) activant le monstre: celui-ci le parcours de BP_Spline (variable). S'autodétruit soit par Durée (variable) ou par trigger box (variable), pour éviter la présence de deux monstres simultanée
          • Variable de respawn si contact du joueur au monstre
      • BP_Mort_Trou
        • Ajout de tags pour empêcher le QUET de traverser les deathsbox et automatiquement tuer le joueur
      • ABP_SK_Hero
        • Création du AnimBlueprint du personnage principal et intégrations des animations de bases dans celui-ci: Idle, course, saut, chute dans le vide et placeholder de la séquence Finale (pousser le levier)
      • ABP_SK_QUET
        • Création de l'Animblueprint de base de la créature avec son loop d'animation;
      • Thirdpersoncharacter
        • Puisque le Event tick envoi plus ou moins de ''flow'' selon le framerate, j'ai du rajouter des variables dans un LERP pour moduler la puissance du jetpack (et du fuel depletion) selon le FPS (donc moins de puissance de gas lorsqu'on arrive près de 100fps, puisque celui-ci est appelé beaucoup plus suivant).
          • Nouvelle variable pour controler la vitesse de perte de fuel.



      Rationalisation du frame rate
      Image de Matinee_Debut_01 (placeholder)

      QUET suivant sa courbe
      Plancher s'écroulant


      Skeletal Mesh proxy du QTE Début

      Level Blueprint des QTEs


      lundi 14 septembre 2015

      Éclairage

      Cette semaine, j'ai travaillé sur la première passe de lumière et de correction d'image, m'inspirant de la référence

      Inspiration

      Vue d'ensemble (Detailed-Lighting)

      Vue du temple (Detailed-Lighting)

      Vue près du pont écroulé (Detailed-Lighting)

      Blueprints

      Cette semaine, j'ai travaillé sur l'ensemble des mécaniques présentes dans le jeu. La plupart de ces mécaniques ont de nombreuses variables ouvertes pour le level designer. J'ai notamment travaillé sur:

      • Event_Attaque
        • Activation d'un animblueprint avec la créature attaquant (placeholder)
        • Mouvement de caméra in et out pour une meilleur vue de l'action (mouvement du personnage débloqué)
        • Mort du joueur et respawn si celui-ci se rapproche de trop près
        • Départ du monstre après X temps
      • Event_Pont
        • Pause du joueur, apparition de la créature, caméra shake, destruction du pont (destructible mesh)
      • Event_Vue
        • Trigger box avec variable pour caméra pour une vue sur l'objectif (Finale)(mouvement du personnage bloqué)
        • Destruction de l'actor après sortie de l'évènement
      • Event_Plateforme
        • Pause du joueur, camera shake,  saut automatique du personnage, destruction de la plateforme
      • QTE_Ecroulement
        • Séquence QTE avec text render (placeholder), indiquant quel touche appuyé (touches placeholder) 
        • Séquence(= C, B, N) modifiable. 
        • Mort du joueur si échec, reset des variables, destruction de l'acteur si réussite
      • QTE_ButtonMashing (architecture générique pour le début et la finale)
        • Téléportation du joueur à l'emplacement du début du QTE et à la fin (placeholder en attendant l'IA)
        • Mouvement de la caméra à un point fixe (variable)
        • Nécessite appui répétitif  sur E jusqu'à succès (enclenché lors fin de mouvement de caméras)
        • Mort du joueur si échec, reset des variables, destruction de l'acteur si réussit
      J'ai aussi travaillé à la création du level streaming, testé le workflow pour les animblueprints et rencontré nos collègues sounds designers pour leur présenter le projet.
      MAP_ZoneTest_Blueprints, la salle de test de toutes les mécaniques

      Event Plateforme en action

      Event_Attaque, la créature placeholder et le déplacement de caméra

      QTE_Ecroulement et le text Render affichant la touche à appuyer



      lundi 7 septembre 2015

      Organisation

      Cette semaine, j'ai travaillé sur les fondations de la méthodologie de travail de l'équipe.
      • Création de Perforce et de l'arborescence de Production 
      • Création du Projet Unreal (4.9.0) et de son arborescence
        • Importation de nombreux assets utilitaires
          • ''Meshes'' pour le ''blocking''
          • Textures utilitaire pour les matériaux
          • Etc.
      • Élaboration de la base du Kanban
        • Grandes lignes, répartitions des tâches selon le devis
        • Couvre les 5 premières semaines
        • Facilement triable, couvre la largeur, sans plus, de l'écran (à ne pas négliger)
      • Rédaction du document Workflow, couvrant:
        • Nomenclature
          • Préfixes, Catégories, Suffixes Textures
        • Dimensions, pivots et orientation
        • Texel Ratio
      La documentation est disponible sur le Perforce ainsi qu'une version de remise sur le Partage Z

      Arborescence Perforce fantôme pour diriger l'équipe

      Kanban

      Workflow

      Matériaux

      Cette semaine, j'ai travaillé à l'élaboration de nombreux matériaux ''Master'', offrant des paramètres de qualité ainsi que des variables ouvertes pour les artistes de niveau.
      • M_Master: Pour la plupart des matériaux de base. Permet en autre les transitions par ''vertex color'' et ''height lerp''.
        • Utilisation de masques pour les textures (Metalic= R, Roughness=G, AO=Blue, Masque=A)
      • M_Ciel: Ciel avec nuages mobiles et variable pour déplacer le soleil
      • M_Decal: Pour les deffered decals
      • M_Master_Displacement: Matériel de base avec possibilité de displacement 
      • M_UT_Couleur: Matériel utilitaire pour le blocking
      • M_UT_Unlit: Matériel utilitaire pour les références de Texel Ratio
      • M_V_Foliage: Matériel avec vent dynamique
      Ces matériaux sont présent dans le projet Unreal sur le Perforce

      Arborescence du Master Shader

      Thumbnails des matériaux

      Blueprints


      Cette semaine, j'ai travaillé sur l'élaboration des différentes mécaniques de bases. 
      Lors de notre poursuite, le personnage fait usage d'un jetpack pour traverser de longues étendues de ''vide'' mortel. J'ai donc prototyper:
      • Le jetpack
        • Comprenant un système d'essence rechargeable après délai, tant que l'on reste au sol
        • Deccélaration progressive pour une chute douce
        • Interface diégétique (représenté par une tête de singe changeant progressivement de couleur pour réprésenter l'essence disponible)
        • Ouverture de nombreuses variables pour le Level Designer
      • Système de Respawn pour chute dans le vide
        • Système à point fixe de respawn  et de Death box pouvant être facilement placé par le Level Designer,
        • Caméra restant fixe dans l'espace lors du contact avec le Death Box, avec un ''look at'' suivant le personnage dans sa chute (variable de temps exposé)
      Ces blueprints sont présent dans le projet Unreal sur le Perforce

      Exemple de Blueprint
      Blueprint du Personnage Principal

      Jauge Pleine
       Jauge à moitié vide
       Personnage utilisant le jetpack, carburant presque vide

      Caméra fixant le joueur dans sa chute, avant de suivre le personnage ''respawné''