modélisationsolide

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Modélisation solide est le processus de raccord de parties ensemble de manières uniques pour former des formes plus complexes connues sous le nom de unions ou intersections .Vous pouvez effectuer quatre opérations de modélisation solides en utilisant les outils dans l'onglet modèle de la barre d'outils.

Studio's Model tab with the Solid Modeling tools highlighted.
OutilsRaccourciAvertissement
UnionShiftCtrlG  (Windows) ShiftG (Mac)Rejoignez deux ou plusieurs parties ensemble pour former une seule union solide.
IntersectionnerShiftCtrlI  (Windows) ShiftI (Mac)Intersection des parties chevauchantes en une seule intersection solide.
NégationShiftCtrlN  (Windows) ShiftN (Mac)Nier des parties, utile pour faire des trous et des indentations.
SéparéShiftCtrlU  (Windows) ShiftU (Mac)Séparez l'union ou l'intersection en ses parties individuelles.

Parties de l'Union

L'outil union joint deux ou plusieurs parties pour former un seul solide .Par défaut, une nouvelle union respecte la propriété Color de chacune de ses parties, bien que vous puissiez activer sa propriété UsePartColor pour changer l'ensemble de l'union en une couleur spécifique.

Block and cylinder parts overlapping

Pour combiner des parties ensemble en union :

  1. Sélectionnez toutes les parties que vous souhaitez rejoindre ensemble.
  2. Cliquez sur le bouton Union . Toutes les parties se combinent en un solide UnionOperation avec le nom Union .

Intersectionner les parties

L'outil Intersection intercepte les parties superposées en une seule solidité IntersectOperation .Par défaut, les couleurs du visage de l'intersection résultante sont empruntées à la propriété Color de la partie originale, bien que vous puissiez activer sa propriété UsePartColor pour changer toute l'intersection en une couleur spécifique.

Block and cylinder parts overlapping

Pour intersecter les parties chevauchantes ensemble :

  1. Sélectionnez toutes les parties que vous souhaitez intersecter.
  2. Cliquez sur le bouton Intersection. Toutes les parties se combinent en un solide avec le nom Intersection.

Nier les parties

L'outil Nier nie une partie afin que lorsqu'elle est unie à une autre partie, la forme de la partie négociée soit soustraite de l'autre partie.

Negated block overlapping a cylinder

Pour soustraire une partie d'autres parties superposées :

  1. Sélectionnez la partie que vous voulez nier par rapport à d'autres parties.
  2. Cliquez sur Nier . La partie devient un NegateOperation avec le nom Partie négative et devient rose et translucide pour indiquer son état.
  3. Sélectionnez à la fois la partie négative et les parties que vous voulez en soustraire.
  4. Cliquez sur union . La partie négative est coupée des parties chevauchantes incluses.

Unions ou intersections séparées

L'outil séparé sépare un UnionOperation en ses parties individuelles, servant essentiellement d'outil "retour" pour les unions et les intersections.

Pour séparer une union ou une intersection en parties individuelles :

  1. Sélectionnez l'union ou l'intersection.
  2. Cliquez sur Séparer . Les parties se séparent à nouveau dans leur forme originale.

Rendre la fidélité

Par défaut, les nouvelles opérations modélisées solides seront toujours affichées dans la fidélité au rendu Automatic, ce qui signifie que les détails de la pièce sont basés sur sa distance de la caméra comme indiqué dans le tableau suivant.

Distance de la caméraRendre la fidélité
Moins de 250 studsPlus élevé
250-500 studsMoyen
500 ou plus de studsPlus bas

Angle de lissage

La propriété d'une pièce modélisée solide SmoothingAngle adoucit les angles entre les surfaces adjacentes de la même couleur ou matériau.Une valeur plus élevée produit une apparence plus lisse alors qu'une valeur plus faible produit une apparence plus rugueuse avec des bords plus pointus.

Bien que la valeur entre 30 et 70 degrés produise généralement un bon resultats, les valeurs entre 90 et 180 ne sont pas recommandées car elles peuvent provoquer un effet de « ombrage » sur les unions et les intersections avec des bords pointus.

modélisationsolide en expérience

En plus des outils Union , Intersection et Négation dans Studio, vous pouvez permettre aux joueurs d'utiliser des opérations de modélisation solides pendant qu'ils sont dans une expérience via , et .Toutes ces méthodes doivent être appelées sur un BasePart et elles nécessitent toutes une série d'une ou plusieurs parties à unir, à intersecter ou à soustraire de la partie appelante.

UnionAsync()

Pour démontrer UnionAsync() , l'utilisation suivante Script utilise le Part1 BasePart de l'espace de travail, le joint avec le Part2 , le Part3 et le Part4 BaseParts , puis parents le résultat UnionOperation à l'emplacement original de Part1 .


local Workspace = game:GetService("Workspace")
local mainPart = Workspace.Part1
local otherParts = {Workspace.Part2, Workspace.Part3, Workspace.Part4}
-- Effectuer une opération d'union
local success, newUnion = pcall(function()
return mainPart:UnionAsync(otherParts)
end)
-- Si l'opération réussit, positionnez-la à la même position et attribuez-la à l'espace de travail
if success and newUnion then
newUnion.Position = mainPart.Position
newUnion.Parent = Workspace
end
-- Détruire les parties originales qui restent intactes après l'opération
mainPart:Destroy()
for _, part in otherParts do
part:Destroy()
end

IntersectionnerAsync()

Pour démontrer , l'utilisation suivante utilise le Part1 de l'espace de travail, l'intersectionne avec le Part2 et Part3 , puis parents le résultat à l'espace de travail à l'emplacement original de Part1 .


local Workspace = game:GetService("Workspace")
local mainPart = Workspace.Part1
local otherParts = {Workspace.Part2, Workspace.Part3}
-- Effectuer l'opération d'intersection
local success, newIntersect = pcall(function()
return mainPart:IntersectAsync(otherParts)
end)
-- Si l'opération réussit, positionnez-la à la même position et attribuez-la à l'espace de travail
if success and newIntersect then
newIntersect.Position = mainPart.Position
newIntersect.Parent = Workspace
end
-- Détruire les parties originales qui restent intactes après l'opération
mainPart:Destroy()
for _, part in otherParts do
part:Destroy()
end

SoustractionAsync()

Pour démontrer , l'utilisation suivante utilise le Part1 de l'espace de travail, négatif le Part2 , Part3 , et Part4 de celui-ci, puis parent le résultat à l'espace de travail à l'emplacement original de Part1 .


local Workspace = game:GetService("Workspace")
local mainPart = Workspace.Part1
local otherParts = {Workspace.Part2, Workspace.Part3, Workspace.Part4}
-- Effectuer une opération de soustraction
local success, newSubtract = pcall(function()
return mainPart:SubtractAsync(otherParts)
end)
-- Si l'opération réussit, positionnez-la à la même position et attribuez-la à l'espace de travail
if success and newSubtract then
newSubtract.Position = mainPart.Position
newSubtract.Parent = Workspace
end
-- Détruire les parties originales qui restent intactes après l'opération
mainPart:Destroy()
for _, part in otherParts do
part:Destroy()
end