Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Sky

Hérite de : Resource < RefCounted < Object

Définit l'arrière-plan d'un environnement 3D en utilisant un Material.

Description

La classe Sky utilise un Material pour rendre le fond d'un environnement 3D (son ciel) et la lumière qu'il émet en mettant à jour les cubemaps de réflexion/radiance.

Propriétés

ProcessMode

process_mode

0

RadianceSize

radiance_size

3

Material

sky_material


Énumérations

enum RadianceSize: 🔗

RadianceSize RADIANCE_SIZE_32 = 0

La texture de rayonnement fait 32x32 pixels.

RadianceSize RADIANCE_SIZE_64 = 1

La texture de rayonnement fait 64x64 pixels.

RadianceSize RADIANCE_SIZE_128 = 2

La texture de rayonnement fait 128x128 pixels.

RadianceSize RADIANCE_SIZE_256 = 3

La texture de rayonnement fait 256x256 pixels.

RadianceSize RADIANCE_SIZE_512 = 4

La texture de rayonnement fait 512x512 pixels.

RadianceSize RADIANCE_SIZE_1024 = 5

La texture de rayonnement fait 1024×1024 pixels.

RadianceSize RADIANCE_SIZE_2048 = 6

La texture de rayonnement fait 2048×2048 pixels.

RadianceSize RADIANCE_SIZE_MAX = 7

Représente la taille de l'énumération RadianceSize.


enum ProcessMode: 🔗

ProcessMode PROCESS_MODE_AUTOMATIC = 0

Sélectionner automatiquement le mode de traitement approprié basé sur votre shader de ciel. Si votre shader utilise TIME ou POSITION, cela utilisera PROCESS_MODE_REALTIME. Si votre shader utilise l'une des variables LIGHT_* ou tout uniform personnalisé, cela utilise PROCESS_MODE_INCREMENTAL. Sinon, cela utilisera par défaut PROCESS_MODE_QUALITY.

ProcessMode PROCESS_MODE_QUALITY = 1

Utiliser un échantillonnage d'importance de haute qualité pour traiter la radiance map. En général, cela résulte en une qualité beaucoup plus élevée que PROCESS_MODE_REALTIME mais prend beaucoup plus de temps à générer. Cela ne devrait pas être utilisé si vous prévoyez de changer le ciel durant l'exécution. Si vous constatez que la réflexion n'est pas assez floue et affiche des étincelles ou des lucioles, essayez d'augmenter ProjectSettings.rendering/reflections/sky_reflections/ggx_samples.

ProcessMode PROCESS_MODE_INCREMENTAL = 2

Utiliser le même échantillonnage d'importance de haute qualité pour traiter la radiance map que PROCESS_MODE_QUALITY, mais se met à jour sur plusieurs trames. Le nombre de trames est déterminé par ProjectSettings.rendering/reflections/sky_reflections/roughness_layers. Utilisez ceci lorsque vous avez besoin de radiance map de la plus haute qualité, mais que vous avez un ciel qui se met à jour lentement.

ProcessMode PROCESS_MODE_REALTIME = 3

Utiliser l'algorithme de filtrage rapide pour traiter la radiance map. En général, cela résulte en une qualité inférieure, mais en des temps d'exécution nettement plus rapides. Si vous avez besoin d'une meilleure qualité, mais avez toujours besoin de mettre à jour le ciel à chaque trame, envisagez d'activer ProjectSettings.rendering/reflections/sky_reflections/fast_filter_high_quality.

Note : L'algorithme de filtrage rapide est limité à des cubemaps 256×256, donc radiance_size doit être défini à RADIANCE_SIZE_256. Sinon, un avertissement est affiché et la taille du rayonnement redéfinie est ignorée.


Descriptions des propriétés

ProcessMode process_mode = 0 🔗

La méthode pour générer la radiance map du ciel. La radiance map est une cubemap avec des versions de plus en plus floues du ciel correspondant à différents niveaux de rugosité. Les radiance maps peuvent être chères à calculer.


RadianceSize radiance_size = 3 🔗

La taille de la radiance map du Sky. Plus la taille de la radiance map sera élevée, plus l'éclairage du ciel Sky sera détaillé.

Note : Certains matériels auront des problèmes avec des tailles de radiance plus élevées, en particulier pour RADIANCE_SIZE_512 et plus. Utilisez ces valeurs élevées seulement sur du matériel haut de gamme.


Material sky_material 🔗

Material utilisé pour dessiner l'arrière-plan. Peut être un PanoramaSkyMaterial, ProceduralSkyMaterial, PhysicalSkyMaterial, ou même un ShaderMaterial si vous voulez utiliser votre propre shader personnalisé.