Godot: Shader-Fehler "Unbekannter Bezeichner in Ausdruck: TIME"

Erstellt am 21. Juni 2018  ·  1Kommentar  ·  Quelle: godotengine/godot

Godot-Version:

3.0.3

Betriebssystem/Gerät einschließlich Version:

Fedora 26

Fehlerbeschreibung:

Ich habe einen Fragment-Shader und eine Funktion erstellt, in der ich die eingebaute Variable TIME verwende. Ich erhalte die Fehlermeldung "Unbekannter Bezeichner in Ausdruck: TIME". Allerdings kann ich TIME in der fragment()-Funktion verwenden, aber nicht in meinen eigenen Funktionen.

Arbeitsbeispiel:

shader_type spatial;
render_mode unshaded;

void fragment()
{
    vec3 col = 0.5 + 0.5*cos(vec3(0.0, TIME, 0.0));
    ALBEDO = col;
}

Nicht funktionierendes Beispiel:

shader_type spatial;
render_mode unshaded;

vec3 getColor()
{
    vec3 col = 0.5 + 0.5*cos(vec3(0.0, TIME, 0.0));
    return col;
}

void fragment()
{
    vec3 col = getColor();
    ALBEDO = col;
}

Schritte zum Reproduzieren:
Erstellen Sie einen Fragment-Shader und schreiben Sie eine Funktion, die TIME verwendet.

Minimales Reproduktionsprojekt:

shader_TIME.zip

archived bug core rendering

Hilfreichster Kommentar

Duplikat von #18315 , das alle eingebauten Variablen abdeckt, aber aus irgendeinem Grund nicht als Fehler bezeichnet wird.

>Alle Kommentare

Duplikat von #18315 , das alle eingebauten Variablen abdeckt, aber aus irgendeinem Grund nicht als Fehler bezeichnet wird.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen