mercredi 24 septembre 2014

Update de la semaine 4

En cette quatrième semaine de production, ce fut le temps des tests de rendu visuel ainsi que la production de quelques effets. Sans plus tarder, liste de tâches!


- Modélisation des rivières majeures et de la chute du début
- Shader d'eau plus cartoony pour mieux appartenir à l'environnement
- Expérimentations pour essayer d'intégrer un Toon Shader
- Production du FX pour les pas sur le sol
- Production des FX pour la coupe des arbres



Modélisation et shader pour les rivières et la chute

Les deux vont de paire, puisque sans le shader, un plane, même déformé, n'a l'air de rien.

Le shader d'eau fait au début de session était destiné à un jeu plus réaliste que présentement, donc le besoin de revisiter le tout pour en faire un shader cartoon était de mise.

J'ai donc exporté le mesh du terrain dans 3DS Max pour pouvoir modéliser la forme des rivières et de la chute qui sont dans le niveau présentement. Mon plan est de faire une texture bien simple qui va panner sur le mesh dans la direction que je vais donner aux UVs de ce dernier (photo à l'appui) 

Mesh de terrain simplifié avec les rivières et chutes


Une fois les meshes réalisés, je me suis plongé dans le shader qui allait donner le look à cette eau. Rien de bien complexe, une texture qui panne de haut en bas sur les UVs des meshes. Le plus complexe que j'ai fait sur ce shader est l'ajout du calcul de la profondeur pour donner l'impression de densité de l'eau sur les surfaces qui lui touchent. 

2 tests pour cette profondeur. Le premier est celui de laisser l'eau telle qu'elle et de seulement rendre les bordures plus fluides lorsque l'eau entre en contact avec un objet. Le deuxième est celui de faire cette collision ressortir en faisant un lerp avec le masque de profondeur en alpha entre la diffuse et une couleur blanche. Voici donc les 2 résultats.

Profondeur en douceur 

Profondeur affirmée et blanche

Notre choix jusqu'à présent s'est arrêté sur le premier, soit celui plus subtile. Le deuxième demeure à portée de main. Voici le shader de l'eau choisie.

Shader d'eau plus cartoony




Vidéo de la rivière






Vidéo de la cascade






Toon Shader

Prochain appel!

Plus sérieusement, j'ai tenté de faire fonctionner un shader pour un look plus cartoon sur tout, mais Unreal 4 étant physically based, certains nodes nécessaires ne sont plus utilisables. Il a donc fallu me résoudre à faire un shader de post process. 

Post process pour un look de Toon Shader.

Le tout fut complexe à faire fonctionner, mais une fois en place, nous avons pu tester et nous rendre compte que tout devenait trop blasté et clampé. Voici un exemple du look avec et ensuite sans Toon Shader.

Avec Toon Shader (trop d’artefacts et de brillance)

Sans Toon Shader (moins de punch, mais plus harmonieux)

Nous avons décidé de remiser le Toon Shader pour garder le style plus harmonieux.



FX de course

Pour enlever la sensation de flottement du personnage, il est impératif d'ajouter un FX de poussière qui lève. Ce dernier fut assez simple à réaliser. Récupération de la texture de particule des nuages de brume avec une teinte comme le FX du sol qui s'écroule. Émetteur en BURST au lieu de CONSTANT, et le tour est joué. 

Le gros du travail sera de le faire décoller au bon moment selon le cycle d'animation (prochaine étape à réaliser).




Vidéo du FX de pas






FX pour la coupe des arbres

L'animation de la coupe des arbres étant très intense, des FX exagérés étaient de mise. Le personnage frappe deux fois l'arbre avec une force normale avant de le frapper d'un coup plus puissant. J'ai donc fait deux FX qui répondent à ces forces de frappe. Le premier sera déclenché lors des coups plus petits et le deuxième lors du dernier coup. 

Il est à noter que le dernier doit cacher également la transition entre le mesh de l'arbre entier et le mesh de l'arbre sans la pièce maintenant bûchée.

Émetteur du FX de coupe régulier


Vidéo de la coupe normale





Émetteur du FX de coupe surpuissante




Vidéo de la coupe extrême




Conclusion

Tout est sous contrôle et le jeu avance bien. Cette semaine, soit la cinquième, le but sera de terminer les FX prioritaires pour ensuite m'attaquer au UI dans la dernière semaine.

Stay tuned!









lundi 15 septembre 2014

Update de la semaine 3

Une troisième semaine vient de passer dans ce beau projet qu'est celui de ''Don't feed the bear''.

Dans cette semaine, les tâches que je m'étais données ont été réalisées et étaient les suivantes:

- Shader de Landscape pour peindre des matériaux
- FX pour la chute (Mist, Splash, Contact avec l'eau)
- FX de feuilles d'automne
- FX de sol qui s'effondre (Poussière, Cailloux qui rebondissent au sol)


Shader de Lanscape

J'ai débuté avec le shader de landscape, en ayant encore une fois pour but qu'il soit simple à utiliser pour les artistes. J'ai décidé pour une question de poids de limiter le nombre de textures à 5, ce qui est amplement suffisant selon les besoins établis et qui permet de garder une bonne fluidité en travaillant.


Shader en son ensemble, avec layers pour peindre sur le terrain.

Application du shader de terrain sur le landscape (préliminaire pour tester)


FX de chute d'eau

Pour le FX de la chute d'eau, il me fallait élaborer plusieurs systèmes pour donner l'effet voulu. Sachant que la DA était cartoony, j'ai donc décidé de me donner comme thématique les termes Cartoon et Soft. À partir de cela, j'ai pu élaborer les textures de mes sprites et y aller dans l'émetteur. 

En tout, la base de la chute est constituée de 4 émetteurs de particules. Un premier fait office de brume de vapeur propagée en grande surface. Une autre brume plus condensée sert de point de contact entre la chute et la rivière à la base. Un autre émetteur permet de faire sortir des gouttes d'eau en grande quantité du point de contact et les fait se diriger vers le bas dans le courant, puis finalement, un autre émetteur crée des gouttes d'eau avec moins de physique qui passent par dessus le pont et qui sont visible devant le personnage. Voici donc des images de quelques émetteurs ainsi qu'un vidéo montrant la chute en action.


Particule pour la fumée (simple et soft)

Particule pour les gouttes d'eau (simple et soft)

L'émetteur de brume, sensiblement pareil à celui de contact avec la rivière.

Émetteur utilisé pour les gouttes au dessus et en dessous du pont.





FX de feuilles d'automne

L'ambiance et le mood étant ceux d'une forêt automnale, il fallait définitivement un effet spécial de feuilles qui tombent des arbres. Le style cartoon et la course nécessitait donc d'avoir un effet exagéré un peu pour remarquer le tout en jouant.

J'ai combiné des feuilles jaunes avec des feuilles plus foncées dans le même émetteur, puis avec l'aide d'un équipier qui a eu une bonne idée, j'ai fait en sorte que les feuilles semblent tourner en tombant, mais le tout est réalisé en trichant en changeant la taille en Y de 1 à -1 en fonction sinusoïdale (visible dans le graphique en bas à droite de la photo des paramètres de l'émetteur. L'effet que cela donne est particulièrement agréable à l'oeil.


Émetteur de feuilles, avec la fonction qui fait tournoyer les feuilles.

Notre cher scout sous une pluie de feuilles d'automne (dramatisation).





FX de sol qui défonce

Dans la mine, à la fin, un morceau de sol défonce et se fracture avec un Destructible Mesh (que Jonathan avait fait au préalable). Pour aider à la crédibilité de l'événement, un FX était nécessaire. 

J'ai donc fait de la fumée de poussière qui s'ajoute par dessus les pièces qui tombent lorsque le sol se détruit et j'ai ensuite ajouté des sprites avec une texture de petits cailloux pour ajouter à la destruction. Ces petites roches réagissent aux collisions avec le sol et rebondissent avant de mourir, donc c'est pas mal cool.


Émetteur pour le sol qui se défonce (poussière et roches).




Vidéo de sol qui défonce




Conclusion


La semaine 3 fut une semaine chargée et beaucoup de travail reste à faire. La prochaine étape sera de terminer le plus de FX possible pour me lancer ensuite dans le UI et dans l'eau (puisque le look de l'ancien shader d'eau ne fonctionne plus suite aux nouvelles directions de la DA).

Stay tuned!

lundi 8 septembre 2014

Update de la semaine 1 et 2

Les deux premières semaines du projet sont écoulées et en tant qu'artiste technique, j'avais des tâches qui visaient surtout la prochaine phase du projet:

- Préparer le Perforce pour que l'équipe travaille aisément
- Préparer un document technique pour les formats, pipelines, etc.
- Préparer un shader versatile pour que l'équipe importe sans peine
- Préparer un shader d'alpha pour les feuilles et autres
- Préparer un shader d'eau facilement ajustable


Les tâches sont terminées considérant que les shaders devront certainement subir des améliorations et des optimisations tout au long du projet et que mon but était de les faire efficaces, fonctionnels et faciles d'utilisation. 

Je listerai alors ici les différentes tâches avec images des résultats et des brèves descriptions.


Perforce

Pas vraiment de preuve palpitante à montrer ici, mais voici tout de même une image du dépot:





Document Technique

Encore une fois, la meilleure façon de constater ce document sera d'en faire la lecture. Il est disponible dans Perforce dans le dossier Documentation du worspace nommé Contrainte01. Il sera également disponible dans le dossier de remise du cours du 8 septembre 2014.


Master Shader

Le Master shader a été fait selon les besoins de l'équipe pour le projet. Il comprend la possibilité de faire du Vertex Paint sur les 3 channels RGB en plus de la texture de base, donc en tout 4 textures peuvent se superposer. 

De plus, le shader permet d'activer et de désactiver le vertex paint pour chaque channel, les masques pour le vertex paint ainsi que les normal maps de détails pour optimiser et utiliser les calculs nécessaires seulement. 

Voici en rafale quelques images du shader.


Le Vertex Paint en action


 Le shader en son ensemble


Un material instance avec les settings pour les artistes


Alpha Shader

Un shader plus simple au final que celui opaque qu'est le Master Shader, ce shader sera utile pour les feuilles ou les autres assets avec masques d'opacité. Ce shader offre également la possibilité d'ajouter du subsurface pour des beaux effets au soleil et à la lumière. 

Le Alpha Shader en son ensemble



Water Shader

Le gros boulot se trouvait dans ce shader d'eau. Se baser sur des connaissances de UDK pour Unreal 4 était une expérience intéressante vu le nouvel engin qui calcule tout en physically based. Ce fut de l'adaptation.

Le shader est versatile et permet d'ajuster la vitesse du panning des normals, la taille de leurs UVs, la direction du panning, la couleur de surface avec un contrôle de couleurs selon la hauteur des normals en plus de la couleur du subsurface, donnant un effet de vase au fond.

Le shader permet également le Vertex Animation, ce qui fait animer les vertex du plane pour créer de vraies vagues selon des fonctions sinusoïdales. Voici donc quelques images du résultat et du shader en soit. 

Il est à noter le shader est beaucoup plus intéressant en mouvement, ce qui pourra être vu dans le dossier de remis avec le matériel directement.


Le Water Shader en son ensemble

 Le reflet des objets sur l'eau


 La normal qui réagit au soleil et au ciel

C'est ce qui résume brièvement les tâches effectuées lors de la semaine 1 et 2. Il ne reste qu'un shader à faire, soit celui pour le terrain qui nécessite une façon de procéder différente. 

Je laisse ce billet en postant une image de la liste des différents Fx et UIs que je devrai tenter de réaliser. Il est à noter que cette liste a été faite en début de projet et sera brutalement scopée pour entrer dans les temps.


À la revoyure! 

jeudi 4 septembre 2014

Contrainte 01: La Poursuite

Salut à tous!

Pour le premier projet de contrainte, le but est de produire une poursuite. Dans cette optique, nous avons du créer des équipes de 6 personnes et se mettre à songer à l'idée ainsi qu'aux tâches que vous voudrions accomplir au sein de l'équipe. 


Voici donc la liste de mes coéquipiers ainsi que quelques informations sur nos choix:


Équipe

François Cardin: Character Artist

Carl Perreault: Rigger/animator

Geneviève Gagnon: Level Artist/Level Designer

Jonathan Clermont: Level Artist/Level Designer

Nicholas Jolicoeur: Level Artist/Level Designer

David Bouchard-Gagnon: Technical Artist/Fx/UI



Idée de projet

Un chef scout est en camping seul et laisse de la nourriture hors de sa tente. Un ours fut attiré par celle-ci et, en voyant le scout, se met à sa poursuite alors que le campeur tente de rejoindre son campement au bas de la montagne.

Le campeur partira de sa tente sur un sommet, dévalera la montagne et sa forêt en passant par ses rivière et ses rocheuses, puis devra passer par une mine désaffectée pour se rendre enfin à son camp.

Le tout sera réalisé en 7 semaines, et ce sera épique.


Merci et bonne soirée!

Présentation du blog

Bonjour à vous, cher lecteur ou chère lectrice!


Ce blog aura pour but de réunir en son domaine le cheminement personnel dans les projets de ce cours de simulation de production. Vous y trouverez des images ou parfois des vidéos des accomplissements majeurs ou mineurs que j'aurai fait tout au cours des prochaines semaines. 

La session s'étend sur 15 semaines et se divise principalement en 2 projets. Le premier projet est une contrainte de 7 semaines visant à réaliser une poursuite jouable ayant une bonne qualité visuelle.

La deuxième contrainte est encore un mystère. 


Je vous souhaite donc, si vous suivez ce blog, une bonne lecture tout au long de la session!