Labo

Quelques projets personnels, des essais techniques, vous êtes dans le labo R&D... Un vivier d'idées jetées en vrac. C'est ici que naissent des concepts et de nouveaux projets. C'est ici que j'explore de nouvelles techniques, que j'expérimente, que je développe des composants, que je recherche des solutions à des problèmes souvent rencontrés...
Des suggestions ?

Octobre 2021

Carrier Command 2 - Bear

Catégorie : Labo

Mon fils est un grand fan de Carrier Command 2. Ayant moi-même été un fan du premier opus du nom, il y a plus de 30 ans sur Atari ST, j'ai décidé de modéliser l'un des tanks du jeu (le "bear") afin de l'imprimer.
La taille du modèle est assez petite (10 cm environ) et le grand nombre de détails le prédestine plutôt à de l'impresion résine (SLA). Néanmoins, avec un scale à 300% ou plus, cela devrait pouvoir se faire sur imprimante filament (FDM).
Un prochain post sera dévolu à la version imprimée.

En attendant, vous pouvez télécharger gratuitement le modèle sur Thingiverse.

Carrier command, impression 3d, résine, modélisation 3d

Février 2021

Wish (Streaming 3d)

client : Talent Making Talent https://2020.wish.org.qa/ Catégorie : Labo

Dans le cadre d'un projet malheureusement avorté, j'ai travaillé sur un salon interactif pour des professionels du secteur pharmaceutique/médical au Qatar. Les conditions sanitaires impliquaient que l'expérience du salon puisse être reproduite en ligne pour les personnes invités et qui ne pouvaient pas se rendre sur place.
J'ai travaillé sur la partie développement 3d. Le salon a été modélisé virtuellement pour permettre à l'utilisateur de s'y déplacer et d'accéder aux différentes fonctionnalités et rubriques du site (chat, videos conférences en direct, ressources diverses etc...). Nous avions utilisé la technologie Furioos pour la 3d. Cette technologie permet de faire du streaming 3d temps réel. Concrètement la 3d est calculée sur les serveurs de Furioos et affichée chez les utilisateurs. L'avantage indéniable est qu'il est possible d'obtenir une qualité de rendu type "PC" sur mobile. Le résultat était plutôt intéressant.Le projet a donc été développé avec Unity 3d 2019.x URP + Furioos.
Malheureusement, pour des raisons de timing, la version 3d du projet a avorté.

Furioos, développeur Unity 3d, streaming 3d, développeur unity

Février 2020

Smartphone refraction

Catégorie : Labo

La simulation de réfraction et plus généralement la transparence sur smarphone est un luxe plutôt coûteux. Néanmoins grâce à Shader Graph, il est possible de rapidement prototyper un shader qui permette cela à moindre coût. C'est ce que j'ai tenté de produire sur ce test.

Un bruit paramétrique triplanaire est utilisé pour la déformation des vertices (sommets), mais également la normale map, ainsi que la déformation de la texture vidéo de fond. Cette texture est alors appliquée à l'objet sur son canal d'emission et son albedo avec un peu de Fresnel. Le résultat est loin de valoir une véritable réfraction, c'est évident, mais pour du smartphone, et compte tenu du peu de ressources que cela demande, cela donne plutôt bien le change.

J'utilise ce shader dans une production en cours de finalisation en réalité augmentée qui ne manquera pas d'apparaitre très bientôt ici même.
Unity 3d 2019 (C#) + URP + Shader Graph 0.7

développeur Unity 3d, shader graph, réfraction, shader réfraction

Février 2020

Unity raytracing (suite)

Catégorie : Labo

Toujours dans le cadre des mes investigations sur le raytracing sous Unity à l'aide du dernier package (toujours en preview) de raytracing temps réel basé sur les plus récents GPU Nvidia, voici une petite et très courte vidéo d'essai. Le manque de temps, mais surtout le manque de stabilité de la fonctionnalité, et les incessants plantages ne m'ont pas permis de pousser plus avant les tests.
J'avais prévu beaucoup plus, mais, à l'heure ou j'écris ce post (février 2020), le raytracing sous Unity est encore en préversion. Il n'est donc absolument pas envisageable (et je confirme) de l'utiliser sereinement en production pour l'instant malheureusement.
Néanmoins, les résultats, bien que succincts et limités sont tout de même encourageants. Espérons qu'Unity parviendra (enfin) à produire un système de GI temps réel efficace... et qui fonctionne... peut-être avec cette techno ?
Configuration utilisée :
Nvidia GTX 1080m
Unity 2019.3.0f6
HDR 7.1.8

développeur Unity 3d, raytracing temps réel

Février 2020

Unity Raytracing temps réel

Catégorie : Labo

Unity a récemment ajouté à sa dernière version (2019.3.x), le raytracing temps réel. Ceci est essentiellement dûe aux avancées importantes de Nvidia. Jusqu'à présent, cette fonctionnalité était uniquement disponible sur les derniers processeurs graphiques RTX de chez Nvidia. Or, depuis peu, cette fonctionnalité a été étendue à des GPU plus anciens (mais avec des performances un peu moindres bien sûr).


Le résultat est encore loin d'être parfait, mais plutot encourageant. Si on considère que le raytracing sous Unity est encore en phase de développement (beta), on peut s'attendre à encore bien des évolutions.

Sur cette démo, les réflexions sont nettement exagérées, mais il semble qu'en les diminuant, celles-ci disparaissent. Peut-être est-ce dûe à la librairie d'Unity encore tâtonnante, ou le fallback limité sur ma GTX 1080. Quoi qu'il en soit, les réflexions indirectes en temps réel, la réfraction, ainsi que les réflexions sont plutôt impressionnantes.
Il y a quelques années, j'avais effectué des tests sur une libriarie malheureusement abandonnée depuis par son développeur (Rove 3d), en espérant pouvoir effectuer des rendus de qualité au runtime. Peut-être que le raytracing temps réel d'Unity est un premier pas dans cette direction...
Plus de tests suivront sur cette passionnante fonctionnalité.

raytracing temps réel, Développeur Unity 3d

Février 2020

Visual Graph effet sous-marin

Catégorie : Labo

Toujours dans le cadre de tests de Visual Graph d'Unity 3d, j'ai essayé le système de point cache. Il manque encore des fonctionnalités et quelques bugs subsistent, mais l'ensemble fonctionne plutôt bien. Les possibilités sont nombreuses, et beaucoup d'explorations encore nécessaires...

L'effet sous-marin est donné principalement par le mouvement des particules et surtout par des effets post Fx (brouillard, correction colorimétrique, déformation, abérration chromatique, vigneting...).

VFX Graph, Visual Graph, Développeur Unity 3d

Janvier 2020

VFX Graph / Shader Graph

Catégorie : Labo

Petite vidéo de test des nouvelles fonctionnalités que propose Unity 3d : Shader Graph et Visual Graph. Shader Graph permet de produire des shaders assez facilement et rapidement par un système nodal, et Visual Graph permet de créer des systèmes de particules complexes via GPU.
Le gros intéret de ses outils et qu'ils permettent de faire appel à la puissance de la carte graphique (contrairement au système de particule classique d'Unity tel que Shuriken). Par conséquent, la puissance disponible est décuplée. Esthétiquement, on peut donc à présent envisager des choses plutot formidables.

J'effectuerai un prochain test en VR, et également sur smartphone avec le moteur URP (Universal Render Pipeline) pour voir si le résultat est aussi convainquant.

développeur Unity 3d, shader graph, VFX graph, visual graph

Mai 2019

Impression 3d

Catégorie : Labo

Travailler sur des modèles 3d virtuels, c'est bien, mais les concrétiser dans la vraie vie, c'est mieux.
Après avoir scanné en 3d un personnage à l'aide d'un scanner 3d d'entrée de gamme, une retouche manuelle sous Zbrush, j'ai tenté d'imprimer le sujet en 3d à l'aide d'une imprimante 3d (Creality CR10-S). L'impression mesure 15 cm de haut et a été imprimée en PLA en 0.15 mm. Une couche de vernis (en spray) a été appliquée pour gommer un peu les strates produites par l'impression aussi fine soit-elle. L'impression a duré environ 24h, et le résultat est plutot fidèle au modèle original. Seul le scanner 3d est assez approximatif par sa qualité. Néanmoins, il m'a permis de récupérer grossièrement les formes de bases du modèle.
Une expérience intéressante en somme.

impression 3d, modélisation 3d

english english version
message d'infos