Shaders, SDF, et modèles 3D

Started by EdmondDantes, July 21, 2022, 05:47:02 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

EdmondDantes

Bonjour, Tout d'abord, je me présente, Edmond, pas du tout coder, enfin je suis capable de modifier un peu de JS ou de php si je tombe sur un script qui fonctionne déjà. On va dire que j'ai quelques bases, faire une condition, une boucle, un tableau... Rien de fou. Et rien en python, en C ou autre.
Mon truc à moi c'est plutôt le graphisme, 2D, et le motion, je manipule un peu la 3D, sous C4D, ou autre, je sais modeliser, éclairer, rendre, et en général ça me suffit.

Là j'ai un projet ou le temps réel est nécessaire, et je me suis tourné vers shadertoy qui semble être une très bonne base de départ, mais malgré plusieurs jours de recherches, et à tourner en rond, je bloque.

Je bloque au moment où il faut passer du modèle 3D, au shader tout en code, je ne parviens pas à trouver l'outil qui me permettrait de passer d'un mesh (obj, ou autre, peu importe) à une texture SDF.

Exemple concret, comment je peux remplacer la tête par autre chose dans ce shader (un cube, une chèvre, peu importe)

Je suis tombé sur GeeXLab, que je ne connais pas du tout, je ne suis même pas certain que cela me permettre de faire ce dont j'ai besoin, c'est donc ma première question :

GeeXLab me permet-il de passer d'un ficher .obj à un un SDF que je pourrais utiliser ici par exemple : https://www.shadertoy.com/view/WljSWz

Question 2 :
Si oui comment ? quelqu'un peut-il me suggérer un workflow, une piste ?

J'ai tenté pas mal de choses, y compris de passer par unity 3D, ça n'a pas marché, j'ai trouvé de vielles ressources sur github, qui ne sont pas documentées depuis 2015, bref, rien de concluant, et j'avoue que là c'est un peu la bouteille à la mer.

Merci beaucoup à ceux qui pourront passer quelques minutes sur mon problème.

JeGX

Bonjour Edmond,

désolé de te décevoir mais GeeXLab ne pourra pas t'aider directement dans ton projet.

Le visage que tu vois dans la demo shadertoy est totalement procédural: il est généré à partir de formules mathématiques avec beaucoup, beaucoup d'essais avant d'avoir la bonne formule (et pour ça, le live-coding est juste indispensable).

Donc pour remplacer la tete par autre chose, il faut que tu te plonge dans la prog des shaders et que tu arrives à afficher un cube, une sphere ou autre chose en utilisant du ray marching et des routines SDF.

Maintenant tu peux aussi faire autrement: tu affiches un modele 3D et tu essaies de récuperer dans le shadertoy les routines qui font l'effet graphique que tu veux et tu les mets dans un shader qui sera utilisé pour le rendu du modele 3D. Cette technique est utilisable dans GeeXLab, Unity, et tous les autres softs du meme genre.

J'espere que ça va t'aider un peu...