Transcription
1. Intro nœuds de géométrie de Blender pour les débutants – Générateur de bridge procédural: Salut, voilà. Je suis Vadim
de Fred Tutor Bienvenue sur le générateur de
ponts
procéduraux de Blender
Geometer Notes pour débutants Dans ce cours, vous
apprendrez à concevoir
et à créer des ponts
procéduraux personnalisés qui peuvent être simplement ajustés et façonnés selon
vos préférences à l'aide du
puissant système de nœuds Geometer de Blender puissant système de nœuds Geometer Que vous débutiez avec les nœuds
Blenders Geometri ou que vous ayez déjà de l'expérience, ce cours vous
guidera tout au long du processus de création de
ponts à partir Nous allons détailler les étapes
pour le rendre facile et agréable, concentrant sur la façon de dessiner
des profils de pont, ajuster les paramètres
pour des formes personnalisées et de contrôler divers éléments de
conception pour créer des résultats
dynamiques époustouflants. Nous commencerons par aborder
l'essentiel, le fonctionnement des nœuds
de géométrie et la manière dont nous pouvons utiliser les outils de courbe pour créer des structures
procédurales. Dès le début, vous serez habitué à dessiner des profils de
pont et à ajouter entrées
clés pour des
éléments tels que les commandes de hauteur, de
largeur et de garde-corps À la fin de cette section, vous serez bien équipé pour façonner vos ponts
exactement comme vous le souhaitez. Dans ce cours, vous
apprendrez à
ajouter des détails complexes à vos ponts, qu'
il s'agisse de courbes abruptes ou d' effets de
déplacement, pour créer des formes
réalistes et plus dynamiques Nous verrons également comment
introduire des éléments personnalisables
tels que des trous dans le pont pour plus de réalisme
ou de stylisation Ces fonctionnalités sont essentielles pour créer
des ponts non seulement esthétiques, mais également fonctionnels dans divers environnements libres. Une fois que nous aurons abordé les bases, nous aborderons des fonctionnalités plus
avancées telles que les UV et l'emballage, ajout de matériaux
et même la création chemins
en pierre pour améliorer l'apparence
générale de votre pont. Vous apprendrez à
aligner les pierres sur les courbes et à personnaliser leur apparence en du
style unique de votre scène. Nous avons conçu ce
cours pour qu'il soit efficace, afin que vous puissiez créer des ponts de qualité
professionnelle sans tracas Grâce à des entrées faciles à utiliser
et à des nœuds prédéfinis, vous gagnerez du temps tout en
conservant un contrôle créatif total Ces techniques
vous aideront à rationaliser votre flux de travail, ce qui vous permettra de vous concentrer davantage sur le
côté artistique de votre scène. À la fin de ce cours, vous aurez les
compétences nécessaires pour créer des ponts procéduraux
personnalisés la fois fonctionnels
et esthétiques. Que vous travailliez sur un jeu stylisé ou sur des scènes libres
réalistes, les outils et techniques
que vous allez acquérir ici amélioreront designs.
Ne ratez pas cette occasion. Inscrivez-vous à notre cours dès aujourd'hui et exploitez le
potentiel des barres géométriques
blanchies pour transformer vos
idées créatives en réalité Commençons par construire
des ponts qui relieront vos
mondes libérés.
2. Introduction au pont courbe: Bonjour et bienvenue dans le cours
d'introduction au
pont procédural de Blenders Dans cette leçon, nous
allons passer les
différentes étapes de
création de la configuration, quoi
ressemblera notre configuration à la fin de ce cours et quelles
fonctionnalités contiendra-t-elle ? Notre configuration est basée sur la courbe. Donc, si je passe en mode édition, vous pouvez voir qu'il existe une simple courbe
BZR sur laquelle elle est basée Si je déplace,
par exemple, ce point, vous pouvez voir que
la courbe a
changé de forme en fonction de
la forme de la courbe. Passons en revue
tous les paramètres que comportera cette configuration à
la fin de ce cours. Il y a donc d'abord
les paramètres généraux du pont. Vous pouvez définir la largeur, la
hauteur du matériau et d'autres éléments. Le plus important ici est
la largeur et la hauteur. Ainsi, si, par exemple, je
change la largeur à cinq, vous pouvez voir que la largeur
du pont passe à
cinq et nous pouvons également définir, par
exemple, la hauteur à deux, ce qui élève le pont entier Ensuite, il y a cette section
de balustrade,
qui, dans notre configuration,
désigne ces pièces ici Vous pouvez donc définir leur
largeur et leur hauteur, les activer et les désactiver. Ainsi, par exemple, si
je définis la largeur sur 0,5, ils changent leur largeur
sur 0,5 et, par exemple, hauteur sur un, vous pouvez voir
que cela change complètement. Ensuite, notre configuration
contiendra également des briques. Voici donc les briques
noires que vous pouvez voir le long des
rambardes et aussi
autour des trous Vous pouvez définir tous ces
paramètres. Je ne vais pas les
passer en revue individuellement pour le moment, mais vous pouvez définir
leurs dimensions, leurs
écarts, leur arrondissement, etc. Le pont peut également
comporter des trous, vous pouvez
donc
les activer ou les désactiver. Et vous pouvez également choisir
l'objet que vous souhaitez
utiliser pour créer des trous à
l'intérieur de notre pont. Ensuite, il y a des réglages pour les
briques autour des trous. Ce sont donc
essentiellement les mêmes que les réglages des
briques le long des rails. Et la dernière chose qui se trouve ici sont les réglages
des briques elles-mêmes. Vous pouvez donc définir leur biseau de
subdivision et certains
paramètres de déplacement ici. Passons maintenant en revue
quelques idées de base que nous utiliserons
tout au long de ce cours. Ainsi, la forme
de base de ce pont est en fait créée simplement
avec un profil simple, c'
est-à-dire
un profil avec cette forme, puis il est balayé
le long de la courbe de base C'est ainsi que nous créons
cette forme de base, puis nous la déplaçons
un peu pour obtenir cette jolie forme arrondie surélevée au milieu La prochaine chose qui se trouve ici, ce sont les trous à l'intérieur du pont. Il ne s'agit essentiellement que de
cinq cylindres. Dans ce cas, cinq
cylindres sont répartis le long la courbe de base puis
soustraits du maillage du pont La dernière partie concerne
les briques, qui feront l'objet de
leçons distinctes,
et nous allons essentiellement
créer une méthode procédurale pour et nous allons essentiellement
créer une méthode procédurale pour générer ces briques le long de
n'importe quelle courbe que vous leur donnez, puis nous allons simplement donner la configuration de ces courbes
le long des balustrades et également des
courbes autour des trous, et cela générera ces
belles briques sur notre pont
3. Créer le profil de pont: Bonjour. Bienvenue dans le cours de bridge
procédural de Blenders, dans lequel nous allons créer
une forme de profil notre pont et ajouter des paramètres
pour un contrôle global Voici donc une
nouvelle scène de mixeur, et la première chose que je vais faire est
de tout supprimer Je vais
donc appuyer sur A pour tout
sélectionner dans
notre scène et sur X pour supprimer. Et je vais créer mon objet de courbe sur lequel je vais
construire ma configuration. Donc, déplacez la courbe A et
je sélectionnerai Bézier. Je vais le renommer ici en bridge. Et je vais également créer une
meilleure forme pour notre pont. Je vais donc passer en mode édition avec
onglet, supprimer tous les sommets, sélectionner cette option de dessin ici et
dessiner une forme de base par le
haut, donc quelque chose comme ça Maintenant, nous pouvons commencer à
travailler sur notre pont. Je vais accéder à Geometry
nodes Tap et créer un nouveau modificateur de nœud géométrique
en appuyant sur ce nouveau bouton, et je vais le renommer en
Curve Bridge La première chose sur laquelle nous allons
travailler est donc le
profil de notre pont. Notre profil sera
essentiellement composé de trois rectangles, un pour le maillage de base et deux petits rectangles pour la balustrade,
quelque chose Et c'est ce que nous
allons créer maintenant. Donc, d'abord, je vais ajouter quelques
périmètres à notre saisie de groupe. Nous voudrons contrôler
la hauteur de ce rectangle principal, nous pouvons appeler simplement hauteur, largeur de ce rectangle
sera la largeur, et les dimensions de ces petits
rectangles destinés aux balustrades peuvent être quelque chose
comme
la largeur et la hauteur du rail Nous pouvons donc cliquer pour faire apparaître
ce menu sur le côté droit. Et je vais ajouter un nouveau périmètre
ici avec le bouton plus, saisie
assise, et le
premier sera la largeur. Nous pouvons en fixer le minimum à zéro et laisser le
maximum à l'infini. Nous pouvons le dupliquer pour la
hauteur et simplement le nommer. Nous allons également créer deux autres périmètres pour la longueur et la
hauteur du rail Je vais donc à nouveau dupliquer la
hauteur et la renommer en Railwth, puis la dupliquer une fois de
plus et l'appeler
hauteur du rail Vous pouvez également définir des valeurs
par défaut pour eux. Donc, pour la largeur, nous pouvons définir par défaut une, même valeur pour la hauteur. Et pour le garde-corps, nous pouvons définir
quelque chose comme 0,1 et 0,1. Maintenant, lorsque nos
paramètres sont prêts, nous pouvons également les configurer
réellement dans notre configuration. Donc, si nous allons
appuyer sur le modificateur et sur notre entrée, nous pouvons revenir en arrière pour définir ou réinitialiser cette valeur à la valeur
par défaut comme ceci Ensuite, nous pouvons revenir
aux notes de géométrie. Pour créer un rectangle simple, nous pouvons ajouter un nouveau
décalage QuadriLLT A et taper ce nom Et pour le rectangle de base, nous voulons que sa largeur soit notre largeur et que la hauteur
soit, désolé, la hauteur. Et maintenant, si nous maintenons la touche
Shift enfoncée et que nous cliquons avec le bouton gauche , nous nous
assurons que l'addon
angulaire du nœud est installé, vous pouvez voir que nous avons ce simple rectangle, nous
voulons nous assurer que le pivot de nos rectangles se trouve ici, ici parce que c'
est là que nous voulons que se réellement la courbe parce que nous allons balayer ce profil le
long de la courbe, qui sera quelque chose
comme ça. Et si le point
de pivot se trouvait au milieu
de ce rectangle, il balaierait la
courbe comme ceci,
et ce n'est pas ce que nous voulons. Nous devons donc déplacer
ce rectangle pour que ce bord de base soit
ici à ce niveau. Pour ce faire, nous pouvons
ajouter un nœud de position défini, qui changera la position de notre rectangle et nous
voudrons changer la valeur Y. Pour cela, nous pouvons ajouter
un nœud XYZ combiné. Et maintenant, si nous associons la
hauteur à notre Y, vous pouvez voir qu'elle augmente
sur l'axe y en fonction de la hauteur, mais nous n'en voulons que la moitié Nous pouvons
donc multiplier
cette hauteur par
0,5 en ajoutant
un nœud de méthamphétamine La valeur par défaut est 0,5. Ensuite, si nous intégrons le
résultat à la combinaison XYZ, nous l'alignons parfaitement sur
le point de pivot du maillage Maintenant, si je passe à ma vue
de base et que je modifie dimensions de mon
rectangle ou de mon pont, vous pouvez voir qu'il
reste toujours là au point de pivot. Maintenant, ajoutons
les rectangles restants quelque part ici. Pour cela, nous allons
créer un simple rectangle. Nous pouvons dupliquer ce nœud avec Shift D et simplement saisir
des valeurs différentes pour celui-ci. Donc, pour celui-ci, nous
utiliserons la
largeur et la hauteur du rail. Et si je le regarde avec l'
ancien bouton gauche de la souris, vous pouvez voir que
nous n'avons que ce petit rectangle en bas. Nous devons maintenant le positionner de manière à
ce qu'il soit quelque part ici dans notre rectangle d'origine. Donc, pour cela, nous allons également
prendre note de la position définie. Et notre rectangle
était quelque part ici. Donc, la première chose à faire est de le déplacer sur l'axe X pour qu'il soit quelque
part ici. Et nous obtenons cette valeur en utilisant la largeur de ce rectangle qui déplacera notre rectangle ici,
puis le redéplacera vers la gauche de la moitié de
notre rectangle de rail. Alors d'abord, ajoutons combine XYZ. Branchez-le pour le décaler, et nous
allons changer l'axe X. Donc, d'abord, prenons la largeur
de notre grand rectangle multiplions-le par 0,5
et branchons-le sur l'axe X. Si nous le voyons, vous
pouvez voir qu'il se trouve dans le coin inférieur droit
de notre grand rectangle. Nous devons donc le
reculer de moitié. Soustrayons donc la moitié de notre
largeur de rail de cette valeur. Je vais donc soustraire
et multiplier largeur du
rail par 0,5 et l'intégrer
à la soustraction Et maintenant, ces deux rectangles
devraient être alignés sur l'axe X. Vous pouvez donc voir que si
je passe de l'un à l'autre, ils sont tous les deux alignés
sur l'axe X, et maintenant nous devons
déterminer l'axe Y. Sur l'axe Y, ce
sera assez similaire. Nous devons le déplacer de la
hauteur du grand rectangle. Donc je vais juste le rendre
un peu plus sympa. prendrons la hauteur de notre
rectangle et le brancherons sur Y. Cela déplacera notre
petit rectangle Si je
les assemble, vous pouvez voir que c'est
presque au bon endroit, mais nous devons le déplacer de la moitié du petit rectangle. Ajoutons donc également la hauteur du
rail multipliée par 0,5 et
ajoutons-la à la hauteur d'origine. Et maintenant, si je le branche
sur l'axe Y, vous pouvez voir que ces
rectangles sont beaux. Donc, pour résumer, nous avons commencé avec un petit rectangle ici et nous l'avons déplacé sur l'axe X en fonction de la largeur du grand rectangle moins la largeur du petit
rectangle divisée par deux. Et sur l'axe Y, nous avons
pris la hauteur
du grand rectangle et ajouté la moitié de la hauteur
du petit rectangle. Ce sont donc les
calculs dont nous avions besoin pour positionner
notre petit rectangle dans cette belle position. Et maintenant, nous pouvons le faire
pour le contraire,
mais une approche beaucoup plus simple
consiste à utiliser le nœud de transformation et à redimensionner ce rectangle
sur l'axe X de moins un. Si j'ajoute une corde de transformation ou géométrie de
transformation et
que je l'ajoute à la géométrie de mon joint, vous pouvez voir que si
je change la valeur de X, elle commence à atteindre le milieu Donc, si c'est zéro, c'est en fait
ici, le xx est sur zéro. Mais si je l'
étends à moins un, vous verrez qu'il est
bien aligné sur le coin opposé de
ce grand rectangle. Voyons maintenant comment fonctionne notre
configuration en ce moment. Nous pouvons modifier la hauteur
de notre pont, sa largeur, ainsi que les dimensions des balustrades, et vous pouvez voir qu'
il change bien ensemble sans aucun problème
4. Façonner la courbe de pont: Bonjour. Bienvenue dans le cours Blenders
Procedural Bridge Dans cette leçon, nous allons créer une forme de base de notre pont à partir de la forme du profil que
nous avons créée dans la leçon précédente. Nous ajouterons également un déplacement afin que le pont ait une forme
plus intéressante. Donc, actuellement, notre profil
ressemble à ceci. Et maintenant, faisons-le glisser
le long notre courbe de base pour obtenir
le maillage de base du pont Nous avons donc ici la configuration que nous avons créée dans la leçon précédente. Nous pouvons même rendre les choses plus agréables en encadrant
toutes ces notes Nous pouvons donc tous les sélectionner, appuyer sur Ctrl J et F deux
pour renommer ce cadre. Nous pouvons l'appeler,
par exemple, profil. Et maintenant, créons le maillage de
base de notre pont. Grâce à cela, nous pouvons ajouter
une courbe au nœud de maillage, ce qui créera un
maillage à partir de notre courbe. Et ce nœud possède deux entrées. première est la courbe le long de laquelle nous voulons
balayer l'autre courbe, et la courbe de profil est celle qui sera
balayée
le long de la La courbe de profil
sera donc cette ailette que nous avons
créée dans la leçon précédente, et la courbe de base sera courbe obtenue
à partir de l'entrée du groupe ou essentiellement cette courbe créée par l'utilisateur. Prenons donc l'entrée du groupe et la géométrie à partir de cela
et intégrons-les à la courbe. Et maintenant, si nous examinons le résultat de cette
courbe en nœud de maillage, vous pouvez voir que nous avons
quelque chose qui ressemble presque à ce
que nous avons créé. Mais d'abord, on
dirait que c'est inversé. C'est donc la première chose
que nous devons corriger. De plus, les nuances sont
déplacées par défaut, nous allons
donc désactiver cette fonctionnalité. Donc, tout d'abord, désactivons le déplacement des nuances afin d'ajouter des nuances définies en douceur, ajoutons-le après la
courbe au nœud de maillage, et nous pouvons désactiver
ce chéquier, qui désactivera le déplacement des
nuances. Maintenant, nous pouvons voir que nous pouvons bien voir la
géométrie de notre maillage, et retournons-le également Je vais donc ajouter une géométrie de transformation, et nous n'aurons qu'à la redimensionner. Je pense que c'est l'axe Y, donc c'est
dans la bonne direction, et nous allons régler l'échelle
sur YxS deux moins un Vous pouvez maintenant voir que
notre pont incurvé a une forme
très basique, et nous pouvons également vérifier ses
bouchons de remplissage afin obtenir la géométrie à l'
extrémité du pont. Et maintenant, si, par exemple, je modifie la courbe ou si je déplace simplement
les points ailleurs, vous pouvez voir que le maillage réagit à ces changements
et qu'il fonctionne bien. Vous pouvez également voir que si je
déplace ce point vers le haut, ce pont pivote
et cela peut poser problème Nous pouvons donc résoudre ce problème en
réglant les normales de notre
courbe sur l'axe Z. Pour ce faire, nous pouvons ajouter le nœud normal de la courbe
définie, qui ajoutera ou
modifiera les normales de notre courbe La raison pour laquelle nous devons
changer cela est que la rotation de
ces courbes balayées dépend des normales Donc, actuellement, les normales ressemblent
probablement à ceci, et nous voulons qu'elles ressemblent
à ceci, afin qu'elles pointent vers le haut
vers l'axe Z. C'est donc exactement ce que nous pouvons faire avec la courbe définie normale. Je vais donc le brancher avant le
maillage de la courbe et après la
géométrie d'entrée et le régler sur ZA. Et maintenant, vous pouvez voir
que notre problème est résolu et que notre pont
n'est plus pivoté. Je vais changer
la position de notre point par rapport au plan du sol, mais vous pouvez voir qu'
il n'y a aucun problème avec les points qui ne se trouvent pas sur un seul plan. Maintenant, la prochaine chose que
vous voudriez contrôler est de surélever le
milieu du pont, pour qu'il ressemble à ceci La première chose que nous
devons faire est déterminer quelles parties du pont nous
aimerions déplacer Donc, si nous examinons le
profil de notre pont, nous voulons que ces deux sommets
inférieurs
restent à leur position actuelle, et nous voulons déplacer tous
ces sommets sur Ainsi, pour les
différencier, nous pouvons créer une sélection
qui
ne sélectionnera que les points supérieurs et
exclura les points inférieurs. Nous pouvons le faire avant de
créer notre maillage. Créons donc un
nouvel attribut qui nous
indiquera si ce
sont les points que nous
voulons déplacer ou non. Ajoutons donc l'attribut Stern. Et nous appellerons
cet attribut top. Par exemple, son type de données
serait du harcèlement parce qu'il est
simplement vrai ou faux Et nous allons maintenant
en déterminer la valeur. La géométrie d'entrée
sera notre profil, et nous en
reconnecterons la sortie à la transformation et
à la façon de différencier
ces points. Nous pouvons, par
exemple, utiliser la
position et nous pouvons voir que la position sur Y en excédent
de ces points est nulle, et pour ces points, c'est quelque chose de supérieur à zéro. Nous pouvons donc les
différencier avec ceci. Nous pouvons ajouter un nœud de position, séparer pour n'obtenir la valeur Y et nous pouvons dire que s'il est
supérieur à zéro, ce sera notre point le plus élevé, nous pouvons
donc intégrer le
résultat à la valeur. Et si c'est zéro, cela signifie qu'il n'est pas
supérieur à zéro, et ce sera faux pour
les sommets inférieurs Nous pouvons afficher cette valeur en
utilisant Control
Shift pour accéder au visualiseur, et je peux également cliquer avec le bouton gauche de la souris sur notre valeur, et vous pouvez voir que sont blanches et celles
du bas sont noires, ce
qui signifie que la
valeur supérieure de celle-ci est zéro, et la valeur de celle-ci est un. Ce sont donc les
valeurs qui
seront stockées ici dans
l'attribut name, et nous pourrons les utiliser après avoir créé notre maillage de base pour
déplacer les parties supérieures Pour les déplacer, nous pouvons
ajouter un nœud de position défini. Et pour la
sélection, nous pouvons utiliser notre attribut que nous avons
créé précédemment. Nous allons le sélectionner ici et ajouter l'attribut à
la sélection. Et maintenant, si je déplace
la valeur sur Zaxs, vous pouvez voir que seules les
parties supérieures du pont sont déplacées et que la partie inférieure
reste à leur position Nous ne voulons pas seulement
déplacer ces points
à valeur constante, mais nous voulons que la
valeur passe de zéro à une certaine hauteur,
puis revenir à zéro. Nous pouvons obtenir cette forme
en utilisant, par exemple, sinus ou le cosinus ou d'
autres fonctions, mais nous nous en tiendrons au sinus Et cela signifie que
nous voulons une valeur qui passera de zéro à Pi, où si nous prenons le sinus, cela ressemble à ceci. Et voici zéro, ici c'est Pi, et nous allons utiliser cette courbe pour créer ce
type de forme de pont. Pour créer cette valeur
entre zéro et Pi, nous pouvons utiliser le périmètre de notre courbe de base pour le
déterminer. Nous ne pouvons pas utiliser un
périmètre de rotation ici sans le
capturer avant de créer le maillage, car à ce stade, nous ne travaillons plus avec
la courbe, mais
avec le maillage. Pour obtenir le périmètre de la spline, nous pouvons le capturer ici avant de convertir
notre courbe en maillage Je vais donc aborder l'attribut de capture, et nous allons capturer un
facteur à partir du périmètre de la spline Donc, si vous ajoutez le
nœud périmétrique de la colonne vertébrale et le facteur de connexion
à la valeur, nous pouvons à nouveau utiliser
Viewer, donc control shift. Et nous allons sélectionner un maillage d'une courbe à l'autre et attribut à partir de l'attribut
scripturaire, vous pouvez le voir ici à zéro, et ici il en est actuellement un. Mais si on le multiplie par Pi, on obtient zéro à Pi. Alors faisons-le d'abord. Nous allons multiplier, et
vous pouvez taper Pi ici, ce qui donne une valeur Pi. Et maintenant, si nous examinons cette valeur, vous pouvez voir qu'elle est
comprise entre zéro et blanc, mais elle est blanche quelque part ici. Cela signifie donc que ce sont des valeurs supérieures à
un, à savoir le Pi. Alors maintenant,
créons une fonction à partir de celui-ci. Nous pouvons utiliser le signe. Grâce à ça. Et si nous connectons maintenant cette valeur au
circuit Z de ce décalage, nous allons
donc utiliser la combinaison XYZ et connecter le résultat de ce
sinus à l'axe Z, vous pouvez voir qu'
elle passe de zéro à un certain décalage au milieu,
puis de nouveau à zéro Nous pouvons augmenter ce
déplacement en
multipliant ce
péché par une certaine valeur Multiplions donc entre
sinus et combinons XYZ. Et si nous le multiplions
par une valeur, vous pouvez voir qu'
il augmente Et aussi pour le rendre
un peu plus net, nous pouvons utiliser la puissance ici, qui, par défaut,
ressemble à ceci Mais si nous utilisons le sinus carré, cela ressemblera davantage
à ceci Donc, si j'ajoute de la puissance ici
entre le sinus et la multiplication, vous pouvez voir que si j'
augmente la puissance, elle reste à
zéro un peu plus longtemps, puis
passe rapidement à
celle du milieu Il s'agit donc d'autres contrôles
que nous pouvons utiliser. Et je créerais en fait des paramètres qui
contrôleront toutes ces valeurs. Donc, ce que nous voudrons
contrôler, c'est cette puissance, qui en est la forme, puis le
multiplicateur, qui est le déplacement
sur ces Z x. Je vais donc appuyer sur fin pour afficher ce menu et créer une nouvelle entrée appelée hauteur de déplacement et un autre attribut appelé puissance de déplacement. Nous pouvons définir des
valeurs par défaut pour eux. Ainsi, la hauteur de déplacement peut être par défaut de deux, par exemple, et la valeur minimale de zéro, et la puissance de déplacement peut être définie par défaut sur un et le
minimum également sur zéro. Et la dernière chose que
nous devons faire est de connecter ces entrées à ces nœuds. Je vais donc associer la hauteur de
déplacement à ce multiplicateur et la
puissance de déplacement à la puissance. Maintenant, si je rétablis ces valeurs par
défaut et que j'
augmente peut-être un peu la puissance, vous pouvez voir que nous pouvons contrôler forme
générale de notre pont Une dernière chose que nous pouvons
également faire est de
nettoyer un peu ces notes. Je vais donc d'abord regrouper quatre de
ces quatre nœuds et l'appeler sélection supérieure, car nous sélectionnons les
sommets supérieurs dans cette partie Voici le nœud de transformation qui corrige le profil inversé Nous pouvons appeler cela le déplacement d'
une pièce. Donc, contrôlez également J et F
pour renommer ce cadre. Et ces nœuds situés au milieu sont appelés facteur de
courbe parce que facteur de
courbe parce que
nous capturons le
facteur d'origine de notre courbe de base, et ces deux nœuds
convertissent notre courbe de base
et notre profil en maillage.
5. Créer des trous et des formes personnalisées: Bonjour, et bienvenue
à la prochaine leçon wagons-ponts procéduraux. Dans cette leçon, nous allons ajouter une option pour créer un tuyau à l'intérieur notre pont et ajouter
quelques commandes supplémentaires pour pouvoir contrôler
toutes sortes de périmètres Mais d'abord, réfléchissons
à la manière dont nous allons ajouter un
tuyau à notre pont et à la manière dont nous allons générer les objets booling que nous
utiliserons dans notre configuration Supposons donc que nous voulions
ajouter trois tuyaux, qui auront une forme circulaire, nous voudrons
donc ajouter
quelque chose comme ceci. Ou peut-être devrions-nous agrandir un peu celui
du milieu cause de la forme
de notre pont. Alors peut-être quelque chose comme ça. cette raison, nous
voudrons être en mesure de contrôler les échelles de nos objets. Nous allons donc utiliser deux valeurs. Il y aura une valeur pour
l'échelle des objets centraux,
qui dans ce cas, peut être quelque chose comme deux,
puis une valeur pour les
objets situés sur les côtés. Ainsi, par exemple, si vous
avez deux autres trous
ici et ici, peuvent être de l'ordre de 0,5. Il y aura donc deux valeurs. Nous pouvons les appeler
échelle centrale et échelle du siège, et les échelles des objets entre ces valeurs
seront cartographiées Ainsi, par exemple, celui-ci
aura une échelle de un, mais celui-ci sera calculé, sorte que l'utilisateur n'aura pas besoin
de saisir cette valeur. Si l'échelle
latérale est, par exemple, égale un et l'échelle centrale à une, l'échelle de cet
objet central restera également égale à une. Réfléchissons maintenant à la façon dont nous allons répartir nos cylindres
ou, dans notre cas, cylindres le long de notre courbe. Jetons un coup d'œil par le haut et restons-en à l'idée
de trois cylindres seulement. Donc, celui du milieu
serait quelque part comme ça, et les plus petits
quelque chose comme ça. C'est juste un coup d'œil vu du haut. Sur le côté, il y
aurait des formes circulaires. Et cela pose quelques problèmes. Donc, par exemple, si cette courbe devait avoir une tournure plus nette, réorganisons-la un peu Je vais ajouter un autre point et
ajouter quelque chose comme ça. Supposons donc que ce pont ait la forme
suivante, et que le milieu
soit situé en haut. Ensuite, la configuration générerait notre cylindre central quelque part ici et les
cylindres latéraux quelque part ici. Et vous pouvez voir
que sur les côtés, ça devrait aller. Mais au milieu,
cela créerait
des trous pas si jolis. Vous pouvez donc voir qu'il y aurait
probablement un trou
comme celui-ci, et ce
ne serait pas très agréable. Nous devons donc réfléchir à un moyen de l'améliorer un peu. Et ce que nous voulons réaliser, c'est essentiellement quelque chose comme ça. Donc, le tuyau ressemblerait à
ceci vu de ce côté, et de l'autre côté,
il serait un peu plus grand. L'approche que nous
utiliserons sera très similaire
à celle du modificateur de courbe à
l'étape du modificateur. Donc, si vous optez pour
déformer et courber, ce modificateur prendra
essentiellement vos objets et les déformera
le long de certaines Et ce que nous allons faire, c'est créer une distribution de base de ces cylindres
en ligne droite. Nous allons donc créer une ligne droite de même longueur
que notre courbe de base. Ensuite, nous distribuerons
nos cylindres le long de cette courbe ou de cette ligne, puis nous
prendrons cet objet et le déformerons le long de notre
maillage de base ou de notre courbe de base Avec cela, nous obtiendrons exactement ce comportement
de l'ensemble de nos objets, et nous devrions avoir de
jolis trous à l'intérieur de notre pont. Une autre chose que nous
aimerions pouvoir contrôler est la distance entre le tuyau et le
centre de notre courbe de base. Supposons donc que nous voulions un tuyau
comme celui-ci situé au centre de notre courbe de base, et que nous voulions un grand trou au milieu,
puis deux plus petits
sur les côtés et qu'il n'y ait plus de
trous ici sur les côtés. Nous allons donc ajouter un périmètre, qui contrôlera essentiellement la
largeur de cette section de trou. Avec lequel nous pourrons
contrôler le comportement
de nos trous. Si ce périmètre
est défini sur un, le tuyau sera réparti le
long de la courbe du trou. Et s'il s'agit, par
exemple, de 0,5, cela pourrait
ressembler à ceci, où il est juste au centre. Vous savez, vous pouvez diviser la courbe de
rythme en quarts. Disons donc,
voici le milieu, 0,5, zéro et un. Et si notre valeur est de 0,5, ce sera d'ici à ici. Très bien, commençons
donc une distribution très basique le long d'une ligne droite de même
longueur que notre courbe de base. Passons donc à notre étape
géométrique et non à notre étape, et nous ajouterons un nouveau panneau
ici avec ce bouton plus, sélectionnerons le panneau, et nous l'
appellerons trous. Dans ce panneau, il y aura
tous les paramètres qui
contrôleront nos trous
à l'intérieur de notre pont. Ajoutons donc quelques paramètres. Nous contrôlerons notre échelle intermédiaire et notre
échelle secondaire. Ajoutons-les donc. Échelle moyenne, la valeur par défaut
peut être définie sur un et le minimum est zéro. Nous pouvons maintenant dupliquer
ce périmètre et l'
appeler stscale, qui
contrôlera essentiellement l'
échelle de nos objets
aux extrémités Et nous pouvons également définir une valeur par défaut
. Ensuite, il y
aura la grande partie qui sera occupée par ces trous. Nous pouvons donc appeler cela quelque chose comme échelle de section
ou simplement section. sous-type sera un facteur
car ce sera 0-1, et nous pouvons définir la valeur par défaut
sur un, disons Revenons maintenant à notre modificateur de nœuds Geometri
et rétablissons ces valeurs
à leurs valeurs par défaut avec backspace et revenons
aux nœuds Geometri Pour l'instant, nous n'utiliserons que
quelques objets cylindriques de base, puis nous les remplacerons par des objets
personnalisés créés par notre utilisateur. La première chose dont j'ai
parlé était la courbe de base. Créons donc une courbe. Et je vais zoomer un peu. Notre départ peut être à zéro, zéro, et N sera sur l'axe X, ce sera la longueur
de notre courbe de base et Y et Z seront nuls. Ajoutons donc la combinaison XYZ, et nous adapterons la longueur de notre courbe de
base à la valeur X. La longueur de notre courbe de base peut être obtenue avec la longueur de la courbe Nous allons
donc utiliser notre courbe de base
au niveau d'un nœud de longueur de courbe. Et cela nous donnera la
longueur totale de notre courbe de base. Je vais le brancher sur X. Maintenant, si je le publie,
vous pouvez voir qu'il n'y a qu' une
simple courbe et que la longueur
semble correcte. C'est la même que la courbe de base. Vous pouvez également le consulter ici. Si vous surpassez la sortie
du nœud de longueur de courbe, vous pouvez voir que c'est
quelque chose de 20 personnes, donc ça devrait aller. Maintenant, nous allons répartir nos objets
le long de cette courbe en
distribuant certains points cette courbe, puis en installant nos objets sur ces points. Ajoutons donc un nœud de points, qui générera des points, et nous pouvons également
définir leur position avec cette prise de position. Pour cela, nous devons réellement
compter nos objets. Ajoutons donc une nouvelle
entrée, appelons-la count, et nous pouvons définir la valeur par défaut trois et également taper deux entiers car il
s'agit toujours d'un entier. Et le minimum
peut également être réglé à zéro. Réinitialisons également cette valeur. Et le nombre d'
objets sera compté à partir de notre entrée de groupe. Ajoutons donc une entrée de groupe et connectons cette valeur de comptage
au nombre de points. Et maintenant, vous pouvez voir que si je publie et que je
survole le résultat, vous pouvez voir qu'il y a trois points dans le nuage de points Déterminons maintenant la
position de nos points. Pour cela, nous allons échantillonner
cette courbe droite et utiliser la position
de certains facteurs sur cette courbe pour contrôler les
positions de ces points. Donc, si j'ajoute une courbe simple et branche notre courbe de base ou notre courbe
droite à ce nœud, cette courbe nous indiquera à quelle position se trouve le
point de cette courbe, qui a un facteur
que nous saisissons ici. Donc, en gros, nous allons
contrôler ce facteur, ce qui produira la
position sur cette courbe, et nous
contrôlerons la position de
nos points avec celle-ci. Nous pouvons également vérifier toutes les courbes car il n'y en a qu'une Maintenant, si je change le facteur, vous pouvez voir que lorsqu'
il est nul, c'est au début de
notre courbe droite, et quand c'est un, c'est à la
fin de notre courbe droite. Pour calculer le
facteur de chaque point, nous utiliserons leur indice. Ajoutons donc un nœud d'index. Et nous allons mapper
notre indice de zéro à l'indice maximum en fonction de
certains facteurs de 0 à 1 Ajoutons donc un nœud cartographique, qui remappera
notre indice de zéro à un compte moins un car il s'agit de l'
indice maximum de nos points Donc, additionnons le nombre,
soustrayons un, et si nous laissons les choses comme ça,
cela remappera nos
points au facteur Si j'associe le résultat au facteur, vous verrez que nos trois points
sont répartis le long de
notre ligne droite. Et si j'augmente le
nombre de points, vous verrez qu'ils se
répartissent bien. Mais ce n'est pas tout
ce que nous voulons contrôler. Nous voulons également inclure
la valeur de section, qui contrôlera la
plage de ces points. Lorsque la section est égale à un, nous
voulons que cette plage soit comprise entre 0 et 1. Mais quand c'est 0,5, par exemple, nous voulons que ce soit 025-075 Nous pouvons donc obtenir
ces valeurs avec quelques calculs simples. Ainsi, lorsque
notre section est de 0,5, notre minimum sera de 025
et notre maximum de 0,75 Et j'écrirai aussi si c'est un, vous voulez que ce
soit zéro et un. Nous aurons donc besoin de quelques
calculs de base pour le calculer, et pour ce faire, nous pouvons essentiellement prendre le
centre de notre courbe, qui est 0,5,
puis soustraire ou ajouter
la moitié de cette section Si nous ajoutons une section
divisée par deux, cela nous donnera notre maximum. Et si nous le soustrayons
au lieu d'ajouter, cela devrait nous donner notre minimum Utilisons donc nos valeurs. Lorsque la section est une, ce
sera 0,5 et 0,5 plus 0,5 est un et 0,5 -0,5 est zéro Donc, cette partie est correcte,
et essayons celle-ci. Lorsque la section est égale à 0,5, ce sera 0,25 Le maximum sera donc de
0,75 et le minimum de 0,25. Donc ça a l'air plutôt bien. Et implémentons
cette expression simple et utilisons-la pour nos
principales valeurs maximales. Nous allons donc utiliser notre section, et divisons-la par deux. Maintenant, je vais en ajouter deux,
j'ajouterai deux nœuds de méthamphétamine, dont l'un sera à, et le second
sera soustrait Et une fois que nous aurons ajouté
la moitié de notre section, ce sera notre maximum, et la deuxième fois, nous en
retirerons , et
c'est notre minimum Maintenant, si je vérifie cela
dans notre mise en page, vous pouvez voir que lorsque je
change la section à zéro, tous les points vont au milieu. Et si je le mets à 0,5, vous pouvez voir qu'ils sont
bien distribués comme ça. Je peux également augmenter le nombre, et cela devrait rester
dans la même section. Cela fonctionne donc plutôt bien. Cela semble donc plutôt bon, et maintenant nous pouvons passer à instanciation de l'ensemble de nos
objets sur ces points Je vais le remettre à
trois et à la section 20.5. Passons maintenant à nos notes de
géométrie. Ici, dans cette section, nous
distribuons nos points, et maintenant, instancions des
objets sur ces points. Nous le ferons donc
par exemple sur certains points. Nos points seront les
points que nous avons distribués. Et les instances
seront pour l'instant des cylindres. Plus tard, nous le
remplacerons par un objet personnalisé. Vous pouvez constater que nos cylindres ne sont pas vraiment
positionnés correctement. Je vais donc simplement ajouter
un nœud de transformation, qui modifiera légèrement
cela, et nous le ferons simplement pivoter
autour de l'axe X de 90 degrés, et maintenant ils sont
correctement pivotés Parce que si vous imaginez
qu'il y a le pont, c'est
l'orientation du tuyau que nous aimerions avoir. Maintenant, nous devons également déterminer la taille de nos cylindres. Travaillons donc là-dessus. Nous allons contrôler l'entrée d'
échelle de nos instances, et nous devons
trouver une autre équation ou expression qui
calculera notre échelle. Je vais donc ajouter deux cylindres
supplémentaires ici et peut-être augmenter un peu
la section. Et maintenant, si nous regardons
de côté, nous voulons que ces
cylindres
latéraux aient une échelle latérale et que ce cylindre
ait une échelle moyenne, et il faudra
les calculer. Donc, la façon dont nous pouvons le faire
est de cartographier la distance de chaque cylindre
du milieu à un. Celui du milieu
aura donc une distance nulle. Les cylindres latéraux correspondraient
à la distance 1, et les cylindres entre
eux seraient calculés. Celui-ci aura donc 0,5. Celui-ci est également de 0,5, et
celui-ci en sera un. Ensuite, nous pouvons
simplement mapper cette valeur entre l'échelle moyenne
et l'échelle latérale. Nous utiliserons à nouveau
les index de nos instances. Ajoutons donc une note d'index. Et disons que celui-ci a
un indice zéro. Celui-ci est un, deux,
trois et quatre. Donc, ce que nous aimerions
obtenir, c'est quelque chose comme zéro, 0,5 et un comme ci-dessus. La première chose que nous
pouvons faire est donc de
créer ou de calculer la distance de notre indice par rapport à celui
du milieu. Donc, pour cela, nous
devrions en arriver à zéro. Il y en aura un, deux, et ici aussi un et deux. Nous pouvons le faire en soustrayant la valeur moyenne de chacune
de ces valeurs, puis
en utilisant la valeur absolue Soustrayons donc la valeur, et la valeur que nous allons
soustraire sera nombre de cylindres -1/2
car avec le moins un, nous obtiendrons le quatre et divisé par deux nous
donnera les deux Nous allons donc revenir
sur la saisie du groupe. Nous allons compter et en soustraire un. Et maintenant, nous allons être
divisés par deux. Et cela devrait
nous donner un meilleur rapport qualité-prix. Nous pouvons également consulter ceci. Donc, si j'utilise Viewer, j'activerai le texte
des attributs ici. Vous verrez que nous avons deux exemples que je vais essayer de dire. Oui, c'est parfait. Maintenant, vous pouvez voir que
celui-ci a moins deux. Celui-ci a un,
zéro, un et deux. Parfait Alors maintenant, nous pouvons simplement utiliser la
valeur absolue de ceux-ci. Ajoutons donc de la valeur absolue
et connectons-la aux spectateurs pour qu'ils puissent la visionner. Maintenant, vous pouvez voir que nous
avons exactement ces valeurs. Il ne nous reste plus qu'à le diviser par la
valeur la plus élevée de celui-ci. Il y en a donc deux, et cela
devrait également être notre valeur moyenne. Divisons-le donc
par cette valeur ici, qui devrait être de deux pour le moment. Et si nous le divisons
et le connectons à Viewer, vous verrez que
nous avons zéro ici, 0,5 ici et un ici. Si j'ajoute quelques points supplémentaires, j'ajouterai rapidement des modificateurs d'étapes de
propriété, et j'
augmenterai simplement le nombre Vous pouvez voir que les valeurs
changent bien. Si je l'augmente
à sept ou six, ces valeurs sont
toujours assez bonnes, et nous les
utiliserons pour
redéfinir notre échelle Ajoutons donc un nœud de plage cartographique, et nous
mapperons cette valeur 0-1 de l'échelle moyenne
à l'échelle latérale Ajoutons donc une entrée de groupe, et ces deux valeurs sont correctes car celle du
milieu a zéro, celle côté un en a un,
et maintenant nous pouvons simplement connecter, nous pouvons mapper zéro à l'échelle moyenne
et un à l'échelle latérale. Et cela devrait nous donner
l'échelle appropriée. Et si nous modifions un peu
cela, vous pouvez voir que si j'
augmente l'échelle latérale, cylindres
du site
deviennent de plus en plus petits Je peux également les augmenter
et nous pouvons également
jouer avec l'échelle moyenne
et tout fonctionne bien. Si nous augmentons ce chiffre et
les valeurs un peu, vous pouvez constater que notre mise à l'échelle
fonctionne parfaitement, et nous pouvons maintenant passer à alignement de ces cylindres
le long de la courbe de base
6. Déballage UV du pont de courbe: Bonjour, et bienvenue
à la prochaine leçon wagons-ponts procéduraux. Dans la leçon précédente,
nous avons réparti les objets de
nos trous le long d'une courbe droite. Dans cette leçon, nous allons essayer de les aligner le long de la
courbe de base, puis utiliser modificateur
Bolling pour soustraire ces objets de
notre maillage de base La technique que
nous allons utiliser est donc très
similaire
au modificateur de courbe, dont j'ai parlé
dans la leçon précédente, et nous allons essentiellement refaire ce modificateur mais à l'intérieur
du nœud géométrique Pour cela, nous aurons besoin de certains
objets à déformer, qui sont dans notre cas
les cylindres ici, et nous aurons également besoin d'une courbe le long de laquelle nous
déformerons ces objets, et celle-ci
sera notre courbe de base Nous avons donc cette courbe
et les cylindres, et nous voulons déformer les
cylindres le long de cette courbe Cette technique est très utile, et nous l'utiliserons également dans les prochaines leçons où nous
travaillerons sur les freins. Tout d'abord, avant de
procéder à la configuration, nous allons également réaliser
nos instances à partir de nos trous de courbe
ou de nos trous de pont. Nous pouvons donc maintenant travailler avec
leurs points individuellement. Pour aligner ces
objets le long de la courbe, nous utiliserons un nœud de courbe simple, qui lira des
informations sur la courbe de base Nous pouvons vérifier toutes les courbes
parce qu'il ne s'agit que d'une seule courbe Nous
utiliserons également
la longueur plutôt que le facteur, car nous
travaillerons avec les positions de
ces points sur leur axe X, ce qui nous indiquera essentiellement sur quelle longueur nous
voulons lire ces valeurs. Donc pour cela, nous pouvons ajouter une position et nous
séparerons XYZ Pour l'instant, nous n'utiliserons que la valeur X que nous
ajouterons à la longueur. Cela se traduira par le fait que, par
exemple, en ce
point du milieu, nous
examinerons cette courbe
au milieu et lirons sa
position tangente et normale Et il définira la
position de ce point
au point correspondant
le long de cette courbe. Nous utiliserons donc également
un nœud à position définie, qui déformera
notre maillage de base Branchons donc nos instances ou nos instances réalisées
à la position définie. Et maintenant, si nous fixons
la position de ce point à
la position de notre maille de base ou de l'ensemble de
notre smash, vous pouvez voir que
cela crée un maillage pas très beau, mais cela
fonctionne correctement car si je le disais à cinq, vous pouvez voir qu'il y a environ cinq de ces pièces, et chacune d'elles est
l'un de nos cylindres Il s'agit donc de la
position de base de nos points, et maintenant nous devons
les décaler de manière à
ce que si le point, par
exemple, ici, se trouve sur l'axe Y, disons un, nous voulons prendre un
vecteur sur cette courbe, pointant vers l'extérieur, le
redimensionner d'un et
l'ajouter à la position Cela aura pour résultat de recréer l'
objet entier le long de cette courbe Donc, le long de cette courbe, nous
aurons besoin de deux autres vecteurs. L'un d'eux est celui dont
j'ai parlé. Il sera perpendiculaire
à cette courbe et également
aligné sur le plan XY. Il sera donc plat, et le second
sera dirigé vers le haut. La façon dont cela fonctionnera est que nous
prendrons toujours position, cela nous donnera
un point sur notre courbe. Position Y, cela nous donnera distance dans cette direction par rapport à la position ou à la
courbe et également la valeur Z, qui nous donnera la distance par rapport à notre courbe de base sur l'
axe Z ou dans cette direction. Donc, pour obtenir cette direction Z, nous pouvons essentiellement la régler sur l'axe
Z car nous
voulons toujours qu'elle pointe vers le haut. Pour cela, nous pouvons
simplement utiliser l'échelle vectorielle. Ajoutons donc des
mathématiques vectorielles, définissons-les à l'échelle. Et nous allons redimensionner le vecteur
pointant vers le haut avec
une longueur d'un en fonction de l'axe Z ou
de la position Z de notre cylindre et le
brancher en position décalée. Si nous faisons cela, vous
pouvez voir que nous
avons ces contours qui sont essentiellement des cylindres
pressés dans cette direction. Il ne nous reste plus qu'à ajouter la déformation à cet axe ou
à la direction de notre axe Y. Pour obtenir l'axe Y, nous pouvons simplement utiliser notre tangente, qui est un vecteur qui pointe
toujours dans la direction de la courbe,
et utiliser ce produit Donc, si nous utilisons la tangente T
et créons Oh sorry, produit
croisé,
produit croisé avec Z, cela nous donnera un vecteur perpendiculaire
à la fois à Z et à T, ce qui signifie que c'est
la direction Y. Calculons donc le Y. Ce sera un produit vectoriel
avec la tangente, donc je vais calculer le produit vectoriel
entre la tangente Maintenant, nous pouvons simplement
redimensionner cette valeur en fonction de la position
Y. Y du point horaire, et nous l'
ajouterons à notre décalage Je vais
donc additionner ces deux vecteurs et les intégrer à offset Si je le publie,
vous pouvez voir que nos cylindres sont
bien alignés, ce qui devrait nous donner de
bons trous dans notre pont. Vous pouvez voir qu'ils
ne sont pas parfaitement droits
parce que la courbe ici
était quelque chose comme ça,
ce qui a créé de jolis alignements de nos trous le long de
la courbe de base La dernière chose qui
manque est de soustraire
ces cylindres du maillage de
notre pont Je vais donc mettre ça ici. Et voici
notre treillis de pont, et voici notre tuyau. Et nous pouvons simplement ajouter un
booling ou un booling maillé. Cela sera réglé sur une différence. Je vais juste mettre ça de plus près. Et nous allons soustraire
de ce maillage, et nous allons soustraire Et maintenant, vous pouvez voir que
cela ne fonctionne pas vraiment, même si cela devrait
fonctionner si nous vérifions le pont par le haut, cela
ressemble à ceci. Et si on vérifie les trous, ils ont l'air plutôt bons. Cela devrait donc créer
des trous à l'intérieur du pont, mais il y a probablement un problème
que nous n'avons pas encore résolu, à savoir l'orientation du pas. Si vous l'activez
et que vous visualisez le pont, vous pouvez voir que l'
orientation des faces de ces faces est incorrecte car la couleur nous devrions
voir est le bleu, mais la majeure partie du pont
a juste une valeur rouge, ce qui signifie que les normales ou
les faces pointent à l'intérieur
du maillage et non à l'extérieur, ce qui devrait être
ainsi que cela doit être fait Et pareil pour
les cylindres, si on entre dans le
cylindre d'une manière ou d'une autre, on peut voir que l'intérieur est bleu, donc les normales
pointent dans cette direction, et celles-ci devraient
pointer vers l'extérieur Nous devons donc tous résoudre ces deux problèmes pour
que cela fonctionne correctement. Donc, pour les cylindres,
cela devrait être assez simple car l'axe Z convient parfaitement
,
car c'est ce que nous avons mis ici dans l'
échelle par défaut. Mais le problème vient
peut-être de la direction Y ,
car ces cylindres
avaient une certaine orientation et nous les avons peut-être déplacés
dans une direction différente. Nous pouvons inverser cette direction en changeant
simplement ce 001
à 00 moins, et maintenant vous pouvez voir qu'ils ont une orientation bleue,
et c'est très bien. Si nous voyons maintenant le maillage booling, vous pouvez voir qu'il fonctionne
réellement Mais je pense que nous devrions également fixer l'orientation du rythme
du maillage de notre pont. Essayons donc de le faire. Vous pouvez donc voir
que tout est conforme aux normes Runk, sauf une des balustrades Nous pouvons donc inverser la plupart d'entre eux
en retournant simplement les visages. Et vous pouvez voir que cela résout la plupart de ces problèmes
, sauf cette balustrade. C'est parce que cette balustrade
a été créée par défaut, puis celle-ci a simplement été
redimensionnée de moins Et la façon dont nous pouvons résoudre ce problème
est simplement d'inverser la courbe de ce profil, car
disons que cela allait dans une certaine direction, puis que celui-ci allait
dans la mauvaise direction Et si nous inversons les
choses dans le même sens, cela devrait créer de meilleurs visages. Donc, si nous accédons à notre
profil, qui se trouve ici, vous pouvez voir qu'il s'
agit de notre balustrade par défaut, et que celle-ci est simplement redimensionnée sur le X x par moins un. Et si nous inversons simplement la courbe et branchons à la place
de la précédente, cela devrait
nous donner un beau profil, qui contient également des normales d'écriture Maintenant, si vous optez pour l'intimidation,
cela fonctionne bien. Sauf dans cette partie où les cylindres sont tout simplement trop étroits pour créer de véritables
trous à l'intérieur de notre treillis. Et il existe plusieurs
façons de résoudre ce problème. Le moyen le plus simple est
probablement d' augmenter la profondeur
de nos cylindres, ce qui les allonge, et
maintenant cela fonctionne bien. Mais nous pourrions régler ce problème
d'une manière plus élégante. Ici, lorsque nous
dimensionnons nos instances, nous les dimensionnons
sur l'ensemble de l'axe. Et ce que nous pouvons faire, c'est simplement les
étendre si nous y jetons un coup d'œil, nous pouvons simplement les
redimensionner dans telle ou
telle direction. Et cette direction, qui
est la dimension qui contrôle ou qui doit être
au moins égale à la
largeur du pont. Nous pouvons contrôler cela
par certains calculs. Alors d'abord,
contrôlons simplement ces deux X. Nous pouvons probablement ajouter combine XYZ. Ajoutons donc la combinaison XYZ, et nous avons juste besoin de les
redimensionner en X et Z. Donc, intégrons cette valeur X et Z et fixons Y à résultera que
tous les cylindres auront la même longueur
dans cette direction. Faites en sorte que les cylindres soient
correctement larges, nous pouvons calculer cette échelle Y
en prenant les dimensions
de ces objets sur Y X, puis en regardant la largeur du pont et multipliant
par quelque chose Supposons donc que le
pont ait une largeur de un et notre cylindre ou notre objet entier ait une largeur de 0,75 Si nous divisons celui-ci par 0,75, nous obtiendrons quelque chose
comme Y 1,333. Ensuite, si nous redimensionnons ce cylindre par cette
valeur sur l'axe Y, qui est 1,33 fois 0,75, nous devrions obtenir la largeur de un, qui est la largeur de notre pont Nous pouvons également
augmenter cette valeur, afin qu'elle se chevauche ou
s'étende légèrement, afin de nous assurer que cela crée
réellement le trou et que les faces ne sont pas parfaitement
alignées avec le pont, ce qui pourrait nous poser des problèmes Faisons donc ce calcul. Tout d'abord, nous devons obtenir les dimensions de l'ensemble de nos objets sur l'axe Y. Nous pouvons le faire en créant un
boîtier de délimitation de cette géométrie Si nous
regardons ce qu'il fait, nous avons le cylindre ici et
nous prenons le boîtier de délimitation Cela crée simplement le cadre de délimitation
autour de cet objet. Nous pouvons en obtenir les dimensions en soustrayant le
maximum des hommes. La valeur maximale est probablement
ce point et la valeur minimale, désolé, se
trouve ici en bas, et nous pouvons simplement les soustraire ce qui nous donne les
dimensions de chaque axe, puis nous avons juste besoin de la dimension sur l'axe Y pour pouvoir la séparer Et voici mon calcul. Nous devons donc diviser la largeur de notre pont par
la largeur de notre objet. Grâce à notre pont, nous pouvons
prendre cela à partir de la saisie de groupe. C'est cette largeur,
divisons-la et
divisons-la par cette valeur Y. Cela nous donnera une
mise à l'échelle sur l'axe Y. Maintenant, si nous le branchons sur Y, nous devrions obtenir
quelque chose comme ça. Et si nous
examinons le pont, vous pouvez voir qu'il devrait
théoriquement bien fonctionner, et vous pouvez également voir qu'il fonctionne Si je regarde depuis le haut, vous pouvez voir que voici les cylindres et
le pont. Si je modifie les dimensions
sur l'axe Y du cylindre, cela ne devrait rien faire
car la mise à l'échelle est recalculée pour obtenir
la bonne quantité, et cela fonctionne Mais si vous
regardez les trous, vous pouvez voir qu'
ils contiennent des artefacts, et c'est parce que A, les cylindres n'
ont peut-être pas de géométrie ici Ils sont
donc droits comme
ça et le pont présente
encore quelques courbures C'est ce qui a causé ce truc ici. Et nous pouvons simplement résoudre ce problème en
multipliant la
valeur de l'échelle par quelque chose comme 1,1 pour nous assurer
que cela ne se produise pas Multiplions-le donc par 1,1, branchez-le sur l'axe. Vous pouvez voir que cela ne fonctionne
toujours pas
vraiment bien, nous pouvons
donc le régler sur 1,5, et nous pouvons nous
assurer qu' il crée toujours de beaux trous. Jetons maintenant un coup d'œil à notre configuration et à
son fonctionnement réel. Nous pouvons définir le nombre de nos
objets avec cette valeur. Mettons-le donc
à trois pour le moment. Nous pouvons jouer
avec la section, qui contrôle
leur proximité. Je vais donc le mettre à
cinq, par exemple, régler la section sur
quelque chose comme ça, et je peux également modifier
l'échelle moyenne. Vous pouvez voir que
cela ressemble un
peu à un problème ici, mais j'en
reparlerai également plus tard Et si nous réglons l'échelle latérale
sur quelque chose de plus petit, vous pouvez voir que vous obtenez
ces jolis trous. Le problème que nous rencontrons
ici, c'est qu'en gros, si vous regardez du
haut depuis les cylindres, vous pouvez constater qu'il y en a une
grande partie. Et le problème ici, c'est que ce cylindre n'a ici que
cette face plate. Mais ce dont nous aurions besoin,
c'est une géométrie comme celle-ci pour qu'elle puisse réellement
se plier le long de la courbe. C'est pourquoi il est préférable d'utiliser des formes plus complexes ou simplement
des objets plus géométriques. Nous pouvons, par exemple, essayer
cela lorsque vous utilisez un cube. Ajoutons donc un cube ici. Et si je le branche à la
place de ce cylindre, je vais juste le mettre ici et
brancher le cube à l'intérieur de celui-ci. Vous pouvez voir que
nous avons maintenant des cubes ou des trous cubiques ici. Et si j'augmente
l'échelle moyenne, nous devrions le faire, vous pouvez voir que nous avons les
mêmes problèmes ici. Mais si j'augmente le nombre de sommets à
environ dix, cela est corrigé car
les cubes peuvent désormais également être courbés Nous pouvons également le vérifier
ici depuis le haut. Vous pouvez voir qu'ils
sont bien courbés. Mais si cette valeur était égale à deux, elles étaient simplement droites et ne s'
alignaient pas vraiment sur la courbe de base. Ainsi, lorsque vous utilisez des objets Hole, assurez-vous qu'ils
ont une géométrie suffisante pour se plier
correctement de cette manière. Ajoutons donc un périmètre permettant aux utilisateurs d'utiliser leurs objets complets
personnalisés. Pour cela, nous allons
cliquer pour faire apparaître ce menu et ajouter une nouvelle entrée. Nous pouvons l'appeler le object et
nous allons définir le type sur object. Et maintenant, au lieu d'
utiliser le cylindre, nous allons utiliser l'
objet entier. Supprimons donc le
cylindre et remontons-le. Tout d'abord, nous aurons besoin d'une entrée de groupe. L'objet entier, nous allons
le connecter aux informations sur l'objet, qui nous donneront
la géométrie réelle, et maintenant nous pouvons utiliser cette
géométrie au lieu du cylindre. Maintenant, nous ne voyons rien. Je vais en fait produire le résultat
final de l'installation. Alors maintenant, il n'y a plus
qu'un simple pont. Mais si je crée une sorte d' objet
entier, nous pouvons
utiliser le cylindre. Je vais le faire pivoter de 90 degrés sur
Xxs. Nous devons maintenant remplacer ces faces par des faces à géométrie
plus élevée. Et si vous sélectionnez ces
sommets avec Alt, désolé, ces arêtes avec Alt et
cliquez avec le bouton gauche de la souris et que vous appuyez maintenant sur F
pour faire apparaître ce menu, recherchez Grit fill, et cela remplira parfaitement
ce cylindre Nous le ferons également pour
l'autre partie. Comme ça. Et maintenant, nous devrions avoir un
joli objet en forme de trou que nous pouvons utiliser
dans notre configuration. Je vais donc le
laisser par cylindre. Je vais le cacher
et construire notre pont. Maintenant, dans un objet entier, je
peux sélectionner mon cylindre. Vous pouvez le constater tout de suite, nous avons des trous cylindriques, et nous n'avons aucun
problème ici car le cylindre a une belle géométrie et tout fonctionne bien
7. Introduction au chemin de pierre: Bonjour et bienvenue dans le cours
Blenders Procedural
Bridge Dans cette leçon, je vais expliquer
comment nous allons ajouter des pierres à balustrade de notre pont et comment cette configuration fonctionnera
réellement Donc, actuellement, notre pont
ressemble à ceci, et les pierres seront placées ici, autour des balustrades ou essentiellement au-dessus
des balustrades Donc, si nous les examinons, vous pouvez voir que leur forme ressemble à
ceci, disons, et que les pierres produiront
essentiellement briques de
pierre le long de ces courbes
au-dessus de ces balustrades. Donc, à la fin, lorsque les ruptures de pierres
seront terminées, nous utiliserons simplement une sorte
de ces courbes et nous leur attribuerons le brise-pierre configuré ou un groupe de nœuds géométriques, et cela
générera
des ruptures qui ressembleront à ceci, disons, que cela se fera tout
le tour des courbes Il sera également de
l'autre côté, et nous modifierons également le
contour des trous. Donc, en gros,
quelque part comme ça, il y aura aussi des briques de
pierre. Il y aura
un certain nombre de périmètres que nous pourrons contrôler Supposons, par exemple, qu'il y ait une
courbe comme celle-ci, et que nous devions maintenant créer des ruptures de
pierre le long de cette courbe. Nous aurons donc quelques
paramètres pour les ruptures de pierres. Nous aurons leurs dimensions, donc nous aurons la longueur, la
largeur et la hauteur. Et nous devrons d'abord créer
des cubes de base
le long de cette courbe, puis nous appliquerons également
une sorte de déplacement. Si vous placiez les cubes
tout de suite sur cette courbe, nous pourrions rencontrer des
problèmes similaires à ceux que nous
avons rencontrés lors de la création de
trous sur notre pont. Donc, si la courbe
avait une forme comme celle-ci, par
exemple, et que nous
placions simplement des cubes le long de cette courbe, elle pourrait finir par
ressembler à ceci où les cubes
se chevaucheraient dans certaines zones, ce que
nous ne voulons pas vraiment. Pour cette configuration,
nous allons donc utiliser une approche très
similaire à celle que nous avons utilisée pour les trous. Nous allons donc d'abord
générer ces briques
le long de courbes droites, puis nous
les alignerons sur nos courbes de rythme, ce qui était notre entrée. Donc pour cela,
disons que nous aurons cette
courbe, et d'abord, nous créerons une courbe droite, qui a exactement la même
longueur que celle-ci. Ensuite, nous
distribuerons des cubes ou des briques le long de cette courbe. Comme ceci, nous
alignerons ensuite ces objets
le long de cette courbe. Il y a également un autre problème
dont j'aimerais parler,
à savoir dont j'aimerais parler,
à quand nous
voudrons réellement placer ces pierres cassées non seulement
le long d'une courbe, mais le long de plusieurs courbes. C'est donc aussi une chose
que
nous allons implémenter, et nous l'implémenterons de cette façon, disons que nous aurons une courbe comme
celle-ci et une courbe comme celle-ci, et que cela sera saisi
dans notre groupe de nœuds. Nous allons donc examiner
toutes ces courbes et créer
autant de courbes
qu' toutes ces courbes et créer
autant de courbes il y en a. voici deux,
nous allons donc créer deux courbes, et cette courbe aura la même
longueur que la première courbe, et cette courbe aura la même
longueur que la deuxième courbe. Ensuite, nous répartirons les pauses le long de ces courbes droites. Ensuite, pour chacune d'elles, nous les alignerons sur
leur courbe d'origine. C'est donc pour les trous
ou les pierres qui se brisent autour des trous parce que
nous ne le
savons pas vraiment ou parce que nous
le savons peut-être, mais pas non plus. Nous allons donc le rendre aussi
procédural que possible, et cela fonctionnera très
bien car nous n'aurons pas besoin soucier du nombre de courbes que nous
saisissons dans le groupe de nœuds, et cela fonctionnera simplement avec
tout ce que nous saisirons à ce sujet. Parlons un
peu de la façon dont nous allons réellement répartir les pierres cassées
le long d'une courbe droite. Supposons donc que nous ayons une courbe
droite et que nous voulions que les
pierres cassées aient dimensions différentes ou
légèrement aléatoires Disons donc que nous
aimerions quelque chose comme ça, que celui-ci soit plus court,
celui-ci soit plus long. Celui-ci est quelque chose entre
les deux, encore une fois
plus long, peut-être
trop court comme ça. Et c'est en fait un problème
assez intéressant car si nous voulons juste
des briques de même taille, nous pouvons simplement prendre une
courbe, la rééchantillonner Rééchantillonnez-le donc en un certain nombre de points
, puis placez simplement un cube
sur chacun de ces points C'est l'approche la plus simple, mais nous
voulons en fait les randomiser. Si vous
souhaitez les répartir de manière aléatoire, nous devons
décaler ces points d' une certaine
quantité aléatoire, puis déterminer la
taille des cubes ou
des cubes d'instance pour ne pas se croiser Mais cela risque de devenir
vraiment compliqué. La solution que
nous allons utiliser est donc créer la
courbe droite et de rééchantillonner Ensuite, nous allons
déplacer les points de manière aléatoire. Supposons donc que ce
point soit là. Ce point figurera ici. Et ils auront des
distances aléatoires entre eux. Ensuite, nous voulons des
cubes d'instance sur les points, mais nous utiliserons des arêtes pour
créer des cubes sur eux. Pour les arêtes, nous
pouvons en fait obtenir leur longueur et
leur point central, ce qui est suffisant, ou des informations pour générer des cubes sur celles-ci. Donc, en gros, nous allons
avoir une sorte de courbe comme celle-ci et nous
allons créer un cube même longueur que cette arête et le placer dans la même
position que l'arête, et nous allons le faire
pour chacune des arêtes. Cela se traduira par
quelque chose comme ça. Ensuite, nous pouvons également utiliser des dimensions aléatoires
pour les élargir Et ce n'est pas grave car cela ne provoquera aucune collision
avec les autres ruptures, donc cela devrait être assez simple. Enfin, nous
appliquerons également une sorte de déplacement,
afin qu'ils ne soient pas droits,
mais qu'ils soient
déplacés ou quelque chose comme appliquerons également une sorte de déplacement,
afin qu'ils ne soient pas droits, ça,
et nous les ça, envelopperons également aux UV, les
envelopperons et leur appliquerons une
sorte de matériau
pour les rendre plus réalistes.
8. Générer des pierres sur les chemins: Bonjour et bienvenue chez
BlandarSpcedural bridge cars. Dans cette leçon, nous allons
créer la base de
nos briques de pierre Nous allons
donc créer des courbes droites sur lesquelles nous allons répartir
les briques de pierre Dans la leçon suivante, nous les
alignerons sur les courbes d'entrée. Nous n'utiliserons pas
notre configuration de pont pour le moment, car nous
allons construire cette configuration en briques de
pierre en tant que groupe de nœuds distinct, puis nous l'
importerons dans notre configuration de pont et utiliserons simplement le groupe de nœuds
existant. Donc pour l'instant, nous pouvons masquer le
pont avec cette icône en forme d'œil, et nous allons ajouter un nouvel objet, qui sera une courbe.
Je vais sélectionner Bézier Et je vais également tracer quelques courbes de test sur lesquelles nous
testerons notre configuration, afin que nous puissions simplement faire quelque chose
comme ça, je suppose. Et sur ces courbes,
nous allons développer
notre configuration Stone Break
et la tester également. Nous pouvons donc aller à l'arrêt du modificateur
et créer un nouveau modificateur. Je vais sélectionner les nœuds Geometri ici, cliquer sur Nouveau et les appeler
stone breaks Nous pouvons maintenant accéder à l'espace de travail de
Geometrines et commencer à travailler dessus Voici donc notre configuration de base du
géomètre, et la première chose à faire est de créer autant de courbes
qu' il y en a dans Donc, si vous parcourez cette entrée, vous pouvez voir que
deux splines sont construites
à partir de neuf points, et que nous devons créer
autant de courbes que dans l'entrée Donc, pour celui-ci, nous
pouvons d'abord créer autant de points qu'il
y a de courbes,
puis y créer
des courbes simples. Ajoutons donc un nœud de points. Et pour ce qui est du nombre, nous pouvons
déterminer le nombre de splines en ajoutant
un nœud de taille de domaine, qui nous indiquera
exactement le nombre de courbes Il suffit de passer
du maillage à la courbe, et cela
nous donnera le nombre de tours que nous inscrivons dans les points. Maintenant, si je produis les points, vous pouvez voir qu'il n'
y en a que deux. Et oui, vous pouvez
également le consulter ici. Nous allons maintenant créer une
courbe de base sur ces points. Les points sur
lesquels nous allons instancier
sont donc ces points, et l'instance
sera une ligne de courbe Vous pouvez maintenant voir qu'
il y a deux instances, et la prochaine étape
est que nous devons
définir la longueur de ces lignes
en fonction de la longueur de chaque courbe. Nous pouvons le faire de différentes manières, mais la plus simple,
à mon avis, est régler la longueur de cette courbe à un, puis de la redimensionner sur l'axe
approprié en fonction de la
longueur de notre courbe. Donc, si nous définissons ce départ ou si nous pouvons le
laisser à zéro, zéro, zéro, et je le mettrai à 100. C'est donc en fait juste sur l'axe X. Ensuite, si vous redimensionnez
cela sur l'axe X, vous pouvez voir qu'il
redimensionne les deux courbes sur l'axe
X à cette longueur que
nous saisissons pour la valeur X. Nous pouvons donc
les séparer en combinant XYZ, puis en le définissant simplement sur
un pour toutes ces valeurs Et si nous changeons cette valeur X, vous pouvez voir qu'elle change la
longueur des courbes. Le problème maintenant est que chaque courbe a une longueur
différente, mais cela devrait nous
convenir , car
ces entrées, vous pouvez voir ces carrés, ce qui signifie que nous pouvons saisir une valeur différente
pour chaque instance. Donc, pour déterminer la
longueur de chaque courbe, nous pouvons utiliser un exemple d'indice. Nous allons échantillonner
notre géométrie d'entrée. Nous voulons également
travailler avec une spline, c'est pourquoi nous allons passer à une spline Et la valeur que nous voulons
échantillonner est la longueur de la spline. Ces notes
nous indiquent la longueur de cette spline ainsi que le
nombre de points qu'elle contient, mais cela ne nous est pas vraiment
utile Nous avons juste besoin de la longueur, nous allons
donc associer
la longueur à la valeur, puis
la valeur au X. Maintenant, vous pouvez voir qu'elle a changé
en une sorte de longueur, et cela dépend de cet indice. Si je change cela, vous pouvez
voir que c'est plus court, et si je le remets
à zéro, c'est plus long. C'est parce qu'il
y a deux lignes. Je pense que celui-ci
a un indice zéro et 11 parce que si
nous le mettons à zéro, il est plus long, et si nous le mettons
à un, il est plus court. Pour saisir le bon index, il suffit d'utiliser l'
index de notre instance, nous pouvons
donc simplement ajouter l'index, qui devrait
nous donner dans ce contexte, l'
index de nos splines Et maintenant, nous ne
voyons toujours qu'une seule courbe, mais il devrait y avoir
deux courbes différentes. Et nous pouvons également vérifier cela en traduisant simplement un peu ces
instances Ajoutons donc une instance de traduction. Et nous allons simplement les traduire en
fonction de leur indice, nous pouvons
redimensionner cet indice avec un vecteur. Comme ça. Et si
je le mets à un, comme ceci en translation, vous pouvez voir que cela sépare, ou qu'il
déplace essentiellement la courbe avec indice un d'une certaine valeur Nous pouvons
donc simplement voir qu'il
existe deux courbes différentes. Si j'ajoute une nouvelle courbe comme celle-ci, vous pouvez voir qu'
elle a ajouté une troisième courbe et qu'elle fonctionne bien. La prochaine chose que nous
allons faire est
d'ajouter quelques paramètres
à notre groupe de nœuds, et nous allons commencer à
travailler sur les freins. Nous pouvons donc appuyer sur Fin pour
faire apparaître le menu de ce site, et nous ajouterons quelques
paramètres pour les briques. Tout d'
abord, nous ajouterons
quelques dimensions, afin qu'elles aient une longueur, une
largeur et une hauteur. Ajoutons donc de la longueur. La valeur par défaut peut être définie sur
0,5 et le minimum sur zéro, et je vais le dupliquer deux
fois en largeur et en hauteur. Je vais également définir la largeur
par défaut à 0,2 et la hauteur à 0,2, et je les réinitialiserai dans le modificateur afin que ces valeurs
par défaut soient
réellement appliquées. Nous voulons également un peu de hasard. Ajoutons donc le caractère aléatoire
uniquement pour la longueur, puis nous l'ajouterons également pour la largeur et la hauteur Je vais donc le dupliquer
une fois de plus et le renommer en
longueur aléatoire Et la valeur par défaut peut
être définie sur zéro, le
minimum sur zéro également. Maintenant que nous avons
quelques informations de base, nous pouvons commencer à travailler
sur le pont. Nous pouvons également encadrer
cette section et l'appeler génération de courbe ou de
courbe de base. Après avoir créé ces courbes, nous devons réaliser ces
instances afin de pouvoir travailler avec des points
individuels des courbes et pas uniquement avec les instances. La première chose que nous allons faire
est de rééchantillonner ces courbes en fonction de leur longueur Ajoutons donc une courbe de rééchantillonnage, et nous passerons
ce type à la longueur Nous allons
donc simplement définir
la longueur du segment que nous voulons et pas seulement le nombre
de points que nous voulons, et la longueur sera la longueur
de notre entrée de groupe Vous pouvez donc modifier comme ceci. Et maintenant, si nous passons la souris dessus, vous pouvez voir qu'il y a 30 points Si j'augmente la longueur, nous devrions avoir moins de points. Nous pouvons voir qu'il n'y en a
que sept car les pauses
seront plus longues, ce qui signifie que nous avons
besoin de moins de points. Nous allons maintenant déplacer un peu
ces points. Pour cela, nous
utiliserons la position définie. Et nous
les déplacerons uniquement sur l'axe X. Vous pouvez donc voir que si
je change la valeur X, cela change
l'emplacement de tous les points. Ce que nous voulons
déplacer, ce
sont
uniquement les points situés à l'intérieur des courbes Pour cela, nous pouvons utiliser cette sélection pour
sélectionner uniquement les points que nous
voulons déplacer Et pour sélectionner les points de terminaison, il existe ce que l'on appelle la sélection des points de
terminaison Et si nous fixons la longueur
à quelque chose
de plus élevé, nous pouvons peut-être aussi voir les points afin de
voir réellement une sorte de points. Nous pouvons donc ajouter une courbe au nœud de
points et nous
assurer de le définir pour l'évaluer afin qu'il ne
change pas les points. Et si nous convertissons également ces points en sommets,
nous pouvons réellement les voir. Donc, si je change la position initiale de la
valeur X, vous pouvez voir que maintenant elle ne
déplace que la sélection, mais que nous voulons en fait
déplacer les autres points Nous pouvons donc simplement annuler cette sélection en ajoutant un nœud à partir du nœud mathématique de
Bollin, ce
qui l'inversera.
Désormais, nous ne
déplacerons que les Désormais, nous ne
déplacerons points situés à l'intérieur de la
courbe Les valeurs par lesquelles
nous voulons déplacer ces points sont contrôlées
par le caractère aléatoire de la longueur Donc, si vous imaginez
qu'il y a peu de points, disons comme ça, et nous allons déplacer ce point Nous voulons seulement que cela le
déplace au maximum quelque part ici, car si
cela devait aller plus loin, cela pourrait se croiser avec d'autres points et cela
ne fonctionnerait pas bien Nous devons donc simplement limiter la plage à la longueur divisée par deux à moins la
longueur divisée par deux, car si vous avez mentionné que
cette partie est la longueur, ce n'est que la moitié de celle-ci. Ainsi, le caractère aléatoire de la longueur maximale est en fait la longueur
divisée par deux Le caractère aléatoire de la longueur nous
indiquera l'étendue cette plage dans laquelle nous
pouvons randomiser le décalage Et s'il est plus long que
la longueur divisée par deux, nous le fixerons simplement et ne le
laisserons pas aller plus loin. Déterminons donc d'abord la plage
réelle de notre caractère aléatoire. Je vais donc aborder la saisie de groupe, et nous devons fixer cette valeur afin de pouvoir
ajouter une valeur de serrage. Nous le fixons entre zéro
et la longueur divisée par deux. Nous allons donc diviser la longueur par deux. Comme ceci et utilisez le résultat
de la division au maximum. Maintenant, le caractère aléatoire de la longueur indique la plage maximale actuelle dans laquelle nous voulons
randomiser la position, et maintenant nous pouvons randomiser ou
créer une Ajoutons le hasard. Le minimum
sera inférieur à cette valeur. Multiplions donc
cela par moins un. Et le maximum
sera cette valeur. Alors branchons-le au maximum. Maintenant, nous pouvons simplement utiliser
cette valeur pour créer un vecteur avec cette
valeur sur l'axe X. Alors, combinons XYZ. Branchez ces deux X, et on branche ce
vecteur en offset. Vous pouvez maintenant voir que
tous les points sont dans leur position initiale. C'est parce que le
caractère aléatoire de la longueur est réglé sur zéro. Mais si nous augmentons
ce chiffre, vous pouvez voir que les points se déplacent ou
qu'ils ont l'impression d'être déplacés Vous pouvez également ajouter un
peu plus de points, et vous pouvez voir que
nous contrôlons le
déplacement de ces points. Cela signifie que nos points sont prêts, ou plutôt nos courbes, et nous pouvons maintenant commencer à
créer les briques
dessus pour créer la forme finale. Je vais donc supprimer ces points car nous allons maintenant
travailler avec les courbes. Et maintenant, ce que nous devons
faire, c'est pour chacun des bords. Disons que ça
ressemble à ça. Pour chacune de ces arêtes, nous allons créer un point ici et à 00 avec
le nœud des points, puis définir sa position sur la
position de l'arête appropriée, puis placer
un cube sur celles-ci. Nous allons donc d'abord
générer les points. Je vais ajouter un nouveau nœud de points. Et pour travailler avec les arêtes, nous devons en fait convertir
ces courbes en maillage. Ajoutons donc une courbe au maillage. Vous pouvez maintenant voir
que ce maillage comporte 16 sommets et 14 arêtes Comme il y a 14 arêtes, nous devons créer 14 points. Et pour obtenir ce nombre, nous pouvons
à nouveau utiliser la taille du domaine, comme nous
l'avons utilisée
pour compter nos courbes. Nous allons maintenant laisser
cela sur le maillage utiliser ce nombre d'arêtes et le
connecter à des points. Cela a créé 14 points, et il ne nous reste plus qu'à définir la
position de chaque point par
rapport au bord correspondant
du maillage d'origine. Nous pouvons donc utiliser cette prise de
position pour contrôler leur position. Et pour obtenir
la position du bord ou du centre du
bord de ce maillage, nous pouvons simplement ajouter un exemple d'indice. Nous allons échantillonner
des arêtes, il nous faut donc des arêtes. Nous voulons une position,
donc c'est un vecteur. La valeur sera la position
et l' indice sera l'
indice de notre point, nous pouvons
donc simplement ajouter un nœud d'index. Et comme nous travaillons avec les points dans ce contexte, utiliserons l'indice de chaque point, et nous pouvons simplement le brancher
et vous verrez que les points sont bien répartis
à l'intérieur de la courbe. Maintenant, sur chaque point, nous
allons créer un cube. Et maintenant, comme chaque cube
aura une dimension différente, nous pouvons utiliser, encore une fois, une approche
similaire à celle que nous avons
utilisée pour les courbes. Nous allons donc créer un cube dont toutes les longueurs ou tous les
côtés sont définis sur un, puis nous pouvons utiliser l'échelle pour modifier
individuellement les
dimensions de ces ruptures. Ajoutons donc une instance sur les points. L'instance sera un cube, et le cube ne peut
avoir qu'une taille par un mètre et les sommets
peuvent être deux pour le moment Vous pouvez voir que nous
avons ici de nombreux cubes
qui se croisent, mais ce
n'est pas vraiment un problème pour le
moment , car nous allons les
redimensionner je sépare ce vecteur en combinant XYZ et en
les mettant à un, vous pouvez voir que si je change la valeur X, cela
change la longueur La valeur Y est la largeur et la valeur Z est la hauteur. Donc pour l'instant, je vais simplement laisser largeur et la hauteur à
une petite valeur, quelque chose comme 0,2, et
nous allons nous concentrer sur la valeur X. La valeur X sera essentiellement la longueur de l'arête sur laquelle nous
instancions notre cube Donc, pour obtenir la
longueur de l'arête, nous pouvons à nouveau utiliser un échantillon d'indice. Je vais donc le dupliquer
avec Control Shift D. Et maintenant, au lieu du vecteur, nous voulons obtenir la
longueur de l'arête Nous allons
donc passer à float
et déconnecter cette société. Et au lieu de cela, nous devons d'une manière ou d'une autre obtenir la
longueur du bord. Pour cela, nous pouvons utiliser le nœud de sommets d'
arête, qui nous donnera
des positions car chaque arête possède deux sommets à partir
desquels elle existe Et nous pouvons prendre ces sommets et mesurer la distance
entre eux, ce qui
nous donnera essentiellement la longueur de cette arête Ajoutons donc un nœud de distance. Nous voulons la distance entre
la position un et la position deux, qui sont les positions
des sommets. Cette valeur
nous donnera la longueur de l'arête,
et la valeur échantillonnée
pourra être connectée à X.
Maintenant, si nous passons
à la vue par cadre nodal, vous pouvez voir que ces cubes sont parfaitement alignés et qu'ils
ne se croisent pas C'est exactement ce que nous
voulions, et Nous allons également
ajouter des lacunes. Ajoutons donc une nouvelle
entrée et appelons cela des lacunes. La valeur par défaut peut être définie sur
zéro et la valeur minimale sur zéro. Et pour les écarts,
il suffit de soustraire la
valeur de l'écart de la vague, et cela devrait bien
fonctionner Ajoutons donc une soustraction
et soustrayons un écart à cette valeur et ajoutons-la à X. Maintenant, si nous augmentons la valeur de
l'écart, vous pouvez voir que
nous contrôlons les écarts entre ces pauses Maintenant, vous pouvez voir que
nous pouvons contrôler les écarts. Nous pouvons également contrôler
le caractère aléatoire de la longueur. Vous pouvez voir que cela fonctionne bien. Et la longueur
peut également être contrôlée. Et dans l'ensemble, ça a l'air
plutôt bon, à mon avis. Et nous pouvons commencer à ajouter
les différents périmètres. Donc, pour le Y et le Z, nous utiliserons notre
largeur et notre hauteur, mais nous le ferons également de
manière aléatoire. Je vais donc dupliquer cette
longueur aléatoire deux fois. Le premier
sera le caractère aléatoire de la largeur. Le second
sera le caractère aléatoire de la hauteur, et je les placerai après qu'ils soient des
paramètres correspondants Et maintenant, nous pouvons utiliser une approche très
similaire à celle que nous avons utilisée. Mais pour l'instant, disons que nous
voulons contrôler la largeur. Nous avons donc une certaine largeur de valeur, puis nous avons le caractère aléatoire, qui nous donne la plage
de notre valeur aléatoire. Et pour générer
cette valeur aléatoire, nous avons besoin du minimum et du maximum, nous pouvons simplement obtenir la largeur
moins son caractère aléatoire, qui sera ce minimum, et la largeur plus le caractère aléatoire
seront le Ajoutons-les donc. Je vais
ajouter une nouvelle entrée de groupe. Nous allons générer le
minimum et le maximum. Je vais ajouter et soustraire des nœuds, et à chacun d'eux je vais ajouter le caractère aléatoire
de la largeur Permettez-moi de les échanger
et j'ajouterai une valeur aléatoire. minimum sera la soustraction et le maximum
sera l'addition, et nous pouvons le connecter à l'axe Y. Maintenant, si nous augmentons le
caractère aléatoire, vous pouvez voir que les briques
sont maintenant blanches au hasard, ce qui est plutôt
beau, à mon avis Nous pouvons également changer de modèle pour
que vous puissiez contrôler
différents modèles ici, et maintenant nous allons également faire la
même chose pour la hauteur. Pour cela, nous pouvons simplement
sélectionner ces nœuds, appuyer sur Shift D pour les dupliquer, et maintenant nous allons simplement les reconnecter au lieu d'
utiliser des valeurs de hauteur, également
définies différemment pour le moment, et nous les connecterons la coordonnée Z
du vecteur obtenu Maintenant, vous pouvez voir que la hauteur
peut
également être contrôlée de manière aléatoire, et celles-ci sont de
plus en plus belles. Parce que nous utilisons ici une
grande partie du hasard, nous voulons être en mesure
de contrôler cela Nous allons donc ajouter un périmètre de siège, qui sera un entier. On peut l'appeler siège. Et nous pouvons le connecter à tous
ces nœuds aléatoires. Mais avant cela, nous allons
faire quelques calculs, car
maintenant vous pouvez voir que cela
génère en fait des valeurs dans plages
similaires, car si
vous voyez une brique longue, elle est fine, et si
c'est une brique courte, elle est blanche, dans certains cas. Actuellement, ce ne
sont pas les mêmes graines. S'il s'agissait des mêmes graines, vous pouvez vraiment mieux le
voir. Les plus longs sont donc plus fins
et les plus courts sont plus larges. C'est parce qu'il utilise les mêmes graines et qu'il se trouve
dans des gammes similaires. Et pour résoudre ce problème, nous pouvons simplement saisir une graine différente pour
chacune de ces valeurs aléatoires, puis elle sera
vraiment aléatoire Nous avons donc un nœud
aléatoire gratuit ici. Donc, pour chaque week-end, j'
aime utiliser multiplicate at node, qui multipliera d'abord
le siège par quelque chose. Donc, disons,
20 ans, puis 12 ans. Et cela donnera simplement
une valeur aléatoire depuis le siège ou au hasard. Il est précalculé,
mais il doit être différent pour toutes les valeurs aléatoires Et je vais connecter ce résultat
à seat et je le ferai également
pour les deux valeurs
aléatoires restantes. Donc ici, je vais à nouveau utiliser le siège. Je vais utiliser une valeur différente ici. Donc c'est 32 et le sujet 23, branchez-le sur le siège
et pareil ici. Je vais utiliser 42 et
48, je ne sais pas. C'est assez aléatoire, et nous pouvons également
le brancher sur le siège. Vous pouvez maintenant constater que certaines des pauses
les plus longues sont plus larges
et d'autres plus fines, et c'est vraiment aléatoire. Et nous pouvons utiliser ce siège pour
modifier la randomisation. Encadrons un peu ces
notes. Je vais donc mettre ça de côté. Et dans cette partie, nous avons
déplacé les points. Appelons donc cela un déplacement
ponctuel. Ensuite, nous pouvons peut-être les
encadrer individuellement. C'est donc la hauteur.
C'est la largeur. Et ces notes sont
là pour la longueur. Alors, branchons-le sur la longueur. Ou, désolé, groupons-le simplement avec Control J
et appelons-le longueur. Et on peut simplement
les laisser comme ça. Je trouve que ça a l'air plutôt bien. Très bien, maintenant nous avons
nos briques et nous pouvons également les tester. Si j'ajoute une
nouvelle courbe ici, comme celle-ci, vous pouvez voir qu'elle a ajouté
une nouvelle courbe droite et généré des
ruptures aléatoires le long de celle-ci. Et maintenant, nous voulons également ajouter une
sorte de déplacement, peut-être
aussi un
peu plus de géométrie, et également créer des UV
de base pour cela C'est ce que nous allons
faire dans la prochaine leçon.
9. Aligner les pierres pour poncer les courbes: Bonjour, bienvenue dans le cours de bridge
procédural de Blenders. Dans cette leçon, nous allons
terminer ces briques de pierre Nous allons
donc leur ajouter un peu de
déplacement, un peu plus de géométrie
pour les rendre plus réalistes, des UV et un enroulement de base, puis nous allons enfin les aligner sur
les courbes de base. Travaillons donc d'abord
sur la forme de ces briques. Actuellement, il ne s'agit que
de briques de base ou de cubes, et nous devons ajouter un peu plus de
géométrie et de déplacement Donc, après cette
instance sur les points, que nous avons créée dans la leçon
précédente, ajoutons un nœud d'
instance réalisé. Nous pouvons maintenant travailler avec des cubes ou des points
individuels. Et pour
ce qui est de la géométrie, nous allons utiliser la surface de
subdivision, nous allons utiliser la surface de
subdivision, que nous allons voir ici, et vous
pouvez voir tout de suite qu' elle a créé des formes un peu
plus arrondies Et si on augmente le niveau, il est encore plus arrondi. quelle mesure cela est arrondi, nous pouvons contrôler cela à
l'aide du pli des bords, qui est
essentiellement un peu arrondi, et nous ajouterons des
périmètres de saisie Ajoutons donc une nouvelle entrée
qui sera la subdivision. La valeur par défaut sera un. Le minimum sera zéro, et le maximum sera 32, disons, et nous allons
l'intégrer au niveau. Comme ça. Et le pli du bord permet de voir si j'augmente
les subdivisions ici Vous pouvez voir que le pli des bords est un peu arrondi,
mais qu'il est inversé
car s'il vaut zéro,
il est entièrement arrondi,
et s'il est un,
ce mais qu'il est inversé
car s'il vaut zéro,
il est entièrement arrondi,
et s'il est un, tous des bords droits Nous allons donc simplement ajouter une
nouvelle entrée arrondie, et nous l'inverserons pour qu'elle corresponde à la valeur du pli des
arêtes est ce que l'on appelle cet
arrondissement, nous allons définir un facteur deux pour le
sous-type, car
celui-ci sera limité à 0-1 Et si nous
insérons immédiatement cet arrondissement dans le pli des bords,
vous pouvez voir que si
un arrondissement est égal à zéro,
tout est arrondi, et quand
c'est un, tout est droit vous pouvez voir que si
un arrondissement est égal à zéro, tout est arrondi, et quand
c'est un, tout est Nous avons donc juste besoin
de l'inverser pour pouvoir subdiviser, désolé, soustraire à un résultat comme celui-ci,
et nous pouvons connecter cette valeur soustraite Maintenant, si l'arrondissement est égal à
un, tout est arrondi, et s'il est égal à zéro, vous pouvez voir que c'est droit Si j'augmente les subdivisions, vous pouvez voir que ce sont des maillages à densité
assez élevée, quatre ou trois
sont
peut-être raisonnables, et vous pouvez jouer
avec ces valeurs Maintenant, ajoutons un peu
plus de déplacement. Donc, pour cela, nous
utiliserons un nœud de position défini, et nous utiliserons
cette valeur de décalage, qui les décalera dans
une direction aléatoire Nous pouvons utiliser
une valeur aléatoire pour cela, mais nous voulons que cela
soit plus continu, c'est pourquoi nous ajouterons une nouvelle texture de bruit et
nous utiliserons celle-ci. Si nous ajoutons la couleur, qui est
aussi un vecteur, à un décalage, cela deviendra assez compliqué, et c'est parce que la
couleur nous donne une valeur aléatoire 0 à 1 sur trois axes Mais ce que nous voulons, c'est que nous voulons quelque chose entre
moins un
et un, puis nous allons le réduire. Donc, pour le remappage,
nous utiliserons une clé à carte. Actuellement, cette couleur nous donne des valeurs comprises entre zéro et un,
et nous voulons qu'elles soient comprises
entre moins un et un. Et après avoir mappé cette valeur, nous la réduirons
à de meilleurs nombres. Maintenant, si je le branche dans
Offset et que je le réduis, vous verrez que si
la valeur d'échelle est assez petite, cela semble
plus intéressant que de simples sauts droits. Pour contrôler le bruit, vous
pouvez également modifier l'échelle. Donc, s'il est égal à zéro, le déplacement
sera plus fluide. Si je l'augmente, vous pouvez voir qu'ils
sont plus lisses. Et à mesure que j'augmente l'
échelle, cela devient de plus en plus dur. Ce seront donc deux
valeurs que vous
contrôlerez depuis
le groupe de nœuds. Ajoutons donc un nouveau socket, appelons-le échelle de bruit. Et le second
sera la puissance du bruit. La valeur par défaut pour l'échelle de bruit
peut être quelque chose comme free, et pour la puissance, elle peut
être quelque chose comme 0,1. Je vais donc les réinitialiser et nous les
brancherons sur notre nez ici. Ainsi, l'échelle du bruit
contrôlera l'échelle du bruit, et la puissance du bruit
contrôlera la valeur de l'échelle, qui contrôle la puissance que nous donnons au bruit pour
déplacer le maillage d'origine Vous pouvez maintenant voir que
nous pouvons bien
les contrôler à partir de la saisie du groupe. Et la dernière chose à faire est d'ajouter une sorte d'
UV et d'emballage. génial, c'est que nous avons utilisé le cube qui possède
déjà une carte UV. Il suffit donc de le stocker quelque part, puis de
l'utiliser dans le shader Pour les stocker, nous pouvons
utiliser l'attribut store named. Nous les enregistrerons pour chaque angle
, car c'est mieux
que de simplement utiliser des points lors de la
création de cartes UE. Le type est un vecteur, et
nous l'appellerons UVM. Comme ça. Assurez-vous que
cela ressemble à ceci, ou vous pouvez le nommer autrement, mais vous devez vous en souvenir et insérer cette carte
UV dans la valeur. Pour l'utilisation de la carte UV, nous
pouvons ajouter une nouvelle entrée, qui concernera le matériau. Ajoutons donc une nouvelle entrée,
changeons le matériau de type 2
et colletons le matériau Et ici, à la fin, nous pouvons utiliser le nœud de matériau défini
et définir ce matériau de l'entrée du groupe aux briques de
pierre comme ceci. Et maintenant, cela devrait être
relativement prêt à fonctionner. Nous allons tester un matériau
simple avec ceux-ci Je vais
donc ajouter un nouveau
matériau ici et l'appeler Bickmt pour un matériau en brique Et ici, dans l'onglet des modificateurs, je vais associer cette
brique à mes briques Vous pouvez voir qu'ils sont
maintenant blancs. Et si je passe à l'espace de travail d'ombrage et que je change ce principe
BSDF en quelque chose de différent, vous pouvez voir que nous pouvons
changer la couleur de Nous pouvons également utiliser notre carte d'
interface utilisateur en ajoutant nœud
d'attribut et en définissant nom du même nom que celui
que nous avons utilisé pour les cartes d'interface utilisateur. Maintenant, si je regarde ceci, vous
pouvez voir qu'ils ont de belles cartes UV comme celle-ci. Et pour cela, nous
pouvons, par exemple, intégrer à une sorte
de texture afin que je puisse utiliser texture
Vernoi. Ensuite, il suffit de connecter la couleur
dans le dégradé de couleurs et peut-être créer différentes
nuances comme celle-ci Ou peut-être pouvons-nous utiliser
une texture différente,
une simple texture de bruit
, connecter, encore une fois, UV au vecteur, le facteur
au dégradé de couleurs, et maintenant nous pouvons modifier
cela comme ceci Vous pouvez également constater que toutes
les briques ont désormais le même bruit. C'est parce qu'ils ont
tous la même carte UV. Pour rendre cela un
peu aléatoire, nous pouvons ajouter un nouvel attribut, qui générera
une valeur aléatoire pour chacune de ces briques Donc, si nous revenons
aux notes de géométrie
et que nous
créons ici une carte UV, et après avoir créé
les instances, nous pouvons stocker une valeur
pour chaque instance Je vais
donc ajouter un nouveau
magasin nommé attribut. Nous voulons le stocker par
exemple, et il sera flottant. Nous pouvons l'appeler aléatoire, par exemple, et pour
générer cette valeur, nous pouvons utiliser une valeur aléatoire,
qui sera de 0 à 1 L'ensemble peut être le point de départ de
notre entrée de groupe, et nous allons intégrer cette
valeur à cette valeur. Désormais, dans l'espace de travail d'ombrage, vous pouvez dupliquer
cet attribut, renommer au hasard Et si vous regardez ceci,
vous pouvez voir que chacune
des briques a une nuance
de gris légèrement différente. Et nous pouvons utiliser cette
valeur, par exemple, si nous passons cette valeur libre
à 40 et que vous vous pouvez voir que nous pouvons essentiellement changer le
siège de ce bruit. Et si vous utilisez cette valeur
aléatoire comme siège, chacune des briques devrait
maintenant avoir un bruit différent, et elles sont
plutôt belles. Nous pouvons associer cette couleur de base au principe BSDF et nous obtiendrons
peut-être un
peu plus Et oui, nous avons de
très belles briques, que nous pouvons également contrôler
depuis l'étape de modification. Nous pouvons définir leur longueur, caractère aléatoire de la longueur et toutes sortes de
paramètres ici Donc oui, maintenant nous avons de
belles briques. Et la dernière étape consiste à les
aligner sur les courbes
d'entrée, car nous voulons
maintenant pouvoir aligner
ces briques le long la courbe de base afin
de pouvoir utiliser pour notre pont. heure actuelle, les pierres se
cassent le long d'une courbe droite, et nous allons maintenant utiliser, encore une fois, une approche
très similaire à celle
que nous avons utilisée pour aligner des objets entiers lors création de trous
à l'intérieur de notre pont Pour cela, nous aurons besoin nos courbes d'origine
que nous pouvons obtenir à partir des entrées de groupe et des
objets que nous voulons aligner. Nous utiliserons à nouveau un nœud de courbe
simple, mais maintenant ce sera un peu différent car nous n'
avons pas une seule courbe, mais nous en avons plusieurs ou nous ne savons pas
combien de courbes nous avons. Nous allons donc utiliser cette entrée d'indice de
courbe. Pour déterminer l'indice de la courbe, nous devons stocker ces données
quelque part avant de créer tout cela, puis les réutiliser ici pour utiliser l'index
approprié. Le problème ici
est donc que
nous avons d'abord quelques courbes
droites de base lesquelles nous voulons
capturer l'indice, puis nous voulons que cet indice se propage ici à la fin,
puis l'utilise ici Le problème, c'est que
nous créons un tas de
nouvelles géométries parce que nous avons d'
abord les courbes
droites,
puis nous créons des
points à l'intérieur de celles-ci,
puis nous y nouvelles géométries parce que nous avons d'
abord les courbes
droites, puis nous créons des
points à l'intérieur de celles-ci, plaçons des cubes. Nous devons donc d'abord envoyer l'indice de nos courbes passives
aux points, puis
des points aux cubes Donc d'abord, pour cela, nous pouvons capturer
que c'est l'endroit où nous créons des
points sur les bords. Nous allons donc ajouter un nœud d'attribut de
capture, et nous voudrons
capturer l'index, qui est un entier des splines, et je vais insérer l'index comme valeur Et nous voulons le
transformer ici en détails. Nous allons donc stocker ici
l'attribut nommé après les points. Nous allons donc stocker la
valeur de chaque point, et ce sera un entier
pour le point. Et nous pouvons l'appeler, par
exemple, I en tant qu'index. Et pour obtenir cette valeur
d'ici à ici, je ne suis pas sûr que cela
fonctionnera immédiatement car vous pouvez voir que
si je la vois avec quber, toutes ces valeurs sont nulles Je peux également ajouter du texte d'attribut et vous pouvez voir que ce
sont tous des zéros Donc, pour obtenir cette valeur
correcte, nous pouvons utiliser l'index simple et nous pouvons connecter cette valeur capturée
à la valeur de
celle-ci, que nous devons également
définir sur un entier. Et maintenant, si nous insérons cette valeur dans l'attribut Sternmed, nous devrions avoir écrit des
données à l'intérieur de nos points Nous pouvons vérifier cela en ajoutant
un périmètre nommé ici. Nous allons le régler sur I
, puis faire apparaître le visualiseur. Et maintenant, vous pouvez voir
que sur la première courbe tous les points sont
marqués de zéros. La deuxième courbe contient toutes les valeurs. Si j'ajoute une nouvelle courbe, il y en a
une avec deux, et c'est exactement ce que nous voulons. Maintenant que nous instancions des cubes
sur ces points, cet attribut sera traduit points instanciés ou en cubes
instancés dans ce cas, et nous devrions pouvoir accéder à cet index original
ici où nous en avons besoin Donc, si j'affiche un attribut
nommé, donne la valeur I et que j'
ajoute un nouvel afficheur, vous pouvez voir qu'il
y a de nombreux chiffres parce que c'est pour chaque point, mais vous pouvez voir que tous ces nombres ont
des zéros et le second en a un,
ce qui est parfait Nous allons donc utiliser cette
valeur e pour l'indice de courbe. Nous allons passer ce facteur à la
longueur parce que nous utilisons la longueur comme exposition, c'est
vrai, parce que nous voulons ces sauts de tonalité se situent au début de la courbe et
ceux-ci à la fin Nous allons
donc utiliser leur position sur la valeur
X sur l'axe X
comme longueur ici. Ajoutons donc une position, séparons XYZ et utilisons
la valeur X pour la longueur Et nous allons maintenant utiliser la position, la
tangente et la normale Ajoutons donc une note de
position définie. Et pour l'instant, nous pouvons simplement régler la
position sur la position. Et si nous passons au cadre métallique, vous verrez qu'il y a
ces morceaux de mailles ici. Si j'augmente les écarts,
vous le verrez mieux. En fait,
les ruptures se trouvent toutes sur les courbes d'origine, mais elles sont
comprimées et ne
sont en fait que de simples
lignes. Mais il y a bien plus
de points ici qu'une simple ligne. Nous devons maintenant en déplacer
les autres axes. Ainsi, l'axe Y
sera notre tangente, par
exemple, car peu
importe ce que c'est Ajoutons donc un vecteur d'échelle. La position Y sera notre facteur d'échelle et nous
allons effectuer une mise à
l'échelle, désolé . C'est normal, car la normale pointe
quelque part ici, et nous allons la mettre en décalage. Maintenant, vous pouvez voir
qu'ils sont plats, mais nous avons leurs formes de base, puis le troisième axe, nous utiliserons le produit vectoriel
avec tangente et normale parce que la tangente
pointe dans cette direction, normale est ici, et le troisième
dont nous avons réellement besoin est produit
vectoriel de celui-ci car
cela nous
donnera un vecteur perpendiculaire
aux deux Créons donc un
produit croisé entre la tangente et la
normale et redimensionnons cette valeur
en fonction de la coordonnée Z
de notre maillage d'origine Et nous allons combiner
ces deux échelles en un seul vecteur en les
additionnant. Et si nous les mettons en offset, vous pouvez voir que nous avons bien aligné les pierres le long de
nos courbes d'origine. Vous pouvez donc voir que
tout fonctionne bien. Et si j'ajoute réellement
une nouvelle courbe comme celle-ci, elle générera des
points le long de celle-ci. Je peux voir quelques problèmes ici, et c'est parce qu'au début, vous pouvez voir que
cela est un peu compensé par rapport à celui-ci. Et c'est parce que pour mieux contrôler
son fonctionnement, nous avons déplacé nos maillages ici Et comme leur
valeur Y est désormais plus grande, elle est légèrement décalée par rapport
aux maillages d'origine Nous pouvons
donc simplement la désactiver Et si je le réaffiche, il devrait être parfaitement
aligné avec les courbes. Désolé, je vais dessiner
quelques-unes de ces courbes, et vous pouvez voir que cela
fonctionne bien sans aucun problème.
10. Ajouter des chemins de pierre pour créer un pont: Bonjour et bienvenue dans le cours
Blenders Procedural
Bridge Dans cette leçon, nous
allons enfin créer des briques de
pierre pour
notre pont en utilisant le groupe de nœuds que
nous avons créé appelé briques de
pierre et en le réutilisant
dans notre configuration de pont. Pour l'instant, nous pouvons cacher l'objet de
test que nous avons utilisé pour les briques de pierre et
remonter notre pont. Et maintenant, si nous accédons à espace de travail des nœuds de
géométrie
et
que vous appuyez sur Shift A, vous pouvez accéder aux groupes,
et ici vous pouvez voir votre groupe de nœuds Stone Brick. Si nous soulevons cette question, vous
pouvez voir que nous avons exactement les mêmes entrées que lors de l'étape de modification précédente. Mais maintenant, nous pouvons le
réutiliser ici et créer de belles
briques de pierre autour des balustrades. Ce sera donc la première
chose sur laquelle nous travaillerons. Ensuite, nous essaierons également d'
ajouter des pierres cassées autour ces trous pour terminer
ce joli pont. Donc, la seule chose dont
nous avons besoin est de créer des courbes
le long des rambardes, puis
de les insérer dans notre configuration de brise-pierres, et même pour les pierres
cassées autour des trous Avant cela, nous pourrions également regrouper un peu
ces notes parce que nous savons réellement
ce qu'elles font. Cette partie effectue distribution
de base de
l'ensemble des objets. Je vais donc l'appeler
distribuer des objets entiers, et cette partie au-dessus les
aligne le long de
la courbe d'origine Appelons donc cela aligner les
trous le long de la courbe de base. Maintenant, nous pouvons travailler
sur les briques de pierre. Pour créer des courbes
le long de nos rambardes, nous utiliserons une astuce simple, qui fonctionne de cette
manière, adhère à un profil Nous allons ajouter deux points ici à l' endroit où nous voulons que les courbes
des balustrades soient
, à savoir ces positions Nous n'ajouterons que quelques points
simples ici, puis après avoir
créé l'ensemble du pont, nous les séparerons et y
créerons des briques de pierre. Nous allons donc ajouter de nouveaux points. Et pour vous montrer comment fonctionne Word, je vais simplement ajouter un
nouveau point simple. Je vais le convertir en courbes, donc j'ajouterai des points
au nœud de courbes, et je vais l'intégrer à
cette géométrie de joint. Maintenant, si nous observons cette
courbe après le déplacement, ce que nous voulions, vous pouvez voir que maintenant, lorsque
je place le point ici, ou maintenant vous pouvez réellement
utiliser le point de vue. Si je le mets, vous pouvez
voir qu'il est là. Je vais le mettre quelque part
ici, par exemple. Et si je regarde la géométrie du
balayage, vous pouvez voir qu'il y a
cette courbe en haut, que nous pouvons contrôler
avec notre point Donc, si je le déplace, vous pouvez voir qu'
il bouge bien. Il suffit donc de créer ces deux points,
puis de
les séparer de la géométrie de base et de les utiliser pour
les briques de pierre. Nous devrons calculer les
positions de ces points,
et celles-ci devraient
être similaires à celles nous avons utilisées pour les profils de nos
balustrades. Donc, pour celui-ci en haut à gauche, sera quelque chose comme, Oh, ce sera quelque chose comme, Oh,
faisons-le réellement, puis nous utiliserons la
même technique qui consiste échelonner sur le
X xs par moins un, ce qui générera un point ici. Nous allons donc créer ce
point où la position, je vais juste combiner XYZ Sur l'axe Y, cela
devrait être assez simple car ce sera cette
hauteur plus cette hauteur, donc c'est la hauteur du rail plus la hauteur. Je vais donc ajouter une entrée de groupe et une partie ou, à la hauteur du rail
avec la hauteur d'origine, brancher sur l'axe Y. Et maintenant, l'axe X
sera la largeur du pont moins la
moitié du rail. Ajoutons donc une addition
où elle sera soustraite. Nous allons soustraire de la largeur, et la valeur que
nous allons soustraire est largeur du
rail divisée par deux Vous pouvez
donc la multiplier par 0,5 et l'
insérer dans l'axe X. Attendez, j'ai vérifié le point, et il est là, ce qui
signifie que sur l'axe X, il ne devrait être que, largeur doit être divisée par
deux, puis en soustrayant Nous pouvons donc également le
multiplier par 0,5. Et maintenant, si nous voyons ceci, vous pouvez voir qu'il devrait être
au bon endroit ici. Maintenant, nous pouvons simplement utiliser
la géométrie de transformation et la redimensionner sur l'axe
X par moins
un et la joindre à l'original. Donc
quelque chose comme ça. Mais vous pouvez voir que si nous le faisons avant les points aux courbes, cela relie réellement
ces points à la courbe, et ce n'est pas ce que nous voulons vraiment. Nous voulons que cela soit séparé. Faisons-le donc après les
points de la courbe no. Cela ressemblera donc à
ceci. Et maintenant, nous avons
ces points ici, qui devraient créer notre profil,
que nous recherchons. Vérifions-le ici
après le déplacement. Et oui, maintenant vous
pouvez voir qu'il y a ces courbes ici et ici. Si, par exemple, je change un peu cela. Oui, vous pouvez voir que la
deuxième courbe se déplace, donc ça a l'air plutôt bien. Il ne nous reste plus qu'à les
séparer de notre maillage. Nous pouvons le faire en
leur attribuant une
sorte d'attribut , puis en vérifiant simplement s' il existe réellement
pour chaque point Ajoutons donc un attribut
nommé au magasin. Nous pouvons définir cela comme du
harcèlement, par exemple, et si c'est trop vrai, nous appellerons cela la courbe du rail. Et maintenant, si nous poursuivons
le déplacement et que nous ajoutons un attribut nommé avec le même nom et que nous
voyons s'
il existe, il semble que c'est vrai
pour tous les points. Nous devrons donc également
définir cette valeur sur falls. Peut-être si nous visualisons l'attribut. Oui, si nous utilisons
uniquement l'attribut, vous pouvez voir qu'ici
quelque chose est vrai. Oui, c'est vrai ici, donc on peut l'utiliser pour ça. Et nous pouvons simplement utiliser
une géométrie séparée. Nous allons séparer les
points et sélectionner uniquement les points pour lesquels
cet attribut est vrai. Maintenant, si nous examinons la sélection, vous pouvez voir que nous avons
ces courbes parfaites, que nous allons simplement
intégrer à nos brise-pierres. Donc, pour résumer, nous avons
créé deux points, enregistré une sorte de valeur pour pouvoir les
séparer plus tard. Ensuite, nous avons utilisé
une géométrie séparée et utilisé cet attribut
pour les séparer. Nous avons maintenant ces belles courbes. Actuellement, ce sont des maillages, nous devrons
donc
les reconvertir en courbes Ajoutons donc un maillage
au nœud de courbe. Maintenant, ce sont des courbes. Et oui. La dernière étape consiste
simplement à ajouter les pierres cassées. Ajoutons donc un brise-pierre et intégrons cette courbe
à la géométrie. Et maintenant, si nous regardons cela, vous pouvez voir que nous avons des
sortes de pierres ici. Nous allons juste jouer un peu avec
ces valeurs. Alors peut-être quelque chose comme ça. Le problème ici est que
vous pouvez voir qu'elles
pivotent dans le mauvais sens, et nous pouvons simplement résoudre ce problème en réglant
la normale de ces courbes Réglons donc la courbe
normale, désolé, définissons la courbe normale
et définissons-la sur ZA, ce qui devrait réinitialiser
les normales de deux points vers le haut Et maintenant, ils sont
bien alignés. Nous pouvons également utiliser
notre matériau en brique et peut-être à une certaine longueur
de manière aléatoire. Augmentez également la longueur et vous pourrez jouer
avec ceux-ci comme vous le souhaitez. Si nous combinons cela avec
le maillage obtenu, vous verrez qu'
ils sont plutôt beaux. Je pourrais les raccourcir. Quelque chose comme ça,
le caractère aléatoire de la longueur peut être quelque chose comme 0,1 Et maintenant, vous pouvez voir que nous
avons de jolies pierres ici, qui fonctionnent très bien
avec les balustrades. Nous voulons également
pouvoir contrôler tous
ces paramètres depuis l' extérieur du groupe de nœuds,
mais nous l' ajouterons à
la fin lorsque nous aurons également travaillé sur les ruptures de pierres
autour des trous. Très bien, donc si nous
examinons la partie où nous
créons les trous, vous pouvez voir que ce nœud
booléen maillé nous donne
également ces arêtes qui se
croisent C'est quelque chose
que nous pourrons peut-être utiliser. Essayons donc de
séparer ces arêtes
du maillage d'origine. Je vais ajouter une
géométrie séparée comme celle-ci, la géométrie sera
le maillage que nous pouvons utiliser
et les arêtes interdistinctes
seront destinées à la sélection Et maintenant, si nous voyons cela, vous pouvez voir que si nous utilisons
la géométrie séparée, cela nous donne également des
arêtes que nous ne voulons pas. Mais si vous passez à Edge, cela crée exactement
ce que nous recherchons. Tels sont donc les contours selon lesquels nous voulons
créer nos ruptures de pierre. Convertissons donc ces maillages en courbes. Avec maillage pour courber. Ensuite, nous pouvons simplement
dupliquer les
cassures de pierre pour le moment et les utiliser. Si vous regardez ceci, vous
pouvez voir que nous avons très belles pierres cassées
le long des trous Je trouve que c'est
plutôt beau et nous pouvons nous servir pour terminer l'ensemble de
notre pont. Donc, si nous combinons également cela avec la géométrie du joint
et que nous l'intégrons à la résolution, vous pouvez voir que les trous sont bien disposés avec
les pierres qui les entourent, et nous pouvons modifier tous
leurs paramètres ici. Maintenant, la dernière partie consiste ajouter tous ces paramètres
à notre entrée de groupe, et nous pouvons également simplifier
un peu les choses en utilisant seule configuration de briques de pierre et en y connectant toutes
ces courbes Pour cela, je vais simplement supprimer les briques de pierre
des balustrades, et je vais combiner ces
deux courbes Ajoutons donc la géométrie du joint. Et nous allons relier ces courbes
de balustrade et ces courbes entières. Combinons-les donc
avec la géométrie de jointure, et nous associerons ce résultat de la géométrie Jen aux briques de pierre. Maintenant, si nous regardons ceci, vous
pouvez voir que nous avons belles briques de pierre.
Tout au long de tout cela. Et nous pouvons simplement le combiner
avec le maillage que nous obtenons
du boolin maillé ici
jusqu'à la géométrie du gène Et oui, maintenant nous avons
le pont terminé. La dernière chose
est donc que nous allons ajouter quelques entrées pour ceux-ci ainsi que
du matériel général sur l'ensemble du pont. Ce n'est donc pas comme
ce blanc ou il a une sorte de texture grise
ou de pierre. Nous allons donc maintenant ajouter tous
ces paramètres à
notre entrée de groupe. Je vais donc ajouter un nouveau panneau
et l'appeler Stone Breaks. Maintenant, si j'évoque l'entrée de groupe, nous pouvons utiliser ce socket vide
pour créer une nouvelle entrée de groupe, en fait, et elle sera
ajoutée ici en haut. Si nous le faisons pour chacun
d'entre eux, je pense que c'est toujours mieux que
de créer tous les périmètres à la main Je vais donc le faire pour
toutes ces entrées. Maintenant, je vais déplacer tous ces périmètres vers
mon panneau de briques de pierre C'est bon. Maintenant que nous avons terminé, vous pouvez voir que nous pouvons contrôler ces périmètres à partir de
la saisie du groupe Et nous pouvons également ajouter une teinte
lissante pour les pauses. Ajoutons donc
passons à Stone Breaks en sélectionnant le groupe de nœuds et en appuyant sur Tab, ce qui nous déplacera
vers le groupe de nœuds. Et je vais ajouter une autre entrée, qui sera légèrement teintée. Et je vais ajouter des nuances lisses, en fonction de la valeur
que nous obtenons ici. De plus, le type
sera défini sur Bolin. Et je vais simplement connecter Shade Smooth de l'entrée group
à la valeur Shade Smooth. Maintenant, si je touche à nouveau, je reviendrai à mon groupe de nœuds
d'origine. Et si je le désactive, vous verrez que cela aura l'
air un peu mieux. Et oui, je trouve que ça a l'
air plutôt sympa. Ajoutons également ce
mouvement de nuances à ma saisie de groupe. Je vais donc ajouter une autre entrée et la déplacer vers mon panneau de briques en
pierre. Vous pouvez toujours masquer les
prises inutilisées à l'aide de Control H Cela sera
donc un peu
plus esthétique que d'avoir ce long
groupe d'entrées ici. Alors maintenant, ajoutons également du
matériel pour notre pont. Je vais donc ajouter une nouvelle entrée, que j'
appellerai du matériel. Et nous allons également attribuer ce matériau à
notre maillage d'origine. Ajoutons donc un matériau défini ici et utilisons ce premier
matériau à notre matériau. Et maintenant, nous pouvons créer un matériau très
simple pour cela. Ajoutons donc un nouveau matériau, appelons-le bridge met. Pour l'instant, je vais le régler
sur quelque chose de gris et l'attribuer à ma configuration. Et si vous passez à l'espace de travail d'
ombrage, nous pouvons définir
des valeurs différentes pour cela ou créer de
meilleures textures avec du bruit Nous pouvons donc, par exemple, utiliser texture
verni et utiliser la distance Et maintenant, nous pouvons intégrer la palette
de couleurs à la distance. Peut-être réduisez ou
augmentez cette texture, et passons
à la distance par rapport au bord. Cela nous donnera des valeurs un
peu plus intéressantes. Et en le
combinant avec, par exemple, la distance, nous pouvons l'utiliser. Par exemple, pour utiliser la normale,
ajoutons donc une note de pompe. Nous allons connecter cette valeur à la hauteur et la
normale à la normale, et nous pouvons l'utiliser, peut-être
la remettre en arrière, vous pouvez voir que nous avons ces
déplacements intéressants qui
ressemblent à de la texture de la pierre ou à des pierres, et nous pouvons jouer avec ceux-ci Une dernière chose j'ajouterais, c'est que les ombres
bougent également de notre pont Passons donc aux notes géométriques. Ajoutons une nouvelle entrée et
appelons-la shade smooth. Changez le type en Bolin. Et nous pouvons le faire en
réglant le matériau. Nous pouvons également utiliser Angle
smooth ou lisse bi angle. Et maintenant, ce fait d'ignorer la netteté contrôlera le mouvement de nos teintes Connectons donc les nuances,
passons à cela et activons-le. Maintenant, ça a l'air un peu mieux. Et oui, je pense que notre
pont est terminé. Et maintenant, nous pouvons jouer
avec tous les périmètres. Vous pouvez, par exemple, simplement modifier la forme. Je peux tous les supprimer. Et si je veux juste un pont
droit, je peux faire quelque chose comme ça. Merci beaucoup d'avoir
suivi
ce cours de bridge sur les nœuds de Blender Geometri J'espère que vous avez
trouvé de précieux conseils pour créer avec
Geometri notes N'oubliez pas de laisser un avis. Cela nous aide vraiment à
comprendre ce qui s'est bien passé et ce
que nous pouvons améliorer. Et si ce cours vous plaît, oubliez
pas de consulter
nos autres leçons. Nous en avons un qui vous
apprend à créer un feu stylisé entièrement animé
généré de manière procédurale et un autre qui vous permet de créer un
mur de briques à partir de zéro Rendez-vous dans le prochain cours
et bonne création.