PartOperation
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Una classe抽a che tutti i pezzi basati su modellazione solida ereditano.
Sommario
Proprietà
Il livello di dettaglio utilizzato per rendere la parte modellata solida.
Un angolo in gradi che influenza la schermatura liscia di una parte modellata solida.
Il numero di poligoni in questo modello solido.
Imposta se la PartOperation può essere colorata utilizzando le proprietà di colore ereditarie.
Determina il livello di dettaglio che la fisica della parte aderirà alla sua Mesh, maglia.
Determina la rappresentazione geometrica utilizzata per calcolare le forze e i torchi aerodinamici.
Determina se una parte è immutabile fisicamente.
La velocità angolare dell'assemblaggio della parte.
Il centro di massa dell'assemblaggio della parte nel Spaziodel mondo.
La velocità lineare dell'assemblaggio della parte.
La massa totale dell'assemblaggio della parte.
Un riferimento alla parte root dell'assemblaggio.
Determina il tipo di superficie per la parte posteriore di una parte (+Z direzione).
Determina il tipo di superficie per la parte inferiore di un'auto (-Y direzione).
Determina il colore di una parte.
Determina la posizione e l'orientamento della BasePart nel Mondo.
Determina se una parte può collisionare con altre parti.
Determina se la parte è considerata durante le operazioni di query spaziale.
Determina se Touched e TouchEnded eventi si attivano sulla parte.
Determina se un part casta un'ombra o no.
Descrive la posizione mondiale in cui si trova il centro di massa di una parte.
Descrivi il nome di un Gruppodi collisione di una parte.
Determina il colore di una parte.
Indica le proprietà fisiche attuali della parte.
Determina diverse proprietà fisiche di una parte.
Utilizzato per abilitare o disabilitare le forze aerodinamiche su parti e assemblaggi.
La dimensione fisica reale della BasePart come vista dal motore fisico.
Determina il tipo di superficie per la parte anteriore di una parte (-Z direzione).
Determina il tipo di superficie per la parte sinistra di un'auto (-X direzione).
Determina un moltiplicatore per BasePart.Transparency che è visibile solo al client locale.
Determina se una parte è selezionabile in Studio.
Descrive la massa della parte, il prodotto della sua densità e volume.
Determina se la parte contribuisce alla massa totale o all'inertia del suo corpo rigido.
Determina le proprietà fisiche predefinite e la texture di una parte.
Il nome di MaterialVariant .
Descrive la rotazione della parte nel Mondo.
Specifica l'Offset del pivot della parte dal suo CFrame .
Descrive la posizione della parte nel Mondo.
Tempo dal prossimo aggiornamento Aggiornarmento.
Determina quanto una parte rifletta la skybox.
Descrive la piccola modifica ammessa dalla metodo Ridimensiona .
Descrive le facce su cui una parte può essere ridimensionata.
Determina il tipo di superficie per il lato destro di una parte (+X direzione).
La regola principale per determinare la parte della radice di un'assemblaggio.
La rotazione della parte in gradi per i tre assi.
Determina le dimensioni di una parte (Lunghezza, larghezza, altezza).
Determina il tipo di superficie per la parte superiore di un'auto (+Y direzione).
Determina quanto una parte può essere vista attraverso (l'inversario dell'opacità della parte).
Metodi
Sostituisce la geometria di questo PartOperation con la geometria di un altro PartOperation .
Applica un impulso angolare all'assemblaggio.
Applica un impulso all'assemblaggio al centro di massa dell'assemblaggio.
Applica un impulso all'assemblaggio nella posizione specificata.
Restituisce se le parti possono collidere tra loro.
Controlla se puoi impostare la proprietà di rete di una parte.
Restituisce una tabella di parti connesse all'oggetto da qualsiasi tipo di Articolazionerigida.
Restituisci tutti i Giunti o Constritti che sono connessi a questa parte.
Restituisce il valore della ProprietàMass .
Restituisce il giocatore corrente che è il proprietario di rete di questa parte, o nulla in caso di Server.
Restituisce vero se il motore di gioco decide automaticamente il proprietario della rete per questa parte.
Restituisce la parte di base di un'assemblazione di parti.
Restituisce una tabella di tutte le parti BasePart.CanCollide vere che interseccano con questa parte.
Restituisce la velocità lineare dell'assemblaggio della parte al posizione specificata rispetto a questa parte.
Restituisce vero se l'oggetto è connesso a una parte che lo contiene (ad esempio, una parte Anchored )), altrimenti restituisce false.
Cambia la dimensione di un oggetto proprio come si fa con lo strumento di ridimensionamento Studio.
Imposta il giocatore attuale come proprietario di rete per questo e tutte le parti connesse.
Lets il motore di gioco decidere dinamicamente chi si occuperà della fisica della parte (uno dei client o il Server).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nuova IntersectOperation dalla geometria sovrappositiva della parte e dalle altre parti nell'vettorefornito.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nuova UnionOperation dalla parte, meno la geometria occupata dalle parti nell'vettorefornito.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nuova UnionOperation dalla parte, oltre alla geometria occupata dalle parti nell'vettorefornito.
Ottiene il pivot di un PVInstance .
Transforms the PVInstance along with all of its descendant PVInstances such that the pivot is now located at the specified CFrame .
Eventi
Eventi provenienti da BasePartSi attiva quando una parte smette di toccare un'altra parte come risultato di un movimento fisico.
Si attiva quando una parte tocca un'altra parte come risultato di un movimento fisico.
Proprietà
RenderFidelity
Questa proprietà determina il livello di dettaglio che la parte modellata solida sarà mostrata. Può essere impostato sui possibili valori dell'Enum.RenderFidelity枚ame RenderFidelity .
Il valore predefinito è Automatic , il che significa che il dettaglio della parte è basato sulla sua distanza dalla fotocamera come descritti nella seguente tabella.
<tbody><tr><td>Menos di 250 caratteri</td><td>Più Alto</td></tr><tr><td>250-500 studs</td><td>Medio</td></tr><tr><td>500 o più studs</td><td>Il più basso</td></tr></tbody>
Distanza dalla fotocamera | Fiducia di rendering |
---|
SmoothingAngle
Questa proprietà rappresenta un angolo in gradi per un valore di soglia tra normali del viso tra un modello solido parte. Se la differenza è inferiore al valore, i normali verranno adattati per levigare la differenza. Mentre un valore tra 30 e 70 gradi di solito produce un buon Risultato, i valori tra 90 e 180 non sono raccomandati poiché possono causare un effetto di "ombreggiatura" su le
Nota che lo smoothing non influisce sui normali tra diversi materiali o colori diversi.
UsePartColor
Imposta se il PartOperation può essere colorato utilizzando le proprietà BasePart.Color o BasePart.BrickColor. Quando è vero, l'intera unione sarà colorata come per 2>Class.BasePart.Color|Color2> o 5>
Metodi
SubstituteGeometry
Sostituisce la geometria di questo PartOperation con la geometria di un altro PartOperation . Ciò rende più facile utilizzare la geometria
Nota che se chiami questo metodo su un PartOperation con figlio Attachments o Constraints, dovresti calcolare le istanze interessate con 1> Class.GeometryService:CalculateConstraintsToPreserve()|CalculateConstraintsToPreserve()1> , quindi eliminare quelle il cui padre
Parametri
Il PartOperation la cui geometria sostituirà la geometria di questo PartOperation .
Restituzioni
Campioni di codice
local GeometryService = game:GetService("GeometryService")
local mainPart = workspace.PurpleBlock
local otherParts = {workspace.BlueBlock}
local options = {
CollisionFidelity = Enum.CollisionFidelity.Default,
RenderFidelity = Enum.RenderFidelity.Automatic,
SplitApart = false
}
local constraintOptions = {
tolerance = 0.1,
weldConstraintPreserve = Enum.WeldConstraintPreserve.All
}
-- Perform union operation in pcall() since it's asyncronous
local success, newParts = pcall(function()
return GeometryService:UnionAsync(mainPart, otherParts, options)
end)
if success and #newParts > 0 and mainPart:IsA("PartOperation") then
-- Set first part in resulting operation as part to use for substitution
-- First part is simply an option; this can be any PartOperation
local substitutePart = newParts[1]
-- Reposition part to the position of main part
substitutePart.CFrame = mainPart.CFrame
-- Calculate constraints/attachments to either preserve or drop
local recommendedTable = GeometryService:CalculateConstraintsToPreserve(mainPart, newParts, constraintOptions)
-- Substitute main part's geometry with substitution geometry
mainPart:SubstituteGeometry(substitutePart)
-- Drop constraints/attachments that are not automatically preserved with substitution
for _, item in pairs(recommendedTable) do
if item.Attachment then
if item.ConstraintParent == nil then
item.Constraint.Parent = nil
end
if item.AttachmentParent == nil then
item.Attachment.Parent = nil
end
elseif item.WeldConstraint then
if item.Parent == nil then
item.WeldConstraint.Parent = nil
end
end
end
-- Destroy other parts
for _, otherPart in pairs(otherParts) do
otherPart.Parent = nil
otherPart:Destroy()
end
end