Jump to content

DEVBLOG : PRÉCISION DANS LA CONSTRUCTION ►►► Traduction ◄◄◄


Tekhamon

Recommended Posts

le lien ►

 

Dans la prochaine mise à jour 0.28 Panacea, nous présenterons l’outil de précision Vertex (VPT), qui ajoute une toute nouvelle façon d’apporter des détails à vos conceptions créatives.

 

Tout cela peut sembler assez complexe au début, mais une fois que vous vous habituez à l’outil, il est assez intuitif. Si vous vous êtes retenu parce que la voxelmancie semblait trop compliquée, c’est le moment d’essayer. En vous permettant d’équiper simplement le VPT et de déplacer le sommet sur une grille changeante, le processus de conception avec des voxels est grandement simplifié et beaucoup plus convivial.

 

Voici une brève démonstration de ce à quoi ressemble le VPT et comment il est utilisé:

 

 

La tête haute! Les informations contenues dans ce blog s’appuient fortement sur le côté extrêmement technique des choses. Ceux qui sont dans la voxelmancie plongeront probablement avec une joie sans entrave. Si la construction n’est pas votre confiture, vous voudrez peut-être vous arrêter ici et obtenir le TL;DR de l’un de vos amis constructeurs plus tard.

 

VOXELS DÉFINIS

 

Une grande partie de ce que vous voyez dans Dual Universe a été construite par des joueurs utilisant des voxels. Le terme « voxel » est très générique, une forme abrégée de « élément de volume ». Voxelmancy est une forme avancée de construction qui peut être assez complexe, et il y a toujours eu un écart entre la construction avec des formes géométriques standard et des conceptions affinées. Le VPT vise à apporter un pont révolutionnaire pour l’écart entre ces styles de construction.

 

La façon exacte dont les voxels sont implémentés dépend beaucoup du logiciel utilisé. En DU, un voxel contient deux choses : des informations sur le matériau et une information sur la position du sommet.

 

L’information matérielle est assez simple; c’est exactement la même chose que dans une image pixélisée où il y a un matériau (pensez-y comme un synonyme de « couleur ») pour chaque petit carré. Nous utilisons ce que nous appelons une grille uniforme, ce qui signifie que les voxels sont placés les uns à côté des autres dans une grille 3D et ont tous la même taille. Par exemple, sur une planète, les voxels mesurent 1 mètre de long (1 m x 1 m x 1 m) alors qu’ils peuvent mesurer 25 centimètres de long (0,25 m x 0,25 m x 0,25 m) sur une construction utilisateur. C’est exactement la façon dont les pixels fonctionnent dans les images 2D, et vous connaissez peut-être déjà ce genre de voxels car ils sont présents dans des jeux comme Minecraft.

 

POSITIONS DES SOMMETS

 

Creusons encore plus profondément dans le puits des choses techniques.

 

Comme indiqué ci-dessus, les voxels contiennent des informations sur le matériau et une information sur la position d’un sommet. L’outil de précision Vertex ne touche pas les matériaux, alors parlons des sommets.

 

La géométrie 3D est composée de sommets, et ces sommets sont liés entre eux pour former des faces qui seront rendues sur votre écran. Par exemple, prenez un simple cube de voxel. Il est composé d’un matériau, mais a huit sommets sur les huit coins. Puisque nos voxels en DU stockent à la fois un matériau et une position de sommet, notre « voxel unique » ici est composé de huit voxels car il faut huit sommets pour former un cube!

 

C’est là que ça commence à se compliquer. Nous pouvons considérer qu’il y a deux grilles de voxel, l’une est la grille matérielle et l’autre est la grille de position du sommet, et les deux grilles sont décalées, doubles l’une à l’autre. Il y a huit sommets autour d’un matériau, et il y a huit matériaux (nous pouvons considérer le vide comme un type spécial de matériau) autour d’un sommet.

 

Alors, de quoi parle-t-on quand on parle d’un voxel ? Un peu des deux, selon le contexte. Déroutant non? Nous allons essayer d’être précis et de parler de sommets, mais rappelez-vous qu’il n’y a qu’un seul sommet par voxel, bien qu’un cube de voxel soit composé de huit sommets (et donc est en réalité huit voxels: un avec matière et sept sans matière.)

 

Jetez un coup d’œil à cette photo. C’est en 2D car c’est plus facile à comprendre (et à dessiner), mais c’est la même chose en 3D. Cette image représente une sphère voxel (plus comme un cercle puisque nous sommes en 2D).

 

image5.png

 

Les lignes pointillées sont la grille uniforme qui représente les voxels. À l’intersection de ces lignes pointillées, vous pouvez avoir un point bleu, représentant un matériau. Nous avons donc notre grille matérielle : soit le vide, soit un matériau bleu. À l’intérieur de toutes ces cellules, il peut y avoir un sommet. Il y a un sommet si et seulement si les quatre coins ne sont pas les mêmes. Si l’un des coins est bleu et un autre vide, cela signifie que nous avons un changement de matériau ici et donc quelque chose à voir. Nous avons donc besoin d’un sommet pour savoir où nous voyons la surface. Sur chacune de ces cellules, nous avons un sommet représenté. Les sommets sont ensuite reliés entre eux pour former la surface.

 

POSITIONS VALEURS

 

Avant la mise à jour Panacea, vous ne pouviez obtenir une telle sphère qu’avec l’outil sphère, mais avec le VTP, vous aurez maintenant la possibilité de modifier manuellement la position du sommet. Cela soulève la question suivante: quel système de coordonnées utilisons-nous?

 

En théorie, nous pourrions utiliser une gamme infinie de valeurs. Par exemple, nous pourrions dire que le sommet devrait être à un tiers (sur un axe donné) entre les deux matériaux comme indiqué dans la grille, de sorte que sa valeur (sur cet axe) pourrait être 0,33333333333. Il pourrait également être 0,1415926535, ou ce que nous voulons.

 

Cependant, nous devons stocker ces positions de sommet, et nous voulons être efficaces afin de ne pas prendre trop d’utilisation du disque, nous encodons donc la position du sommet (sur un axe donné) sur un seul octet. Cela signifie que nous n’avons que 256 possibilités différentes pour une position de sommet, mais nous n’avons pas vraiment besoin de plus. Une position de sommet est une coordonnée avec trois nombres (pour les trois axes) où tous ces nombres sont des entiers (avec un maximum de 256 entiers différents possibles).

 

Alors, quelles sont ces valeurs possibles? Avant de répondre à cette question, nous devons considérer où un sommet peut se trouver. Sur le dessin de représentation de sphère, vous pouvez voir que les sommets sont à l’intérieur de la zone définie par les quatre points de matériau environnants. C’est en effet là qu’un sommet devrait être la plupart du temps, bien que nous puissions parfois vouloir déborder un peu, atteindre un peu plus loin que le sommet est censé le faire. Cela empiétera sur la zone du voxel voisin, mais cela ne doit pas être un problème. Nous avons décidé qu’un sommet pouvait se trouver sur sa seule zone, mais aussi sur la zone de ses voisins directs. Sur les schémas 2D ci-dessus, cela signifie qu’un sommet peut être placé n’importe où sur les neuf carrés qui l’entourent.

 

Un codage de sommet code en fait les positions de trois sommets. Nous voulons avoir un encodage pour toutes les positions importantes, le milieu de chacun des trois voxels et leurs frontières. Cela signifie que nous avons besoin d’un multiple de six. Nous utiliserons 252 car il est très proche de 256. Voyons maintenant ce système de coordonnées dans une image. L’image ci-dessous représente quatre cubes simples en voxels (jaune, rouge, bleu et cyan).

 

Nous parlerons du sommet partagé par les cubes rouge et bleu. Il y a en fait deux de ces sommets en 2D, un en haut et un en bas; parlons du top. Nous indiquons que la position dans laquelle il se trouve dans l’image sera 0 (c’est une convention, celle choisie dans l’outil Précision du sommet), et au-dessus des cubes, nous avons montré toutes les valeurs de position que ce sommet pourrait avoir

 

image1.png

 

Donc 0 est la position d’un sommet dans un simple cube voxel. Si nous déplaçons le sommet en position 42 (le sommet supérieur et inférieur de cette jonction rouge-bleu), le rectangle rouge sera maintenant 1,5 fois plus grand et le rectangle bleu sera la moitié de sa taille actuelle. Si nous déplaçons les sommets à -42, ce serait l’inverse. Notez que toutes les valeurs comprises entre -42 et 42 sont les valeurs où le sommet est censé être sans débordement. C’est la zone que nous avons décrite précédemment.

 

Si nous devions déplacer les sommets à la valeur 84, alors nous entrerions dans le territoire du sommet partagé par les cubes bleu et cyan. Cela devient un peu dangereux et pourrait entraîner des résultats étranges. Dans cet exemple, cela conduirait à ce que la surface bleue disparaisse complètement et soit remplacée par la surface rouge. Le voxel bleu existerait toujours, il aurait juste un volume nul.

 

Et, dans l’exemple de ces quatre cubes, si nous devions aller à une valeur supérieure à 84, il en résulterait une forme mal formée car la forme bleue aurait un volume négatif. Cela créerait probablement des artefacts visuels, et nous pourrions éviter cette situation à l’avenir.

 

MODIFICATION DE L’ENCODAGE

 

Une dernière note pour ceux qui sont familiers avec la voxelmancie. Dans Panacea, nous utilisons un encodage de 253 positions (de -126 à 126), ce qui est différent de ce qu’il a été. Nous avons utilisé un encodage de 255 positions (c’était de -128 à 128 mais précédent -128 = réel -126). Comme il n’y a pas de mappage exact entre l’ancien codage et le nouveau, cela signifie que les sommets de vos constructions peuvent être décalés jusqu’à 1 mm (les sommets à la position 0 ne bougeront pas, mais ceux aux valeurs extrêmes se déplaceront le plus). Ce sera probablement imperceptible, mais nous voulions pécher par excès de prudence et partager cette information.

 

Vous vous demandez peut-être pourquoi 253? C’est pour les raisons expliquées précédemment, d’avoir ces belles valeurs -126, -84, -42, 0, 42, 84 et 126. Le système 255 ne le permettait pas. Nous aurions pu choisir 193, de sorte que vous puissiez diviser un voxel en 2, 4, 8, 16, 32 et 64, mais cela aurait signifié une énorme perte de précision et déformé considérablement la plupart des constructions. Donc 253 c’est, et vous pouvez maintenant diviser un voxel en 42!

 

UTILISATION DU VPT

 

Il y a exactement 253 positions sur un seul axe, y compris zéro, dans lesquelles un sommet peut se trouver car il est divisible sur trois voxels. Négatif 126, 0 et positif 126. En tant que tel, la largeur d’un voxel est exactement de 84 positions. Et chaque sommet peut être déplacé exactement à 1,5 voxel de la position centrale.

 

Ainsi, la grille sur laquelle un sommet est déplacé est réglable à une taille qui couvre 1, 2, 4, 7, 14, 21 ou 42 positions, 42 étant la taille d’un demi-voxel. Cela permet un placement précis dans les moindres détails ou de monter rapidement à l’échelle et de déplacer un sommet d’une moitié, d’un quart, d’un sixième ou d’un douzième de voxel.

 

Voir l’image ci-dessous pour avoir une idée des différentes grilles de taille disponibles pour le VPT.

 

image2.png

 

Une fois sélectionné, le curseur de sommet peut ensuite être déplacé avec :

  • Les touches flèche haut, bas, flèche gauche et flèche droite pour les axes x et y.

  • Page vers le haut et Page vers le bas pour l’axe z.

  • Touche Accueil pour envoyer le curseur à la position actuelle du sommet.

  • Touche Fin pour envoyer votre curseur aux dernières coordonnées confirmées.
    (Cela se produit également par défaut lorsque vous modifiez les sommets.)

  • Combinaison de touches Alt+Accueil pour envoyer le curseur aux coordonnées 0,0,0 centrées.

  • Maintenez la touche Ctrl+Défilement enfoncée pour ajuster la taille de la grille entre les tailles disponibles.

  • Un clic gauche confirme le placement et déplace le sommet sélectionné vers le curseur.

 

Le VPT vous donnera la plus grande précision possible, pas plus de voxelmancy complexe de copier-coller des choses autour pour obtenir une forme spécifique. Vous n’utiliserez peut-être pas cet outil tout le temps, mais lorsque vous le ferez, vous le trouverez exceptionnellement utile pour affiner le réglage.

 

OUF, C’EST BEAUCOUP D’INFOS!

 

Toujours avec nous? Nous savons qu’il y a beaucoup d’informations à traiter, mais nous avons estimé qu’il valait la peine de partager les détails avec les membres de notre communauté voxelating qui apprécieraient de voir comment la saucisse est fabriquée (pour ainsi dire).

 

Nous sommes impatients de voir les nouvelles choses cool que Noveans construit avec l’outil de précision Vertex. Comme toujours, nous encourageons tout le monde à se joindre à la conversation sur le forum dans ce fil de discussion. Si vous avez des questions sur le VPT ou si vous souhaitez partager vos réflexions et vos conseils sur la voxelmancie en général, c’est l’endroit où aller.

Edited by Tekhamon
Link to comment
Share on other sites

  • Tekhamon changed the title to DEVBLOG : PRÉCISION DANS LA CONSTRUCTION ►►► Traduction ◄◄◄

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...