2014-02-11 14 views
6

Ich suche nach einer Möglichkeit, eine GIF-Animation als Textur in THREE.js zu verwenden. Ich kann momentan eine Textur laden (sogar GIF-Format), aber es spielt seine Animation nicht ab.Animiertes GIF als Textur in THREE.js

Gibt es eine Möglichkeit, es zu tun? Ich fand einige Links wie diese:

https://github.com/JordiRos/GLGif

http://stemkoski.github.io/Three.js/Texture-Animation.html

Aber ich brauche GIF-Animation als Textur zu spielen, nicht in einem Canvas.

+1

Sie sagen: "Ich muss GIF-Animation als Textur, nicht in einem Canvas spielen" aber Three.js Texturen werden auf einer Leinwand gerendert. –

+0

Was meinst du "nicht in einem Canvas"? – Mia

Antwort

3

Was Sie sehen, ist kein animiertes GIF als Textur. Die verlinkten Sites verwenden Bibliotheken zum Rendern jedes einzelnen Frames des GIF als Textur und durchlaufen dann diese durch Ändern des Offsets des texturierten Bilds.

Betrachten Sie die Quelle für die TextureAnimation Verbindung und sehen Sie Linie 157. Das ist das Objekt, das dies ausführt. Sie können sehen, dass die Lauf Animation überhaupt kein GIF ist:

http://stemkoski.github.io/Three.js/images/run.png

-1

Es funktioniert tatsächlich das animierte GIF mit der veralteten THREE.ImageUtils.loadTexture zu sehen ...

var materialTextured = new MeshBasicMaterial({ 
    map: THREE.ImageUtils.loadTexture('mygif.gif'); 
}); 

und dann auf render(), rufen Sie

+0

Danke, dass du deine Erfahrung geteilt hast, aber ich habe sie benutzt und keine Animation ist passiert. Vielleicht könnten Sie bitte mehr Details liefern. – Halt

+0

gleich, es antwortet nicht –

Verwandte Themen