Workspace

Afficher les obsolètes

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

Création impossible
Service

Le travail principal de Workspace est de tenir des objets qui existent dans le monde 3D, efficacement BaseParts et Attachments .Bien que de tels objets soient des descendants de Workspace, ils seront actifs.Pour BaseParts , cela signifie qu'ils seront rendus et interagiront physiquement avec d'autres parties et le monde.Pour Attachments , cela signifie que les objets ornés pour eux, tels que ParticleEmitters , Beams et BillboardGuis , s'afficheront.

Comprendre ce comportement est important, car cela signifie que des objets peuvent être supprimés de Workspace lorsqu'ils ne sont pas nécessaires.Par exemple, la carte Models peut être supprimée lorsqu'une carte différente est jouée.Les objets qui ne sont pas immédiatement nécessaires dans le monde 3D sont généralement stockés dans ReplicatedStorage ou ServerStorage .

Dans son rôle de détenteur d'objets 3D actifs, Workspace inclut un certain nombre de fonctions utiles relatives aux parties, à leurs positions et aux jointures entre elles.

Accès à l'espace de travail

Workspace peut être accédé de plusieurs façons, toutes valides.

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

Résumé

Propriétés

Propriétés hérités de Model
  • Sécurité des plugins
    Lecture parallèle

    Définit le niveau de détail sur le modèle pour les expériences avec streaming d'instance activé.

  • Contrôle le comportement de streaming du modèle sur Models lorsque le streaming d'instance est activé.

  • Lecture parallèle

    La partie principale de la Model ou nil si elle n'est pas explicitement configurer.

  • Non répliqué
    Non scriptable
    Lecture parallèle

    Propriété réservée aux éditeurs utilisée pour dimensionner le modèle autour de son pivot. Le réglage de cette propriété déplacera la mesure comme si Model/ScaleTo était appelé sur elle.

  • Non répliqué
    Lecture parallèle

    Détermine où se trouve le pivot d'un Model qui ne fait pas **** avoir un ensemble Model.PrimaryPart.

Propriétés hérités de PVInstance

Méthodes

Méthodes hérités de WorldRootMéthodes hérités de Model
  • AddPersistentPlayer(playerInstance : Player):()

    Définit ce modèle pour être persistant pour le joueur spécifié.Model.ModelStreamingMode doit être défini sur PersistantParJoueur pour que le comportement soit modifié en raison de l'ajout.

  • Renvoie une description d'un volume qui contient toutes les parties d'un modèle.

  • Renvoie la taille de la plus petite boîte de bordure qui contient tout le BaseParts dans le Model, alignée sur le Model.PrimaryPart si elle est configurer.

  • Renvoie tous les objets Player que cet objet de modèle est persistant pour.Le comportement varie en fonction de si cette méthode est appelée à partir d'un Script ou d'un LocalScript .

  • Renvoie la taille canonique du modèlisation, qui est par défaut de 1 pour les modèles créés récemment et qui changera lorsqu'elle sera mise à l'échelle via Model/ScaleTo.

  • MoveTo(position : Vector3):()

    Déplace le PrimaryPart à la position donnée. Si aucune partie principale n'a été spécifiée, la partie racine du modèle sera utilisée.

  • RemovePersistentPlayer(playerInstance : Player):()

    Rend ce modèle non persistant pour le joueur spécifié.Model.ModelStreamingMode doit être défini sur PersistantParJoueur pour que le comportement soit modifié en raison de la suppression.

  • ScaleTo(newScaleFactor : number):()

    Définit le facteur d'échelle du modèlisation, ajustant la taille et l'emplacement de toutes les instances descendantes afin qu'elles aient ce facteur d'échelle par rapport à leurs tailles et emplacements initiaux lorsque le facteur d'échelle était de 1.

  • TranslateBy(delta : Vector3):()

    Déplace un Model par le décentragedonné Vector3, en conservant l'orientation du modèlisation.Si un autre BasePart ou Terrain existe déjà à la nouvelle position, alors le Model couvrira cet objet.

Méthodes hérités de PVInstance

Évènements

Propriétés

AirDensity

Lecture parallèle

La densité de l'air au niveau du sol ( Y de 0) dans les unités RMU/stud³ (voir Unités Roblox ), utilisée pour calculer la force aéro dynamique si Workspace.FluidForces est Experimental.La valeur par défaut correspond à une densité de l'air au niveau de la mer réaliste à température et pression standard.La densité de l'air diminue à mesure que l'altitude Y augmente, atteignant 5% de sa valeur au niveau du sol à 100 000 studs.En dessous de Y de 0, la densité de l'air est fixée à la valeur d'entrée.

AllowThirdPartySales

Non répliqué
Lecture parallèle

Cette propriété Workspace détermine si les ressources créées par d'autres utilisations peuvent être vendues dans le jeu.

Quelles sont les ventes de tiers ?

Lorsque cette valeur est fausse, comme c'est le cas par défaut, seules les ressources créées par le créateur de lieu (qu'il s'agisse d'un joueur ou d'un groupe) et Roblox peuvent être vendues en utilisant MarketplaceService .

Dans la plupart des cas, les jeux n'ont pas besoin de vendre des ressources tierces.Cependant, certains jeux comme les bars d'échange nécessitent cette fonctionnalité et existent donc en tant qu'option d'acceptation.

Quels produits tiers puis-je vendre ?

Remarque, les produits des développeurs ne peuvent être vendus que dans le jeu avec lequel ils sont associés, quelle que soit la valeur de AllowThirdPartySales définie.Cette propriété affecte passes de jeu et vêtements.

AvatarUnificationMode

Non scriptable
Lecture parallèle

ClientAnimatorThrottling

Lecture parallèle

Spécifie le Enum.ClientAnimatorThrottlingMode à utiliser pour le client local.

Lorsqu'il est activé, les animations sur les instances simulées à distance Model commenceront à ralentir. Le ralentisseur calcule l'intensité de ralentissement en utilisant :

  • Visibilité d'un Model par rapport au Camera
  • FPS en jeu
  • Nombre d'animations actives

CurrentCamera

Non répliqué
Lecture parallèle

L'objet Camera utilisé par le joueur local.

Comment utiliser la caméra actuelle

Lorsque vous recherchez l'objet d'un client Camera, utilisez cette propriété plutôt que de rechercher un enfant nommé Workspace « Caméra ».

Lorsque vous définissez cette propriété, tous les autres objets Camera dans le Workspace sont détruits, y compris le précédent CurrentCamera.Si vous définissez cette propriété à nil ou à une caméra qui n'est pas un descendant de l'espace de travail (ou que le CurrentCamera est autrement détruit), une nouvelle Camera sera créée et attribuée.Évitez ces scénarios, car la destruction de la caméra peut avoir des conséquences imprévues.

Pour plus d'informations, voir Programmer la caméra.

DistributedGameTime

Non répliqué
Lecture parallèle

La quantité de temps, en secondes, pendant laquelle le jeu a fonctionné.

Malgré le titre, cette valeur n'est actuellement pas « distribuée » sur le client et le serveur.Au lieu de cela, sur le serveur, il représente la durée pendant laquelle le serveur a fonctionné.Sur le client, il représente la durée pendant laquelle le client a été connecté au serveur.

Les développeurs ne doivent pas s'appuyer sur le comportement ci-dessus, et il est possible que cette propriété soit synchronisée sur les clients et le serveur à l'avenir.

Ceux qui recherchent le temps écoulé depuis le démarrage du programme devraient plutôt utiliser la fonction 'time'.Voir ci-dessous pour une comparaison entre DistributedGameTime et ses alternatives.


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

Sécurité des plugins
Lecture parallèle

FallenPartsDestroyHeight

Sécurité des plugins
Lecture parallèle

Cette propriété détermine la hauteur à laquelle le moteur Roblox supprime automatiquement la chute de BaseParts et son ancêtre Models de Workspace en les parentant à nil .C'est pour empêcher que les parties qui se sont éloignées de la carte continuent de tomber pour toujours.

Si une partie est supprimée en raison de ce comportement, le modèle sera également supprimé si c'est la dernière partie dans un Model.Cela s'applique à tous les ancêtres de modèle de la partie.

Cette propriété est comprise entre -50,000 et 50,000 car BaseParts ne simule pas ou ne rend pas correctement à une grande distance de l'origine en raison d'imprécisions en virgule flottante.

Cette propriété peut être lue par des scripts, mais ne peut être définie que par des plugins, la barre de commande ou la fenêtre des propriétés dans Studio.

FluidForces

Non scriptable
Lecture parallèle

Avec cette propriété activée, le moteur de physique calcule les forces aérodynamiques sur BaseParts dont la propriété EnableFluidForces est vraie.La valeur par défaut, Default , désactive les forces aérodynamiques.Notez que cette propriété ne peut pas être définie via le scripting et doit être activée dans Studio à la place.

GlobalWind

Lecture parallèle

Cette propriété spécifie la direction et la force par lesquelles le vent souffle à travers l'expérience, affectant l'herbe du terrain, les nuages dynamiques et les particules.Voir l'article Vent global pour plus de détails.

Gravity

Lecture parallèle

Détermine l'accélération due à la gravité appliquée à la chute BaseParts .Cette valeur est mesurée en studs par seconde carrée et par défaut est réglée sur 196,2 studs/seconde 2.En modifiant cette valeur, les développeurs peuvent simuler les effets de gravité inférieure ou supérieure dans le jeu.

Échantillons de code

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 scriptable
Lecture parallèle

Active le support des contraintes pour les IKControls.La valeur Default est la même que Enabled.Si désactivé, les contrôles IK ignorent les contraintes physiques.Voir IKControl pour des détails supplémentaires.

InsertPoint

Non répliqué
Lecture parallèle

MeshPartHeadsAndAccessories

Non scriptable
Lecture parallèle

Définit si les têtes de caractère et les accessoires doivent être téléchargés en tant que MeshParts.La valeur Default est la même que Enabled.Si cette fonctionnalité est activée, les avatars intégrés utiliseront MeshParts pour la tête et les accessoires du personnage.

ModelStreamingBehavior

Non scriptable
Lecture parallèle

MoverConstraintRootBehavior

Non scriptable
Lecture parallèle

Contrôle la logique utilisée pour sélectionner la partie racine d'assemblage pour les mécanismes qui utilisent l'une des contraintes suivantes :

Lorsque cette propriété est définie sur , ces contraintes seront ignorées lors de la sélection de la partie racine de l'assemblage si la contrainte ne transmet pas de forces entre deux parties (certains exemples étant définis sur , définis sur ou définis sur ).

Lorsque cette propriété est définie sur Enum.MoverConstraintRootBehaviorMode.Disabled, ces contraintes peuvent être erronément prises en compte lors de la sélection de la partie racine d'assemblage, ce qui entraîne une propriété de réseau incohérente et des délais lors de l'ajout de ces contraintes à un mécanisme.

PathfindingUseImprovedSearch

Non scriptable
Lecture parallèle

PhysicsImprovedSleep

Non scriptable
Lecture parallèle

PhysicsSteppingMethod

Non scriptable
Lecture parallèle

Définit comment le solveur avancera la simulation physique dans le temps.Cette option n'est pas scriptable et doit être définie à partir de la propriété PhysicsSteppingMethod de Espace de travail dans Studio.Voir adaptation de l'horloge adaptative pour les détails.


<th>Avertissement</th>
</tr>
</thead>
<tbody>
<tr>
<td><b>Adaptatif</b></td>
<td>Le moteur essaie d'attribuer des taux de simulation optimaux pour des assemblages individuels de 240 Hz, 120 Hz ou 60 Hz.Ce paramètre est optimisé pour les performances.</td>
</tr>
<tr>
<td><b>Corrigé</b></td>
<td>Toutes les assemblages simulés à l'intérieur de l'espace de travail avanceront à 240 Hz. Cette option est la meilleure pour une stabilité et une précision de simulation optimales.</td>
</tr>
<tr>
<td><b>Par défaut</b></td>
<td>La valeur par défaut actuelle est <b>Corrigé</b>.</td>
</tr>
</tbody>
Aoption

Notez que lorsque des assemblages de différents taux de simulation se connectent via Constraints ou des collisions, le mécanisme combiné passera par défaut au taux de simulation le plus élevé pour la stabilité.

PlayerCharacterDestroyBehavior

Non scriptable
Lecture parallèle

PrimalPhysicsSolver

Non scriptable
Lecture parallèle

RejectCharacterDeletions

Non scriptable
Lecture parallèle

RenderingCacheOptimizations

Non scriptable
Lecture parallèle

ReplicateInstanceDestroySetting

Non scriptable
Lecture parallèle
Lecture parallèle

SandboxedInstanceMode

Non scriptable
Lecture parallèle

SignalBehavior

Non scriptable
Lecture parallèle

Cette propriété détermine si les gestionnaires d'événements seront repris immédiatement lorsque l'événement se déclenchera, ou reportés et repris à un point de reprise ultérieur.Les points de reprise incluent actuellement :

Pour plus d'informations, voir Événements différés.

StreamOutBehavior

Non scriptable
Lecture parallèle

Les contrôles StreamOutBehavior sont ceux où le contenu sera déchargé à partir du ReplicationFocus en fonction des conditions de mémoire du périphérique, ou en fonction du rayon de diffusion.

Voir aussi :

StreamingEnabled

Sécurité des plugins
Lecture parallèle

La propriété StreamingEnabled détermine si le streaming de contenu de jeu est activé pour le emplacement.Cette propriété n'est pas scriptable et doit donc être définie sur l'objet Espace de travail dans Studio.

Voir aussi :

StreamingIntegrityMode

Non scriptable
Lecture parallèle

Si l'instance streaming est activée, une expérience peut se comporter de manières non intentionnelles si le personnage d'un joueur se déplace dans une région du monde qui n'a pas été diffusée vers son client.La fonction d'intégrité de diffusion offre un moyen d'éviter ces situations potentiellement problématiques.

StreamingMinRadius

Non scriptable
Lecture parallèle

La propriété StreamingMinRadius indique le rayon autour du personnage du joueur ou le ReplicationFocus actuel dans lequel le contenu sera diffusé en priorité élevée.Défaut à 64 studs.

Il faut faire attention lors de l'augmentation du rayon minimum par défaut puisque cela nécessitera plus de mémoire et plus de bande passante du serveur au détriment d'autres composants.

Voir aussi :

StreamingTargetRadius

Non scriptable
Lecture parallèle

La propriété StreamingTargetRadius contrôle la distance maximale à partir du personnage du joueur ou de la ReplicationFocus dans laquelle le contenu sera diffusé.Défaut à 1024 studs.

Notez que le moteur est autorisé à conserver le contenu précédemment chargé au-delà du rayon cible, mémoire permettant.

Voir aussi :

Terrain

Lecture uniquement
Non répliqué
Lecture parallèle

Cette propriété est une référence à l'objet Terrain parenté au Workspace .

Terrain object within the Workspace hierarchy

Voir terrain environnemental pour plus d'informations.

TouchEventsUseCollisionGroups

Non scriptable
Lecture parallèle

TouchesUseCollisionGroups

Non scriptable
Lecture parallèle

Cette propriété détermine si parts dans différents groupes réglés pour ne pas se heurter ignoreront les collisions et les événements de contact.Par défaut, la valeur de cette propriété est définie à false .

Lorsque cette propriété est activée, les parties appartenant à des groupes différents qui ne doivent pas se chevaucher ignoreront également la propriété CanTouch, de manière similaire à la façon dont BasePart.CanCollide est ignoré.Pour plus d'informations sur le comportement de CanTouch, visitez sa page de propriété.

Méthodes

GetNumAwakeParts

Écrire en parallèle

Renvoie le nombre de BaseParts qui sont jugés physiquement actifs, en raison d'être récemment sous l'influence de la physique.

Cette fonction fournit une mesure du nombre de BaseParts qui sont influencés par, ou récemment sous l'influence de forces physiques.


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

Sommeil vs parties éveillées

Afin d'assurer une bonne performance, Roblox définit BaseParts dans lequel la physique n'est pas appliquée à un état « dormant ».BaseParts avec BasePart.Anchored réglé sur vrai, par exemple, sera toujours endormi car la physique ne s'applique pas à eux.Lorsqu'une force est appliquée à un état non ancré BasePart, un état activésera appliqué.Pendant qu'un BasePart est réveillé, le moteur de physique Roblox effectuera des calculs continus pour garantir que les forces physiques interagissent correctement avec la partie.Une fois que le BasePart n'est plus soumis à des forces physiques, il reviendra à un état de sommeil.


Retours

Le nombre de parties éveillées.

GetPhysicsThrottling

Écrire en parallèle

Renvoie un entier, entre 0 et 100, représentant le pourcentage de temps réel auquel la simulation de physique est actuellement ralentie.

Cette fonction peut être utilisée pour déterminer si, et dans quelle mesure, le ralentissement de la physique se produit.

Qu'est-ce que la physique d'accélération ?

La limitation des physiques se produit lorsque le moteur de physiques détecte qu'il ne peut pas suivre le jeu en temps réel.Lorsque la physique est ralentie, elle se met à jour moins souvent, ce qui fait apparaître BaseParts pour se déplacer plus lentement.

Sans limitation, la simulation de physique tomberait plus loin en désaccord avec le jeu.Cela peut entraîner des taux de cadence inférieurs et d'autres comportements indésirables.

Les objets associés à Humanoids sont exemptés du ralentissement physique.

Voir aussi Workspace:SetPhysicsThrottleEnabled() .

Démonstration de l'accélération de la physique

Les développeurs doivent toujours éviter de créer des endroits qui surchargent le moteur de physique, car cela entraîne une expérience inférieure pour les joueurs.Cependant, ceux qui souhaitent simuler la restriction de la physique à des fins de recherche n'ont besoin que de créer beaucoup de Parts très rapidement.


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

Retours

Le pourcentage de temps réel auquel la simulation de physique est actuellement ralentie.

GetRealPhysicsFPS

Écrire en parallèle

Renvoie le nombre de cadres par seconde auquel la physique est actuellement simulée.

Utiliser GetRealPhysicsFPS pour combattre les exploiteurs

Un usage commun de cette fonction est de détecter si les exploiteurs augmentent leur cadence de physique locale pour se déplacer plus rapidement.Cela se fait généralement en comparant le résultat renvoyé par le GetRealPhysicsFPS d'un client à un maximum qui ne sera pas enfreint dans les conditions normales (généralement 65 ou 70).Si cette limite est violée, les développeurs peuvent utiliser la fonction Player:Kick() pour supprimer ce Player du jeu.Il est important de se rappeler que, bien que cette pratique puisse parfois être efficace, les mesures anti-exploiteur côté client ne sont jamais à 100 % fiables.


Retours

Renvoie le nombre de cadres par seconde auquel la physique est actuellement simulée.

Échantillons de code

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

Écrire en parallèle

GetServerTimeNow() renvoie la meilleure approximation du client de l'heure actuelle sur le serveur.Cela est utile pour créer des expériences synchronisées car chaque client obtiendra environ les mêmes résultats, indépendamment de son fuseau horaire ou de son horloge locale.

Cela renvoie une balise de temps Unix, similaire à os.time() , qui peut être utilisée avec os.date() ou avec DateTime.fromUnixTimestamp() .

L'heure de retour de cette fonction est lissée afin que :

  • Il est monotone ; sa valeur ne diminuera jamais.
  • Il se déplace au même rythme que l'horloge locale à moins de 0,6 %.

GetServerTimeNow() est coûteux à appeler par rapport à DateTime.now() et est moins précis que os.clock() , il devrait donc être utilisé pour s'assurer qu'un événement commence au bon moment dans le monde réel ou pour ajuster les choses périodiquement pour maintenir une série d'événements en phase.

Cette fonction repose sur le serveur, donc l'appeler à partir d'un client qui n'est pas connecté provoquera une erreur.Notez également que cette fonction n'est pas appropriée pour des choses comme les récompenses à temps, car elle n'est pas sécurisée par rapport au suivi de ces minuteries sur le serveur.

Voir aussi :


Retours

L'heure d'estampage Unix estimée sur le serveur.

JoinToOutsiders

()

Cette fonction crée des jointures entre la partie spécifiée Parts et toute partie touchante en fonction des surfaces des parties et du mode de création de jointure spécifié.

Cette fonction crée des jointures entre les parties spécifiées et toute surface de contact plane, en fonction des surfaces des parties et du mode de création de jointure spécifié.

  • La colle, les études, les entrées, l'universel, la soudure et les surfaces lisses créeront toutes des instances de soudure.
  • Les sphères ne s'assembleront pas à quoi que ce soit. Les côtés arrondis des cylindres ne s'assembleront pas, mais les côtés plats des bords s'assembleront.
  • Les surfaces Hinge et Motor créeront toujours des instances jointes Rotate et RotateP indépendamment de la forme de la pièce.

Le premier paramètre est un tableau de BaseParts.Les jointures ne seront créées que entre les parties de l'array et non dans l'matrice.Les jointures ne seront pas créées entre les parties de l'matrice.

Le deuxième paramètre est un Enum.JointCreationMode qui détermine comment les jointures seront créées.Le passage dans l'une des valeurs d'enum, Enum.JointCreationMode.All ou Enum.JointCreationMode.Surface , a le même comportement qui équivaut à Rejoindre toujours

Cette fonction est utilisée par l'outil de déplacement Roblox Studio lorsque l'utilisateur termine le déplacement d'une sélection.En combinaison avec Plugin:GetJoinMode() et Workspace:UnjoinFromOutsiders(), il peut être utilisé pour conserver la fonctionnalité de jointure lors du développement d'outils de construction de studio personnalisés.Voir les snippets ci-dessous pour un exemple.


local Workspace = game:GetService("Workspace")
-- Déplacement de sélection terminé ; faire des jointures
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
Workspace:JoinToOutsiders(parts, joinMode)
end

local Workspace = game:GetService("Workspace")
-- Début du déplacement d'une sélection ; rupture des jointures
local function startMovingParts(parts)
Workspace:UnjoinFromOutsiders(parts)
end

Paramètres

objects: Instances

Un ensemble de BaseParts pour qui des jointures doivent être faites.

Valeur par défaut : ""

Le Enum.JointCreationMode à utiliser. Le passage en Enum.JointCreationMode.All ou Enum.JointCreationMode.Surface a le même comportement qui équivaut à Rejoindre toujours.

Valeur par défaut : ""

Retours

()

PGSIsEnabled

Renvoie true si le jeu a activé le solveur de physique PGS.

Comme Workspace.PGSPhysicsSolverEnabled ne peut pas être accédé par les scripts, la fonction PGSIsEnabled permet aux développeurs de dire à quel solveur de physique le jeu utilise.


Retours

Vrai si le solveur PGS est activé.

UnjoinFromOutsiders

()

Brise tous les joints entre le BaseParts et les autres BaseParts spécifiés.

Cette fonction nécessite un tableau de BaseParts.Remarque, les jointures ne seront pas rompues entre ces BaseParts (les unes les autres), seulement entre ces BaseParts et d'autres BaseParts non dans l'matrice.

Cette fonction est utilisée par l'outil de déplacement Roblox Studio lorsque l'utilisateur commence à déplacer une sélection.En combinaison avec Plugin:GetJoinMode() et Workspace:JoinToOutsiders(), il peut être utilisé pour conserver la fonctionnalité de jointure lors du développement d'outils de construction personnalisés de Studio.Voir les snippets ci-dessous pour un exemple.


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

Paramètres

objects: Instances

Un ensemble de BaseParts pour qui les jointures doivent être rompues.

Valeur par défaut : ""

Retours

()

ZoomToExtents

()
Sécurité des plugins

Positionne et zoome le Workspace.CurrentCamera pour montrer l'étendue de BaseParts actuellement dans le Workspace .

Cette fonction a été utilisée dans le bouton, maintenant supprimé, 'Zoom vers les extrêts' dans Roblox Studio.Il présente un comportement similaire à la fonctionalité'Zoom vers' (raccourci F), mais il montre les limites de la Workspace plutôt que l'objet sélectionné actuellement.

Cette fonction ne peut pas être utilisée dans les scripts, mais fonctionnera dans la barre de commande ou les plugins.


Retours

()

Évènements

PersistentLoaded

Cet événement se déclenche chaque fois qu'un joueur a été envoyé tous les modèles persistants actuels et des modèles atomiques sans parties.Le paramètre player indique quel joueur a reçu toutes les instances applicables.

Notez que le chargement de l'expérience se produit avant le chargement persistant, et le tir de l'événement DataModel.Loaded n'indique pas que tous les modèles persistants sont présents.

Paramètres

player: Player