Partage
  • Partager sur Facebook
  • Partager sur Twitter

Unity 3D - Bordure de GameObjects

    30 août 2019 à 12:01:50

    Mesdames, messieurs, bonjour. Je fais encore une fois appel à vous pour m'aider dans mon projet Unity. Pour vous expliquer, j'ai créé des gameobjects de forme tout à fait complexes grâce à ProBuilder. Or, pour les différencier les uns des autres, je souhaite faire apparaître des bordures sur les faces de ces objets, mais qui s'adaptent à leur forme. Merci!

    • Partager sur Facebook
    • Partager sur Twitter
      30 août 2019 à 20:41:46

      Bonjour, quelque chose ceci ?

      https://github.com/Shrimpey/Outlined-Diffuse-Shader-Fixed

      Pour retrouver d'autres types de Shader de ce style, il suffit de recherche "Unity Outline Shader" sur internet.

      -
      Edité par coukil 30 août 2019 à 20:44:30

      • Partager sur Facebook
      • Partager sur Twitter
        30 août 2019 à 23:14:21

        Oh! bonjour, cher M./Mme. Coukil! Je suis content de vous revoir :) . Merci pour ces Shaders, mais le problème est que les bordures des objets sont autour de l'objet, et non sur la surface de l'objet, comme je le voudrais. Car le problème, vu que vous connaissez déjà mon projet, mes fiefs sont collés les uns aux autres, ce qui fait que ce genre de bordures apparaissent bugée... Auriez-vous une solution?

        • Partager sur Facebook
        • Partager sur Twitter
          31 août 2019 à 18:01:49

          Je ne vois pas exactement ce que vous voulez faire.

          De facon générale je pense que cela peut se faire avec un Shader, mais comme je ne m'y connais pas beaucoup dans ce domaine et que je pense qu'il existe des moyens plus facilement réalisable. Il serait de plus utile de donner une image du résultat final espéré.

          De plus quelques précision seraient utiles, par exemple quels sont les mesh crée grace à probuilder ? Je suppose que ce sont les fiefs mais pas sûr.

          Est ce qu'il y a plusieurs faces de chaque Mesh à assigner une bordure ou plusieurs faces d'un Mesh ?

          Est ce qu'il ne serait pas plus simple de le faire en 2D avec simplement une image ?

          Est ce qu'il ne serait pas mieu de faire le Mesh sous blender (Il est plus facile de réaliser du UV Mapping ou d'assigner des textures à des faces avec Blender qu'avec ProBuilder) ?

          Pensez à rechercher en anglais sur google ces types de probleme, la communautée de Unity est assez grande et il y a généralement pas mal de réponses.

          -
          Edité par coukil 31 août 2019 à 18:08:25

          • Partager sur Facebook
          • Partager sur Twitter
            31 août 2019 à 19:35:20

            Alors, oui, les GameObjects en question sont bel et bien les fameux fiefs. Ils ont donc une forme tout-à-fait irrégulière. Les faires sur Blender ne poserais pas de problème majeur si ils n'y avait pas des centaines de fiefs à faire. Or, les faire sur Blender, les transférer vers Unity, bien les placer sur la carte me semble être une tâche plus que fastidieuse, qu'il est bien plus facile de faire directement sous Unity. Les faire en 2D semblerait aussi faciliter la création du jeu, mais je voudrais vraiment le faire en 3D, pour pouvoir le rendre plus vivant grâce à des modèles 3D, pouvoir incliner la caméra, etc... Mais, vous avez parlé de UV Mapping: il semble que je puisse influer sur l'UV mapping de ces objets avec ProBuilder. Cela pourrait-il résoudre mon problème? Merci!

            • Partager sur Facebook
            • Partager sur Twitter
              1 septembre 2019 à 14:18:49

              L'une des solutions serait d'assigner des UV à ton mesh.

              La forme de l'objet 3D est défini par le Mesh assigné au composant MeshFilter.

              Ce mesh contient plusieurs informations :

              • vertices : cotés du Mesh, par exemple un cube en aura 8.

              https://i.stack.imgur.com/FnUbu.png

              • triangles : ensemble de vertices permettant de désigner une face. Unity considere qu'une face est un ensemble de 3 vertices. Par contre je ne sais pas comment il gere lorsqu'on importe des faces ayant plus que 3 vertices.

              https://answers.unity.com/storage/temp/82465-first.jpg

              • normals : determine le coté vers lequel les triangles (face) font face. Lorsque par exemple on rentre dans un batiment dans un jeu alors qu'on ne devrait pas, on peut voir l'exterieur comme si il n'y avait pas de mur, alors que depuis l'exterieur, on voit les murs.

              https://i.stack.imgur.com/7yuyq.png

              https://i.ytimg.com/vi/NWbDTQdj0gk/hqdefault.jpg Exemple les normals du sol sont vers le haut, quand on est en dessous, on ne voit donc plus le sol.

              • uv : determine la position sur la texture du material sur lequel le vertice est positionné.

              Pour ce qui est de modifier l'uv mapping de votre mesh via un code, c'est une tâche très complexe et longue. Je déconseillerais de le faire vu la difficultée de la tache.

              Toutefois je suppose qu'il doit être possible de le faire avec quelques clics avec ProBuilder, je vous conseillerais de regarder des tutoriels en esperant trouver un passage ou ils en parlent. Par exemple :

              https://www.youtube.com/watch?v=m085rEQmVP8

              Si l'on cherche les bonnes choses sur google on peut avoir beaucoup d'informations pour résoudre ce probleme : "unity color face probuilder"

              -
              Edité par coukil 1 septembre 2019 à 14:21:40

              • Partager sur Facebook
              • Partager sur Twitter

              Unity 3D - Bordure de GameObjects

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown