Vent global

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

Le vecteur GlobalWind définit la direction et la force par lesquelles le vent souffle à travers une expérience, affectant l'herbe du terrain et les nuages dynamiques.Vous pouvez le définir comme un vecteur de constant constante ou l'ajuster via le scripting pour créer des rafales cycliques de vent.En outre, vous pouvez influencer les particules pour suivre le force vectoriellede vent global.

force vectoriellede vent global

Le vent global est contrôlé via le vecteur GlobalWind est une propriété de Workspace et vous pouvez l'éditer directement dans Studio, ou le définir via le scriptage .

Pour définir le vecteur de vent global dans Studio :

  1. Dans la fenêtre Explorateur , sélectionnez le service de niveau supérieur Espace de travail .

    Workspace object shown in Explorer window of Studio
  2. Dans la fenêtre propriétés , localisez la propriété GlobalWind et définissez une valeur X , Y et Z pour sa direction et sa force.

    GlobalWind property shown in Properties window of Studio

Influence des particules

Les particules émises par un ParticleEmitter suivront le vecteur de vent global tant que la propriété WindAffectsDrag de l'émetteur est activée et que sa propriété Drag est supérieure à 0.Fire et Smoke les instances suivent le vecteur de vent par défaut.

Drag and WindAffectsDrag properties shown in Properties window of Studio

widgetde direction du vent

Pour faciliter l'ajustement du vent global, vous pouvez utiliser le widget direction du vent , accessible à partir de l'onglet affichage.Le widget vous permet de visualiser comment le vent souffle en utilisant un modèlisationde "windsock", et vous pouvez définir dynamiquement la vitesse du vent , la direction et l'inclinaison en cliquant sur le nom d'aspect souhaité et en faisant glisser le curseur le long du bas, ou vous pouvez ajuster la direction ou l'inclinaison en manipulant l'anneau vert et la flèche bleue sur la partie animée.Vous pouvez également cliquer et faire glisser le widget pour le répositionner n'importe où dans la fenêtre de jeu3D.

Wind Direction tool indicated in View tab of Studio Wind Direction widget showing in 3D viewport of Studio

Effets programmés

Le scripting de la propriété GlobalWind ouvre une gamme entière de possibilités.Par exemple, vous pouvez utiliser l'exemple de code suivant pour provoquer des rafales cycliques de vent qui se détendent et se contractent en utilisant la fonction math.sin().

Script - Rafales de vent cycliques

local gustCycleDelay = 5 -- Durée maximale entre les cycles de rafale en secondes
local gustCycleDuration = 3.5 -- Durée de chaque cycle de rafale en secondes
-- Pendant chaque cycle de rafale, une partie de la rafale sera ajoutée à "baseWind" de manière graduelle
local baseWind = Vector3.new(5, 0, 2) -- Vitesse et direction du vent de base
local gust = Vector3.new(25, 0, 10) -- Vitesse et direction du vent Gust
local gustIntervals = 100 -- Nombre d'itérations utilisées pour calculer chaque intervalle de rafale
local dg = gustCycleDuration / gustIntervals
local dgf = dg / gustCycleDuration
-- Définir le vent global comme vent de base initialement
workspace.GlobalWind = baseWind
-- Attendez la quantité de retard avant de commencer les rafales
task.wait(gustCycleDelay)
while true do
for i = 1, gustIntervals do
local f = math.sin(math.pi * dgf * i) -- Utilisez la fonction sin() pour ramper le vent
workspace.GlobalWind = baseWind + f * gust -- Définir le vent global à vent de base + rafale
task.wait(dg)
end
workspace.GlobalWind = baseWind -- Réinitialiser le vent global au vent de base à la fin du cycle de rafale
task.wait(math.random() * gustCycleDelay) -- Attendez une fraction aléatoire de retard avant le prochain cycle de rafale
end