Est-ce possible ? (idée farfelue)

On parle de tout et de rien (vos jeux préférés, films, manifestations diverses, etc...)
Kazuma17
Messages : 33
Inscription : 29 Août 2017 15:56

Est-ce possible ? (idée farfelue)

Message par Kazuma17 » 30 Août 2017 09:29

Bonjour à tous ! :cote:

Nous avons un projet d'automatisation avec ma boîte mais la solution nous reste floue.

Il nous faudrait créer une interface avec des images fixes sur lesquelles il y aurait des emplacements vierges, et le client pourrait glisser-déposer (ou importer) un visuel qui se placerait à l'endroit prévu pour personnaliser cet emplacement vierge (tout en sachant que les visuels ne seraient pas forcément de face, cela impliquerait une déformation de perspective automatique), afin de lui permettre de visualiser tout seul ce que rendent ses visuels aux emplacements prévus. Il n'aurait donc plus à faire appel à nos graphiste pour faire de la mise en situation sur Photoshop.

Le plus simple serait donc clairement de programmer un logiciel qui fait tout ça mais nos programmeurs sont surchargés, et commençant à nous former sur Unity nous aimerions faire ça dessus :)

Ma question est simple : Est-ce possible ? Si oui comment procéder ?

Merci par avance ! ;)

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Est-ce possible ? (idée farfelue)

Message par boubouk50 » 30 Août 2017 09:52

Salut,

Je n'ai pas compris: tout en sachant que les visuels ne seraient pas forcément de face
C'est donc pour un environnement 3D? Donc un Drag'nDrop sur un élément d'interface 3D?
Ou bien c'est l'image déposée qui n'est pas "de face" et il faudrait retrouver sa bonne orientation?
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Kazuma17
Messages : 33
Inscription : 29 Août 2017 15:56

Re: Est-ce possible ? (idée farfelue)

Message par Kazuma17 » 30 Août 2017 10:29

Les images sur lesquels on peut interagir seront de face (2D), mais celles qu'on glisse ou importe ne le seront pas forcément. C'est du donc du drag'n drop sur une interface 2D.

Pour donner un exemple :

Admettons qu'on ait une image de voiture tuning vue de 3/4. L'idée serait de personnaliser la portière visible : on dépose une image qu'on souhaite voir sur la carrosserie, et automatiquement elle se place dans l'emplacement prévu (ici sur la portière), et est déformée par la perspective (comme on pourrait le faire sur Photoshop).

Si la perspective est trop compliquée partons du principe qu'on ait que des visuels qui se placent de face, ce sera déjà un très bon début !

Merci pour ta réponse ! :)
Dernière édition par Kazuma17 le 30 Août 2017 10:41, édité 2 fois.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Est-ce possible ? (idée farfelue)

Message par boubouk50 » 30 Août 2017 10:37

Donc il te faudrait un algo de détection automatique de perspective depuis une image 2D... Ça me semble compliqué...
Tes clients feraient mieux de se payer une formation d'1 jour sur Photoshop à mon avis...

Sinon pour ce qui est de superposer des images, oui c'est réalisable mais encore, Photoshop / Gimp sont bien plus efficaces.

EDIT sur l'image
Dans ce cas, si c'est toi qui définit le fond, alors c'est autre chose. Tu peux recréer la scène en 3D dans Unity et placer les emplacement comme il faut. La perspective se mettra alors automatiquement en place.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Kazuma17
Messages : 33
Inscription : 29 Août 2017 15:56

Re: Est-ce possible ? (idée farfelue)

Message par Kazuma17 » 30 Août 2017 11:02

Désolé j'ai dû retirer l'image pour des problèmes de droit ..

Oui tu as bien saisi le problème, les images de fond ce sont nous qui allons les imposer, et le client viendra y incorporer ses propres visuels !

Content de savoir que c'est possible alors, même si ce sera du boulot ! :)

Tu m'a laissé deviner la procédure : On aurait des caméras fixes dans une vue 3D, et on pourrait passer de l'une à l'autre en un clic. A l'emplacement prévu on aurait une zone scriptée (Trigger ?) où le client pourrait déposer son image et on aurait alors un script de changement de texture pour ajouter son visuel. Effectivement il n'y aurait alors plus de problèmes pour la perspective ! Une fois satisfait le client aurait la possibilité d'exporter un screen de la caméra à l'aide d'un script ! cool !

Merci pour ton aide ! :)

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Est-ce possible ? (idée farfelue)

Message par boubouk50 » 30 Août 2017 11:46

Si vous travaillez dans un environnement 3D, alors tout est possible avec Unity.

Si vous travaillez sur des photos, alors ce sera à vous de recréer l'espace (placement caméra + objets)
Si vous travaillez sur des rendus 3D, alors vous pouvez faire un méga beau rendu, puis récupérer le setup de scène (caméra + emplacement des objets à éditer) et l'importer dans Unity. Tout sera donc bien en place.
Si vous êtes encore plus convaincus, je vous dirai pour le coup d'exporter toute la scène 3D (pré-rendu ou éclairage dynamique dans Unity) et de laisser le client se balader dans la scène en pouvant l'éditer.

Au début je pensais plutôt à des algos de traitement d'images, ce qui est possible mais vraiment pas adapté.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Kazuma17
Messages : 33
Inscription : 29 Août 2017 15:56

Re: Est-ce possible ? (idée farfelue)

Message par Kazuma17 » 30 Août 2017 13:58

Oui je pensais aussi partir sur des images fixes, mais finalement la scène 3D avec les caméras est une bien meilleure idée et bien plus simple !

On parle de clients qui ne sont pas forcément à l'aise avec l'informatique donc pour ce qui est de se balader dans la scène c'est une excellente idée mais peut-être pas adapté à tout le monde.. Nous allons commencer par les caméras fixes et si le temps nous le permet nous ferons aussi une version avec la scène libre ! :)

Kazuma17
Messages : 33
Inscription : 29 Août 2017 15:56

Re: Est-ce possible ? (idée farfelue)

Message par Kazuma17 » 10 Jan 2018 12:16

Salut, du nouveau sur le projet ! (et j'ai eu le temps de me former un peu plus sur Unity depuis le temps) :-D

Tous les supports sont en place avec Collider pour qu'au clic dessus un explorateur de fichier (trouvé sur l'Asset Store) s'ouvre, laissant la possibilité de choisir une image qui deviendra la texture du visuel SUR le support.

Pour chaque support, l'emplacement du visuel possède le tag "VISUEL", car la texture ne doit s'appliquer que sur une partie du gameObject et non sur son ensemble (prenons par exemple un cadre, la texture doit se placer DANS le cadre et non sur sa moulure).

J'ai testé avec un Debug.Log et le clic sur le bouton "importer" de mon explorateur de fichier me lance bien une fonction, celle qui dira à mon image importée de texturer un visuel. J'aurais besoin de votre aide pour écrire cette fonction... puis le projet sera terminé ! :super:

Il faut que je retranscrive en code : "L'image importée deviendra une texture, appliquée à l'objet sur lequel j'ai cliqué, et sur les mesh portant le tag "VISUEL".

J'ai dû mal à comprendre le code par rapport au texturing, mais je pense à quelque chose du genre "this.FindWithTag"VISUEL" pour ce qui est de l'appliquer au bon endroit, le script étant sur chaque GameObject cliquable.

Merci par avance ! ;-)

Répondre

Revenir vers « Discussion générale »