Bonjour,
Je recontre un petit soucis technique. J'aimerais projeter des images sur des volumes de la même façon que le ferait un vidéo projecteur.
J'utilise donc la technique du camera mapping, mais le problème c'est que cette technique ne semble pas prendre en compte le volume de mes objets... Elle projette l'image derrière mes volumes alors que ces parties ne devraient pas recevoir d'image...
Exemple en capture d'écran (les images ne sont là que pour le test... Je ne cherche pas faire des rendus de chinoise sur des volumes 3D
On voit bien le problème sur l'image 3 ou la projection est faite sur l'intégralité du sol alors qu'elle devrait être découpé par les volumes qui sont devant.
Merci pour toute aide
Je vais suivre ton problème avec intérêt car si il y a une réponse pour faire ça simplement en projetant une texture avec une caméra comme tu le fais, je suis preneur...
Sauf que je pense que ça va pas être si facile que ça .
Une petite piste tout de même... :
-tu peux créer une matière avec ta texture dans le canal transparence (seul canal qui fonctionne sur une lumière).
-Tu appliques ta texture sur une lumière avec comme type de projection caméra.
-tu positionnes ta lumière au même endroit que ta caméra
-Et bien sûr, pense à activer les ombres sur ta lumière.
Ça devrait marcher. :-)
Je viens de tester:
Sinon en conformant la texture + les ombres (toujours en laissant une lumière au même endroit que la caméra)...
Tout dépend pour quelles raisons tu ne veux pas avoir ton image qui se projette ainsi.
Dernière modification par AleXXi ; 01/08/2014 à 21h42.
Merci pour cette première piste.
Malheureusement elle ne marche pas comme j'aimerais. J'ai le même soucis qu'avec le camera mapping. Si je met une deuxième lumière pour éclairer ma scène on s'aperçoit que la projection de l'image se fait quand même derrière mes cubes.
Je souhaite que la projection se fasse de façon "réaliste", donc si possible éviter que l'image soit projeté derrière des objets car ma caméra va bouger dans la scène et dévoilé cette projection... C'est donc surtout pour une question esthétique.
Je continue de cherche mais je ne trouve vraiment pas...
Je te suggère de faire des sélections de faces pour limiter l'affectation de la projection, tu peux du coup projeter plusieurs images via plusieurs caméras sur un même objet
a suivre ...
j'ai eu a faire un projet comme ça, et effectivement, le moyen le plus simple que j'avais trouvé, c'est d'éditer tes objets, de sélectionner les polygones sur lesquels tu veux projeter. pas toujours très pratique quand tu as des objets sphérique !!!
bon courage.
Non dans mon exemple, tu ne risques pas d'avoir une image derrière tes cubes! si tu regardes bien mon exemple, la texture est appliquée sur la lumière et est projetée comme le ferait un vidéoprojecteur comme tu l'as demandé .
Le problème, c'est que si tu mets une autre lumière, elle va affadir l'image comme quand on allume une lumière à côté d'un videoproj...
La deuxième solution que je te propose fonctionne mais elle est un peu fastidieuse:
-Tu places une lumière (avec ombres) au même endroit que ta caméra
-tu conformes sous forme de texture les ombres qu'elle génère (pour chacun de tes objets)
-puis tu soustrais ces ombres à ta texture projetée (en vert sur mon exemple).
Mais si il y a plus simple, je suis preneur également
Dernière modification par AleXXi ; 03/08/2014 à 19h13.
Oula... Ça s'annonce pas simple
Je vais faire quelques tests... Mais c'est dommage que le camera mapping ne prenne pas en compte les volumes.
J'ai peut-être des réponses vu que j'utilise régulièrement cette technique, mais avant de passer à des propositions j'ai une question:
Dans ton projet tu souhaite projeter une image ? ou une séquence d'image ?