Question

Je travaille sur une petite petite application, et j'ai utilisé pour dessiner des textures DirectX / 3D à l'écran (tous les éléments en 2 dimensions). L'API, je trouve, est assez facile à utiliser et d'intégrer l'utilisation des principes de la POO, mais je ne peux pas empêcher de penser que l'utilisation de DirectX sur ce petit quelque chose est incroyablement sur-kill.

Je ne peux pas sembler trouver un consensus sur une bonne alternative, cependant. Toutes les suggestions?

EDIT:. alpha-blending natif et le support des fichiers PNG est nécessaire

Avec beaucoup d'amour au premier poste, Jengerer

Était-ce utile?

La solution

Si vous avez besoin alpha mélange, vous devez utiliser le matériel graphique; la seule bonne façon de le faire est d'utiliser une API 3D similaire à la façon dont vous faites maintenant (DirectX ou OpenGL). Toute alternative (GDI / + ou dire, DirectDraw) ne sera pas utiliser pleinement le matériel graphique pour accélérer le mélange et devra l'exécuter sur le processeur, ce qui réduit considérablement les performances.

Comme mentionné précédemment, Direct2D est une option aussi -. Il est fonctionnellement une couche au-dessus de Direct3D qui supporte la fonctionnalité spécifique plus 2D, ainsi que un excellent support de texte

Autres conseils

Si vous n'avez pas besoin d'un support XP, utilisez Direct2D .
Dans le cas contraire, utilisez GDI + .

Windows inclut un hors de la boîte. (GDI32.DLL). Il est possible de brancher dans le message WM_PAINT dans l'appel WindowProc et l'utilisation BeginPaint() commence à dessiner. Une très bonne idée de ce qui peut être fait et un tutoriel de base est disponible sur Zetcode .

J'ai utilisé Gosu dans le passé, et il a été bien travailler avec. Il a été conçu pour être utilisé plus avec Ruby, mais il est pas mal pour C ++. Nous l'avons utilisé dans un jeu de scroller côté rapide, où nous sali avec ordre z et le canal alpha. Il pourrait être utile de vérifier.

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