3 votes

Je cherche une fonction parallèle à la fonction BitmapData.draw() d'Actionscript, mais en OpenGL.

J'ai une application flash sur laquelle je travaille depuis 11 mois, et j'aimerais la traduire dans un autre langage/une autre plateforme, de préférence Python et OpenGL.

L'une des principales fonctions de mon programme consiste à dessiner des graphiques vectoriels flash (ou des objets d'affichage), puis à les redessiner sur une texture bitmap. Existe-t-il un moyen de faire cela en OpenGL ? En gros, il s'agit de dessiner des polygones à l'écran, puis de dessiner ces polygones sur une texture. Si la texture est affichée directement sous les polygones, et que les polygones sont en mouvement, alors il y a un effet de traînage/dessin/peinture.

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html#draw () --> voici la fonction flash que j'utilise.

J'espère que quelqu'un qui s'y connaît en OpenGL et Actionscript pourra répondre à cette question ou me fournir des détails. Merci d'avance.

2voto

Kos Points 29125

OpenGL ne fournit pas de fonctionnalités pour dessiner vos graphiques vectoriels 2D typiques. Il s'agit d'une API très générique, mais surtout adaptée aux solutions 3D. Il est possible d'implémenter les capacités de rendu de Flash en OpenGL, mais cela représente beaucoup de travail pour vous.

Si vous ne voulez qu'un sous-ensemble (dessiner des sprites, des triangles, des polygones convexes, des lignes ; mélange alpha), alors oui, OpenGL peut être une bonne et rapide solution.

Sinon, il existe une norme appelée OpenVG ce qui pourrait être ce que vous voulez. Il existe plusieurs implémentations, dont certaines peuvent déjà fonctionner sur du matériel. Je n'ai pas encore essayé, cependant - vous devrez vérifier cela vous-même.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X