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.

Cubemap

Eredita: ImageTextureLayered < TextureLayered < Texture < Resource < RefCounted < Object

Sei texture quadrate che rappresentano le facce di un cubo. Comunemente usato come skybox.

Descrizione

Una cubemap è composta da 6 texture organizzate in livelli. Sono solitamente utilizzate per simulare i riflessi nel rendering 3D (vedi ReflectionProbe). Possono essere utilizzate per far sembrare che un oggetto rifletta l'ambiente circostante. Questo di solito offre prestazioni molto migliori rispetto ad altri metodi di riflessione.

Questa risorsa viene in genere utilizzata come uniforme negli shader personalizzati. Pochi metodi principali in Godot utilizzano le risorse Cubemap.

Per creare manualmente un file texture di questo tipo, reimporta i file immagine tramite le preimpostazioni di importazione nel pannello File System. Per creare un CubemapArray da codice, usa ImageTextureLayered.create_from_images() su un'istanza della classe CubemapArray.

L'ordine previsto delle immagini è X+, X-, Y+, Y-, Z+, Z- (nel sistema di coordinate di Godot, quindi Y+ è "su" e Z- è "avanti"). Puoi usare uno dei seguenti modelli come base:

Nota: Godot non supporta l'uso di cubemap in un PanoramaSkyMaterial. Per usare una cubemap come skybox, converti il PanoramaSkyMaterial predefinito in uno ShaderMaterial tramite l'opzione Converti in ShaderMaterial nel menu a discesa delle risorse, quindi sostituisci il suo codice con il seguente:

shader_type sky;

uniform samplerCube source_panorama : filter_linear, source_color, hint_default_black;
uniform float exposure : hint_range(0, 128) = 1.0;

void sky() {
    // If importing a cubemap from another engine, you may need to flip one of the `EYEDIR` components below
    // by replacing it with `-EYEDIR`.
    vec3 eyedir = vec3(EYEDIR.x, EYEDIR.y, EYEDIR.z);
    COLOR = texture(source_panorama, eyedir).rgb * exposure;
}

Dopo aver sostituito il codice shader e salvato, specifica la risorsa Cubemap importata nella sezione Parametri shader dello ShaderMaterial nell'Ispettore.

In alternativa, è possibile usare questo strumento per convertire una cubemap in una mappa del cielo equirettangolare e utilizzare PanoramaSkyMaterial come al solito.

Metodi

Resource

create_placeholder() const


Descrizioni dei metodi

Resource create_placeholder() const 🔗

Crea una versione segnaposto di questa risorsa (PlaceholderCubemap).