🇫🇷 🇬🇧
Portrait

Gwen Lg

Artisan programmeur

Présentation

J’ai travaillé pendant 13 ans dans un studio de jeux vidéos (Arkane-studios) CV. Et aujourd’hui je travaille sur des logiciels libres ou du code opensource.

J’ai à cœur de contribuer à du code durable, maintenable, bien structuré ainsi que des programmes utiles pour l’utilisateur, qui lui rendent service.

Je considère l’informatique comme un outil, qui en tant que tel n’a d’intérêt que s’il apporte quelque chose : fonctionnalités, facilitées et automatisations. Avec une approche globale des projets, je prête attention aux interactions entre les différentes parties et technologies de ceux-ci .

Je propose mes services comme programmeur Rust et/ou logiciel libre. Je peux Ă©galement travailler en C/C++.

Technologies

Langages

Framework

Crates Rust

Framework C++

Outils

CV

Pause/Indépendant 2020 - Aujourd'hui :

Rust

Je me suis auto-formé à Rust (complété d’une formation de 4 jours). J’explore l’écosystème Rust, participe à des projets open-source comme Puffin et explore les possibilités du langage à travers des projets expérimentaux et/ou plus fonctionnel.

Dans ce cadre, j'ai crée et je maintiens les crates :

subtile et subtile-ocr sont parties de la reprise de projet précédant qui n'était plus maintenu.

Arkane Studios 2007-2020 :

Orchestrateur séquenceur V1 (Dishonored 1)

Pendant le développement de Dishonored 1, j’ai principalement travaillé à étendre l’outil Matinee d’Unreal Engine 3 entre autres pour le transformer en Orchestrateur séquenceur.

Ce travail nous à permis de l’utiliser pendant les phases de gameplay, il joue des “cinématiques” sur les PNJs pendant que le joueur continue d’évoluer dans le jeu. Plutôt que de fonctionner comme alternative au gameplay, il fonctionne en coopération (Ex: plutôt que de déplacer un PNJ directement, le système pouvait demander au PNJ d’aller à un point donné et la locomotion le faisait se déplacer).
Le système était même utilisé pour contrôler le joueur quand la narration le nécessitait. Notamment lors des intros de niveaux où la caméra est animée avant que son contrôle ne soit rendu au joueur.

L’édition elle se faisait avec des clés placées sur une timeline, à la façon d’un logiciel de montage vidéo.

Orchestrateur séquenceur V2 (Dishonored 2)

Pour le développement de Dishonored 2, j’ai principalement redéveloppé le système d’Orchestration séquenceur. En partant de l’expérience sur Dishonored, le système à été redéveloppé de zéro (dans le cadre du passage au Void Engine) et étendu en termes de fonctionnalités et d’usages.

En plus de servir pour créer et jouer les cinématiques de narration, il servait pour du script de Level Design ainsi que pour le gameplay.

Note: Le Void Engine est basé sur une base d’id Tech 5 qui a été fortement modifié (ECS, Rendu, script logique, Orchestrateur séquenceur).

Système de commande éditeur

Dans le cadre de la refonte de pans entier de l’éditeur du Void Engine, j’ai travaillé à la mise en place d’un système pour isoler le code de traitements du code de l’interface, et gérer ses traitements de manière générique. Ce système à été mis en place pour faciliter le développement, le débogage, uniformiser le code, le rendre le code plus maintenable, avoir plus de code générique et pouvoir scripter des traitements/transformations.

Veille Technologique :

En parallèle de mon travail à Arkane, je suivais les actualités de l’univers de l’open source, notamment autour de Linux. Je me suis notamment intéressé à Git et Rust que je n’avais pas l’occasion d’utiliser pas dans mon travail. Deux technologies dont j’ai assez vite perçu les intérêts.

Bois

J’ai également travaillé le bois pour créer divers objets pour moi ou sur demande. Le travail du bois pouvant être complété par de la gravure laser, de l’huilage coloré ou de la lumière des LEDs. J’ai par exemple fabriqué des luminaires, veilleuses pour enfant, appliques, bac pour plantes, stick d’arcade.