Question

Est-il possible de lire à partir d'une texture dans un sommet shaders avec WebGL?

J'ai écrit un WebGL (juste pour l'essayer) et utilisé Chrome 7 pour le tester . Dès que je suis passé à Chrome 8, il a cessé de fonctionner. Je revérifié que WebGL est activé. L'erreur est:

  

'Texture2D': aucune fonction surchargée correspondant a trouvé

Quand je remplace l'appel à Texture2D avec une constante, cela fonctionne. Texture accès dans un fragment shader en utilisant la même texture fonctionne également.

Quelqu'un a des idées? Je suis particulièrement jeté par le fait que la mise à niveau Chrome a causé sa rupture.

Mise à jour: Il fonctionne dans Firefox 4 beta. Je l'ai signalé un bug avec Chrome - numéro 65340

Mise à jour 2: Il travaille maintenant dans Firefox et Chrome

Était-ce utile?

La solution

Ce ne est pas vraiment un 'bug' dans Chrome.

accès aux textures Vertex est pas une caractéristique nécessaire de l'Open GL ES 2, qui est la base de la spécification WebGL. Je soupçonne que ce qui pourrait se produire est que même si vos supports de pilotes GL sous-jacents sommet accès aux textures, maintenant que vous avez passés à Chrome son en utilisant Angle et Angle ne signale pas que l'accès à la texture de sommet comme disponible.

Vous pouvez comparer vos versions FF et Chrome en utilisant

Thatcher Ulrich

http://webgl-bench.appspot.com/

a le paramètre MAX_VERTEX_TEXTURE_IMAGE_UNITS (à la fin) Chrome / Angle rapporte toujours 0.t

Une autre chose à vérifier est que vous utilisez la syntaxe correcte Texture2D -. La spécification changé et il se peut que FF est Stil supportant la syntaxe ancienne

Autres conseils

Il aimerait faire un commentaire, mais je n'ai pas la réputation.

Comme dit alanatmech, il pourrait être lié à Angle, qui transmet tous les GL remet en DirectX. Il est donc pas une chute de caractéristique et l'avantage serait, d'avoir un support WebGL sur les machines Windows sans pilotes OpenGL.

Vous pouvez essayer de lancer Chrome avec « --use-gl = bureau », il utilisera le rendu OpenGL backend au lieu d'Angle. Votre site ne fonctionne pas pour moi avec Chrome bêta 8.0.552.215 que ce soit, mais il ne donne pas l'erreur que vous avez mentionné, que je reçois sur Chrome 9.0.597.10 Canaries construire sans le drapeau et sur Minefield.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top