Wie scrollt man eine Textur auf einer Ebene? Also habe ich ein Flugzeug mit einer Textur, kann ich einen Shader verwenden, um von links nach rechts (unendlich) die Textur darauf zu scrollen?GLSL-Shader, die Scroll-Textur
5
A
Antwort
10
-Setup der Textur Wickelmodus
glTexParameteri(TextureID, L_TEXTURE_WRAP_S, GL_REPEAT)
den Schwimmer einheitlichen hinzufügen namens
Time
zu Ihrer Texturierung ShaderVerwendung so etwas wie
texture2D(sampler, u + Time, v)
Verwendung während Textur Probe zu holen.Aktualisieren Sie die
Time
Uniform mit einigen Timer in Ihrem Code.
Hier ist ein GLSL Shader:
/*VERTEX_PROGRAM*/
in vec4 in_Vertex;
in vec4 in_TexCoord;
uniform mat4 ModelViewMatrix;
uniform mat4 ProjectionMatrix;
out vec2 TexCoord;
void main()
{
gl_Position = ProjectionMatrix * ModelViewMatrix * in_Vertex;
TexCoord = vec2(in_TexCoord);
}
/*FRAGMENT_PROGRAM*/
in vec2 TexCoord;
uniform sampler2D Texture0;
/// Updated in external code
uniform float Time;
out vec4 out_FragColor;
void main()
{
/// "u" coordinate is altered
out_FragColor = texture(Texture0, vec2(TexCoord.x + Time, TexCoord.y));
}
Verwandte Themen
- 1. Variable, die die Zeilennummer
- 2. die
- 3. Listenimplementierung, die die Bestellung beibehält
- 4. Rückkehrliste, die die Bedingungen erfüllen
- 5. Abfrage, die die Leerzeichen ignorieren
- 6. Ist die Filialabdeckung die gleiche wie die Erfassungsabdeckung?
- 7. Wählen Sie die Zeile, die zumindest die Suchanfrage enthält
- 8. Was ist die Variable, die die Umgebung in Django anzeigt?
- 9. Ist die Reichweite für die Schleife vorteilhaft für die Leistung?
- 10. Schließen die Verbindung automatisch die Anweisung und die Ergebnismenge?
- 11. Ermitteln, ob die App die Produktionsversion oder die Entwicklungsversion ist
- 12. Wenn die Linq-Methode Elemente zurückgibt, die die Bedingung
- 13. Deaktivieren Sie die Wischgeste, die die Navigationsleiste in Android
- 14. Kann die Methode type für die Klasse, die dem Protokoll
- 15. return true, wenn die Spalte, die die gleiche ProductID haben
- 16. Wie annulliere ich die Felder, die die Validierung nicht bestehen und die Domäne speichern?
- 17. Benennen Sie die Datei in JFileChooser um, wenn die Datei existiert und die Benutzereingabe die Erweiterung
- 18. Die Site auf den neuen Host und die Domain verschoben, alle Links, die die Startseite darstellen?
- 19. eine Anordnung von Indizes zu erstellen, die die Größe der Schleife hat, die die Daten
- 20. Was ist die Jenkins-Variable, die die Perforce-Änderungsliste enthält, die den Build ausgelöst hat?
- 21. Kann ich in einem C# -Ausnahmenhandler die Parameter finden, die an die Methode übergeben wurden, die die Ausnahme ausgelöst hat?
- 22. die Preiszeichen explodieren und die Anzahl
- 23. Beeinflusst die .NET-Baugruppengröße die Leistung?
- 24. Erhöht die Sitzungs-ID-Rotation die Sicherheit?
- 25. Wie die Textdatei anzuzeigen, während die Schaltfläche
- 26. Wie findet die JSP-Taglib die .TLD?
- 27. Beeinflusst die timeBeginPeriod-API die Systemuhr?
- 28. Beeinflusst die Platzierung der Klammern die Lesbarkeit?
- 29. Javascript Funktion, die die Exponentengleichungen validiert
- 30. Private Zuschauer, die die YouTube-API verwenden