Workspace

Visualizza obsoleti

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Non costruibile
Assistenza

Il lavoro principale di Workspace è quello di mantenere oggetti che esistono nel Mondo3D, effettivamente BaseParts e Attachments .Mentre tali oggetti sono discendenti di Workspace , saranno attivi.Per BaseParts , questo significa che verranno resi e interagiranno fisicamente con altre parti e il Mondo.Per Attachments , questo significa che gli oggetti decorati a loro, come ParticleEmitters , Beams e BillboardGuis , Renderizzare.

Capire questo comportamento è importante, poiché significa che gli oggetti possono essere rimossi da Workspace quando non sono necessari.Ad esempio, la mappa Models può essere rimossa quando viene riprodotta una mappa diversa.Gli oggetti che non sono immediatamente necessari nel mondo 3D sono generalmente memorizzati in ReplicatedStorage o ServerStorage .

Nel suo ruolo di titolare di oggetti 3D attivi, Workspace include una serie di utili funzioni relative a parti, loro posizioni e giunture tra di esse.

Accedere allo spazio di lavoro

Workspace può essere accessato in diversi modi, tutti i quali sono validi.

  • workspace
  • game:GetService("Workspace")
  • game.Workspace
Notizie

Sommario

Proprietà

Proprietà provenienti da Model
  • Sicurezza Plugin
    Lettura Parallela

    Imposta il livello di dettaglio sul modello per le esperienze con streaming di istanza abilitato.

  • Controlla il comportamento di streaming del modello su Models quando l' streaming delle istanze è abilitato.

  • Lettura Parallela

    La parte principale del Model , o nil se non esplicitamente impostata.

  • Non Replicato
    Non programmabile
    Lettura Parallela

    Proprietà utilizzata solo dall'editor per ridimensionare il modello attorno al suo asse. Impostare questa proprietà sposterà la scala come se Model/ScaleTo fosse stata chiamata su di essa.

  • Non Replicato
    Lettura Parallela

    Determina dove si trova il punto di rotazione di un che non ha un set è situato.

Proprietà provenienti da PVInstance

Metodi

Metodi provenienti da WorldRootMetodi provenienti da Model
  • AddPersistentPlayer(playerInstance : Player):()

    Imposta questo modello per essere persistente per il giocatore specificato. ModelStreamingMode deve essere impostato su PersistentPerPlayer perché il comportamento venga cambiato come risultato dell'aggiunta.

  • Restituisce una descrizione di un volume che contiene tutte le parti di un modello.

  • Restituisce la dimensione della più piccola scatola di confine che contiene tutto il BaseParts in Model, allineata con la Model.PrimaryPart se è impostata.

  • Restituisce tutti gli oggetti Player che questo oggetto modello è persistente per.Il comportamento varia a seconda se questo metodo viene chiamato da un Script o da un LocalScript.

  • Restituisce la scala canonica del modello, che predefinisce 1 per i modelli appena creati e cambierà man mano che verrà scala tramite Model/ScaleTo .

  • MoveTo(position : Vector3):()

    Sposta il PrimaryPart a la posizione data. Se una parte primaria non è stata specificata, verrà utilizzata la parte radice del modello.

  • RemovePersistentPlayer(playerInstance : Player):()

    Rende questo modello non più persistente per il giocatore specificato.ModelStreamingMode deve essere impostato su PersistentPerPlayer perché il comportamento venga modificato come risultato della rimozione.

  • ScaleTo(newScaleFactor : number):()

    Imposta il fattore di ridimensionamento del modello, regolando la dimensione e la posizione di tutte le istanze discendenti in modo che abbiano quel fattore di ridimensionamento rispetto alle loro dimensioni iniziali e alla posizione quando il fattore di ridimensionamento era 1.

  • TranslateBy(delta : Vector3):()

    Sposta un Model con lo spostamento dato Vector3 , preservando l'orientamento del modello.Se un altro BasePart o Terrain esiste già nella nuova posizione allora il Model sovrapporrà l'oggetto dichiarato.

Metodi provenienti da PVInstance

Eventi

Proprietà

AirDensity

Lettura Parallela

Il livello del suolo ( Y di 0) della densità dell'aria in unità RMU/stud³ (vedi Unità Roblox ), utilizzato per calcolare la forza aerodinamica se è .Il predefinito corrisponde alla densità dell'aria al livello del mare realistica a temperatura e pressione standard.La densità dell'aria diminuisce man mano che l'altitudine Y aumenta, raggiungendo il 5% del suo valore a livello del suolo a 100.000 studs.Sotto Y di 0, la densità dell'aria è fissa al valore di input.

AllowThirdPartySales

Non Replicato
Lettura Parallela

Questa proprietà Workspace determina se le risorse create da altri usi possono essere vendute nel Gioco.

Cosa sono le vendite di terze parti?

Quando questo valore è falso, come è per impostazione predefinita, solo le risorse create dal creatore del luogo (che sia un giocatore o un Gruppo) e Roblox possono essere vendute utilizzando MarketplaceService .

Nella maggior parte dei casi, i giochi non hanno bisogno di vendere risorse di terzi.Tuttavia, alcuni giochi come le chat di scambio richiedono questa funzione e quindi esistono come opzione di opt-in.

Quali prodotti di terze parti posso vendere?

Nota, prodotti per sviluppatori possono essere venduti solo nel gioco con cui sono associati, indipendentemente da ciò che AllowThirdPartySales è impostato su.Questa proprietà influisce su Pass di gioco e abbigliamento.

AvatarUnificationMode

Non programmabile
Lettura Parallela

ClientAnimatorThrottling

Lettura Parallela

Specifica il Enum.ClientAnimatorThrottlingMode da utilizzare per il client locale.

Quando è abilitato, le animazioni su istanze remotamente simulate Model inizieranno a rallentare. Il rallentatore calcola l'intensità di rallentamento utilizzando:

  • Visibilità di un Model in relazione al Camera
  • FPS in gioco
  • Numero di animazioni attive

CurrentCamera

Non Replicato
Lettura Parallela

L'oggetto Camera utilizzato dal Giocatorelocale.

Come usare la fotocamera attuale

Quando si cerca l'oggetto di un cliente Camera , utilizza questa proprietà piuttosto che cercare un figlio di Workspace chiamato "Fotocamera".

Quando impostate questa Proprietà, tutti gli altri oggetti Camera nella Workspace sono distrutti, incluso il precedente CurrentCamera.Se impostate questa proprietà a nil o a una fotocamera che non è un discendente dello Spazio di lavoro (o il CurrentCamera è altrimenti distrutto), verrà creata e assegnata una nuova Camera .Evita questi scenari, poiché distruggere la fotocamera può avere conseguenze non intese.

Per ulteriori informazioni, vedi Scripting della fotocamera.

DistributedGameTime

Non Replicato
Lettura Parallela

La quantità di tempo, in secondi, che il gioco è stato in esecuzione.

Nonostante il titolo, questo valore non è attualmente "Distribuito" attraverso il client e il Server.Invece, sul server rappresenta quanto tempo il server è in esecuzione.Sul client, rappresenta quanto tempo il client è stato connesso al Server.

Gli sviluppatori non dovrebbero fare affidamento sul comportamento sopra riportato e è possibile che questa proprietà venga sincronizzata attraverso i client e il server in futuro.

Chi cerca il tempo dal momento che il programma ha iniziato a funzionare dovrebbe usare invece la funzione 'time'.Vedi qui sotto per un confronto tra DistributedGameTime e le sue alternative.


local Workspace = game:GetService("Workspace")
print(Workspace.DistributedGameTime) -- Time the game started running
print(os.time()) -- Time since epoch (1 January 1970, 00:00:00) UTC
print(tick()) -- Time since epoch (1 January 1970, 00:00:00) system time
print(time()) -- Time the game started running
print(elapsedTime()) -- Time since Roblox started running

FallHeightEnabled

Sicurezza Plugin
Lettura Parallela

FallenPartsDestroyHeight

Sicurezza Plugin
Lettura Parallela

Questa proprietà determina l'altezza in cui il motore Roblox rimuove automaticamente le cadute BaseParts e il loro antenato Models da Workspace da genitori a nil .Questo è per impedire che parti che sono cadute dalla mappa continuino a cadere per sempre.

Se una parte viene rimossa a causa di questo comportamento è l'ultima parte in un Model , anche quel modello verrà rimosso.Questo si applica a tutti gli antenati del modello della parte.

Questa proprietà è bloccata tra -50,000 e 50,000 perché BaseParts non simula o si rende correttamente a una grande distanza dall'origine a causa di inaccurzze di precisione galleggianti.

Questa proprietà può essere letta dagli script, ma può essere impostata solo dai plugin, dalla barra dei comandi o dalla finestra delle proprietà in Studio.

FluidForces

Non programmabile
Lettura Parallela

Con questa proprietà abilitata, il motore fisico calcola le forze aerodinamiche su BaseParts la cui proprietà EnableFluidForces è vera.Il predefinito, Default , disabilita le forze aerodinamiche.Si noti che questa proprietà non può essere impostata tramite scripting e invece deve essere attivata in Studio.

GlobalWind

Lettura Parallela

Questa proprietà specifica la direzione e la forza con cui il vento soffia attraverso l'esperienza, influenzando l'erba del terreno, le nuvole dinamiche e le particelle.Vedi l'articolo Vento globale per i dettagli.

Gravity

Lettura Parallela

Determina l'accelerazione dovuta alla gravità applicata alla caduta BaseParts .Questo valore è misurato in studs al secondo quadrato e per impostazione predefinita è impostato su 196,2 studs/second 2 .Cambiando questo valore, gli sviluppatori possono simulare gli effetti di gravità più bassa o più alta nel Gioco.

Campioni di codice

This script creates a touch pad in the workspace that, when touched, will reduce the game's gravity. Activating the pad again will switch back to normal gravity.

Low Gravity Button

local MOON_GRAVITY_RATIO = 1.62 / 9.81
local DEFAULT_GRAVITY = 196.2
local MOON_GRAVITY = DEFAULT_GRAVITY * MOON_GRAVITY_RATIO
-- Create a touch pad
local pad = Instance.new("Part")
pad.Size = Vector3.new(5, 1, 5)
pad.Position = Vector3.new(0, 0.5, 0)
pad.Anchored = true
pad.BrickColor = BrickColor.new("Bright green")
pad.Parent = workspace
-- Listen for pad touch
local enabled = false
local debounce = false
local function onPadTouched(_hit)
if not debounce then
debounce = true
enabled = not enabled
workspace.Gravity = enabled and MOON_GRAVITY or DEFAULT_GRAVITY
pad.BrickColor = enabled and BrickColor.new("Bright red") or BrickColor.new("Bright green")
task.wait(1)
debounce = false
end
end
pad.Touched:Connect(onPadTouched)

IKControlConstraintSupport

Non programmabile
Lettura Parallela

Abilita il supporto per le restrizioni per IKControls.Il valore Default è lo stesso di Enabled .Se disabilitato, IKControls ignorano le restrizioni fisiche.Vedi IKControl per dettagli aggiuntivi.

InsertPoint

Non Replicato
Lettura Parallela

MeshPartHeadsAndAccessories

Non programmabile
Lettura Parallela

Imposta se le teste dei personaggi e gli accessori dovrebbero essere scaricati come MeshParts .Il valore Default è lo stesso di Enabled .Se questa funzione è abilitata, gli avatar integrati useranno MeshParts per la testa e gli accessori del personaggio.

ModelStreamingBehavior

Non programmabile
Lettura Parallela

MoverConstraintRootBehavior

Non programmabile
Lettura Parallela

Controlla la logica utilizzata per selezionare la parte radice dell'assemblaggio per i meccanismi che utilizzano una qualsiasi delle seguenti restrizioni:

Quando questa proprietà è impostata su Enum.MoverConstraintRootBehaviorMode.Enabled , queste restrizioni verranno ignorate quando si seleziona la parte radice dell'assemblaggio se la restrizione non trasmette forze tra due parti (alcuni esempi sono AngularVelocity.ReactionTorqueEnabled impostati su false , AlignPosition.ReactionForceEnabled impostati su false , o AlignOrientation.Mode impostati su Enum.OrientationAlignmentMode.OneAttachment ).

Quando questa proprietà è impostata su Enum.MoverConstraintRootBehaviorMode.Disabled, queste restrizioni possono essere erroneamente considerate quando si seleziona la parte radice dell'assemblaggio, causando incongruenze nella proprietà di rete e ritardi quando si aggiungono queste restrizioni a un meccanismo.

PathfindingUseImprovedSearch

Non programmabile
Lettura Parallela

PhysicsImprovedSleep

Non programmabile
Lettura Parallela

PhysicsSteppingMethod

Non programmabile
Lettura Parallela

Imposta come il solver avanzerà la simulazione fisica in avanti nel tempo.Questa opzione non è scriptabile e deve essere impostata dalla proprietà PhysicsSteppingMethod di Workspace all'interno di Studio.Vedi Adaptive Timestepping per i dettagli.


<th>Descrizione</th>
</tr>
</thead>
<tbody>
<tr>
<td><b>Adattivo</b></td>
<td>Il motore tenta di assegnare tariffe di simulazione ottimali per singole assemblaggi di 240 Hz, 120 Hz o 60 Hz.Questa impostazione è ottimizzata per le Prestazione.</td>
</tr>
<tr>
<td><b>Risolto</b></td>
<td>Tutte le assemblaggi simulate all'interno dello spazio di lavoro avanzeranno a 240 Hz. Questa opzione è la migliore per la stabilità ottimale e l'accuratezza della simulazione.</td>
</tr>
<tr>
<td><b>Basilare</b></td>
<td>L'attuale predefinito è <b>Fixed</b> .</td>
</tr>
</tbody>
Opzione

Nota che quando le assemblaggi di diversi tassi di simulazione si connettono tramite Constraints o collisioni, il meccanismo combinato passa alla tariffa di simulazione più alta per la stabilità.

PlayerCharacterDestroyBehavior

Non programmabile
Lettura Parallela

PrimalPhysicsSolver

Non programmabile
Lettura Parallela

RejectCharacterDeletions

Non programmabile
Lettura Parallela

RenderingCacheOptimizations

Non programmabile
Lettura Parallela

ReplicateInstanceDestroySetting

Non programmabile
Lettura Parallela
Lettura Parallela

SandboxedInstanceMode

Non programmabile
Lettura Parallela

SignalBehavior

Non programmabile
Lettura Parallela

Questa proprietà determina se i gestori di eventi verranno ripresi immediatamente quando si attiva l'evento o rinviati e quindi ripresi a un punto di ripresione successivo.I punti di ripresa attualmente includono:

Per ulteriori informazioni, vedi Eventi delegati.

StreamOutBehavior

Non programmabile
Lettura Parallela

I controlli StreamOutBehavior determinano dove verrà scaricato il contenuto in base alle condizioni di memoria del dispositivo o in base al raggio di streaming.

Vedi anche:

StreamingEnabled

Sicurezza Plugin
Lettura Parallela

La proprietà StreamingEnabled determina se la trasmissione del contenuto del gioco è abilitata per il Posto.Questa proprietà non è scriptabile e quindi deve essere impostata sull'oggetto Workspace in Studio.

Vedi anche:

StreamingIntegrityMode

Non programmabile
Lettura Parallela

Se l'istanza streaming è abilitata, un'esperienza può comportarsi in modi non intesi se il personaggio di un Giocatoresi muove in una regione del mondo che non è stata trasmessa al suo client.La funzione di integrità dello streaming offre un modo per evitare quelle situazioni potenzialmente problematiche.

StreamingMinRadius

Non programmabile
Lettura Parallela

La proprietà StreamingMinRadius indica il raggio intorno al personaggio del Giocatoreo l'attuale ReplicationFocus in cui verrà trasmesso il contenuto con la massima priorità.Predefinito su 64 studs.

Si deve prestare attenzione quando si aumenta il raggio minimo predefinito poiché farlo richiederà più memoria e più banda di server a spese di altre componenti.

Vedi anche:

StreamingTargetRadius

Non programmabile
Lettura Parallela

La proprietà StreamingTargetRadius controlla la distanza massima dal personaggio del Giocatoreo dall'attuale ReplicationFocus in cui verrà trasmesso il contenuto.Predefinito su 1024 studs.

Si noti che il motore è autorizzato a mantenere il contenuto precedentemente caricato oltre il raggio di destinazione, memoria permettendo.

Vedi anche:

Terrain

Sola Lettura
Non Replicato
Lettura Parallela

Questa proprietà è un riferimento all'oggetto Terrain a cui è stato parented il Workspace .

Terrain object within the Workspace hierarchy

Vedi Terreno ambientale per ulteriori informazioni.

TouchEventsUseCollisionGroups

Non programmabile
Lettura Parallela

TouchesUseCollisionGroups

Non programmabile
Lettura Parallela

Questa proprietà determina se parts in diversi gruppi impostati per non sovrapporsi ignorerà le collisioni e gli eventi di tocco.Per impostazione predefinita, il valore di questa proprietà è impostato su false .

Quando questa proprietà è abilitata, le parti in gruppi diversi impostate a non sovrapporsi ignoreranno anche la ProprietàCanTouch, simile a come BasePart.CanCollide viene ignorata.Per maggiori informazioni sul comportamento di CanTouch, visita la sua pagina di proprietà.

Metodi

GetNumAwakeParts

Scrivi Parallelo

Restituisce il numero di BaseParts che sono considerati fisicamente attivi, a causa di essere stati recentemente sotto l'influenza della fisica.

Questa funzione fornisce una misura di quanti BaseParts sono influenzati da, o recentemente sotto l'influenza di, forze fisiche.


local Workspace = game:GetService("Workspace")
print(Workspace:GetNumAwakeParts())

Sonno vs Parti svegli

Per garantire un buon Prestazione, Roblox imposta BaseParts in cui la fisica non viene applicata a uno stato "dormiente".BaseParts con BasePart.Anchored impostato su vero, ad esempio, dormirà sempre perché la fisica non si applica a loro.Quando una forza viene applicata a un non ancorato BasePart , verrà applicato uno stato "attivo".Mentre un BasePart è sveglio, il motore fisico di Roblox eseguirà calcoli continui per garantire che le forze fisiche interagiscono correttamente con la parte.Una volta che il BasePart non è più soggetto a forze fisiche, tornerà a uno stato 'dormiente'.


Restituzioni

Il numero di parti sveglie.

GetPhysicsThrottling

Scrivi Parallelo

Restituisce un intero, tra 0 e 100, che rappresenta la percentuale di tempo reale a cui la simulazione fisica è attualmente ridotta.

Questa funzione può essere utilizzata per determinare se, e in che misura, la riduzione della fisica stia avvenendo.

Cos'è il throttling della fisica?

Il throttling fisico si verifica quando il motore fisico rileva che non può tenere il passo con il gioco in tempo reale.Quando la fisica viene ridimensionata, si aggiorna con meno frequenza causando BaseParts a sembrare più lento.

Senza limitazione, la simulazione fisica sarebbe caduta ulteriormente in ritardo rispetto al Gioco.Questo può portare a tassi di fotogrammi più bassi e ad altri comportamenti indesiderati.

Gli oggetti associati a Humanoids sono esentati dal rallentamento della fisica.

Vedi anche Workspace:SetPhysicsThrottleEnabled() .

Dimostrare il throttling della fisica

Gli sviluppatori dovrebbero sempre evitare di creare luoghi che superino il motore fisico, poiché porta a un'esperienza sub-par per i giocatori.Coloro che desiderano simulare il throttling della fisica per scopi di ricerca, tuttavia, devono creare solo molti Parts molto rapidamente.


local Workspace = game:GetService("Workspace")
local i = 0
while true do
i += 1
if i % 5 == 0 then
task.wait()
end
local part = Instance.new("Part", Workspace)
end

Restituzioni

La percentuale di tempo reale a cui la simulazione fisica è attualmente ridotta.

GetRealPhysicsFPS

Scrivi Parallelo

Restituisce il numero di fotogrammi al secondo in cui la fisica viene attualmente simulata.

Utilizzare GetRealPhysicsFPS per combattere gli exploiter

Un uso comune di questa funzione è quello di rilevare se gli exploiter stanno aumentando il loro tasso di fotogramma fisico locale per muoversi più velocemente.Questo viene generalmente fatto confrontando il risultato restituito da GetRealPhysicsFPS di un client con un massimo che non verrà violato nelle normali circostanze (solitamente 65 o 70).Se questo limite viene violato, i developer possono utilizzare la funzione Player:Kick() per rimuovere quel Player dal Gioco.È importante ricordare che, anche se questa pratica può essere efficace a volte, le misure anti-exploiter lato client non sono mai del 100% affidabili.


Restituzioni

Restituisce il numero di fotogrammi al secondo in cui la fisica viene attualmente simulata.

Campioni di codice

Speed exploiters commonly increase their local physics FPS in order to increase their character speed. This can be detected from a LocalScript by checking if the player's physics FPS is over the maximum:

Workspace:GetRealPhysicsFPS

local Players = game:GetService("Players")
local player = Players.LocalPlayer
while task.wait(1) do
if workspace:GetRealPhysicsFPS() > 65 then
player:Kick()
end
end

GetServerTimeNow

Scrivi Parallelo

GetServerTimeNow() restituisce l'approssimazione migliore del cliente del tempo attuale sul Server.Questo è utile per creare esperienze sincronizzate poiché ogni client ottiene circa gli stessi risultati indipendentemente dalla loro zona temporale o dall'orologio locale.

Questo restituisce un timestamp Unix, simile a os.time() , che può essere utilizzato con os.date() o con DateTime.fromUnixTimestamp() .

L'timestamp restituito da questa funzione è levigato in modo che:

  • È monotonico; il suo valore non diminuirà mai.
  • Si muove alla stessa velocità dell'orologio locale entro 0,6%.

GetServerTimeNow() è costoso da chiamare rispetto a DateTime.now() , e è meno preciso di os.clock() , quindi dovrebbe essere utilizzato per assicurarsi che un evento inizi al momento giusto nel mondo reale o per regolare le cose periodicamente per mantenere sincronizzata una serie di eventi.

Questa funzione dipende dal Server, quindi chiamarla da un client che non è connesso lancerà un errore.Si noti inoltre che questa funzione non è adatta per cose come le ricompense a tempo poiché non è sicura rispetto al monitoraggio di tali timer sul Server.

Vedi anche:


Restituzioni

L'timestamp stimato Unix sul Server.

JoinToOutsiders

()

Questa funzione crea giunture tra le parti specificate Parts e qualsiasi parte toccante a seconda delle superfici delle parti e del modo di creazione delle giunte specificato.

Questa funzione crea giunture tra le parti specificate e qualsiasi superficie di contatto piatta, a seconda delle superfici delle parti e del modo di creazione delle giunte specificato.

  • La colla, gli studs, gli ingressi, l'universale, la saldatura e le superfici lisce creeranno tutte istanze di saldatura.
  • Le sfere non si uniranno alla superficie di nulla. I lati arrotondati dei cilindri non si uniranno alla superficie, ma i lati piatti della fine si uniranno.
  • Le superfici articolazione e motore creeranno ancora Rotate e RotateP istanze congiunte, indipendentemente dalla forma della parte.

Il primo parametro è un array di BaseParts .Le giunzioni verranno create solo tra le parti nell'array e non nell'vettore.Le giunte non verranno create tra le parti nell'vettore.

Il secondo parametro è un Enum.JointCreationMode che determina come verranno creati i giunti.Passare in uno dei valori dell'enum, Enum.JointCreationMode.All o Enum.JointCreationMode.Surface, ha lo stesso comportamento che equivale a Join Always

Questa funzione viene utilizzata dallo strumento Move di Roblox Studio quando l'utente termina di spostare una selezione.In combinazione con Plugin:GetJoinMode() e Workspace:UnjoinFromOutsiders() può essere utilizzato per mantenere la funzionalità di join quando si sviluppano strumenti di build personalizzati dello studio.Vedi gli snippet seguenti per un esempio.


local Workspace = game:GetService("Workspace")
-- Spostamento della selezione terminato; crea articolazioni
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
Workspace:JoinToOutsiders(parts, joinMode)
end

local Workspace = game:GetService("Workspace")
-- Iniziato a spostare una selezione; rompi i giunti
local function startMovingParts(parts)
Workspace:UnjoinFromOutsiders(parts)
end

Parametri

objects: Instances

Un array di BaseParts per cui devono essere effettuate delle giunte.

Valore predefinito: ""

Il Enum.JointCreationMode da utilizzare. Passare in Enum.JointCreationMode.All o Enum.JointCreationMode.Surface ha lo stesso comportamento che equivale a Join Always.

Valore predefinito: ""

Restituzioni

()

PGSIsEnabled

Restituisce true se il gioco ha l'attivatore del solver PGS Physics abilitato.

Poiché Workspace.PGSPhysicsSolverEnabled non può essere accessibile dagli script, la funzione PGSIsEnabled consente agli sviluppatori di dire quale soluzione fisica il gioco stia utilizzando.


Restituzioni

Vero se il solvente PGS è abilitato.

UnjoinFromOutsiders

()

Rompe tutti i giunti tra il BaseParts e gli altri BaseParts .

Questa funzione richiede un array di BaseParts .Nota, le giunte non verranno rotte tra questi BaseParts (uno l'altro), solo tra questi BaseParts e altri BaseParts non nell'vettore.

Questa funzione viene utilizzata dallo strumento Movimento di Roblox Studio quando l'utente inizia a spostare una selezione.In combinazione con Plugin:GetJoinMode() e Workspace:JoinToOutsiders() può essere utilizzato per mantenere la funzionalità di join quando si sviluppano strumenti di build personalizzati di Studio.Vedi gli snippet seguenti per un esempio.


local Workspace = game:GetService("Workspace")
-- Finished moving a selection; make joints
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
Workspace:JoinToOutsiders(parts, joinMode)
end

local Workspace = game:GetService("Workspace")
-- Started moving a selection; break joints
local function startMovingParts(parts)
Workspace:UnjoinFromOutsiders(parts)
end

Parametri

objects: Instances

Un array di BaseParts per cui devono essere rotte le giunte.

Valore predefinito: ""

Restituzioni

()

ZoomToExtents

()
Sicurezza Plugin

Posiziona e ingrandisce il Workspace.CurrentCamera per mostrare l'estensione di BaseParts attualmente nel Workspace .

Questa funzione era utilizzata nel, ora rimosso, pulsante 'Zoom To Extents' in Roblox Studio.Mostra un comportamento simile alla Proprietà'Zoom To' (F Scorciatoia), tuttavia mostra le estensioni del Workspace piuttosto che l'oggetto attualmente selezionato.

Questa funzione non può essere utilizzata negli script ma funzionerà nella barra dei comandi o nei plugin.


Restituzioni

()

Eventi

PersistentLoaded

Questo evento si attiva ogni volta che un giocatore è stato inviato tutti i modelli persistenti attuali e modelli atomici senza parti.Il parametro player indica quale giocatore ha ricevuto tutte le istanze applicabili.

Nota che il caricamento dell'esperienza avviene prima del caricamento persistente e il lancio dell'evento DataModel.Loaded non indica che tutti i modelli persistenti sono presenti.

Parametri

player: Player