Performances?

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
Polux
Messages : 440
Inscription : mer. 21/janv./2004 11:17
Localisation : france
Contact :

Message par Polux »

djes a écrit :
beauregard a écrit :
comtois a écrit :Essaye plutôt de travailler avec plus de sprites3d, en utilisant Sprite3DBlendingMode().
heu, si vous pouviez expliquer dans quel but précis vous utilisez cette commande de haute volée( jeux ou application 3D) ?
Ca dépend; ça permet de combiner des effets (de transparence) sur plusieurs sprites. Rien de mieux pour faire du feu par exemple.
j'utilise enormément cette commande dans mes jeux ( ça permet de jouer sur les transparences et de créer de beaux effets spéciaux comme le feu, la neige ou autres ).
Le sub-system directx9 est inclu direct dans la beta20 ( il remplace dx7? ) ? j'ai la flemme de tester...
Anonyme

Message par Anonyme »

Rien que ton drawtext te bouffe un max de fps. J'ai déjà parlé à des gars qui travaillaient en Opengl qui se plaignaient aussi de la lenteur de l'affichage du texte (pour leur debugage), sans même imaginer ce qu'il y a derrière.

Je rappelle qu'une police TTF ou Postscript est composée de vecteurs, que chaque lettre est DESSINEE à chaque appel (tracé de lignes+remplissage+masquage), que même si c'est fait de façon transparente par le système, certaines polices sont complexes et que c'est une opération LOURDE!
Les mecs qui bossent sous OpenGL pour afficher du texte brut à l'écran code avec des moufles à mon avis , le rendu s'effectue sur une texture , ensuite tu affiche cette texture sur un polygone , tant que tu ne modifie pas ton texte , tu ne change pas la texture du polygone , et ca marche très bien. :D
Sinon , oui les polices bitmap sont plus jolie que du ttf , et plus rapide d'execution a l'affichage.


Pour le fps un code tout bête :

Code : Tout sélectionner

if FPS_T < Timer()
   FPS_T = Timer() + 1000
   FPS = FPS_C
   FPS_C = 0
endif 

FPS_C + 1
comtois
Messages : 5172
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Polux a écrit :j'utilise enormément cette commande dans mes jeux ( ça permet de jouer sur les transparences et de créer de beaux effets spéciaux comme le feu, la neige ou autres ).
Le sub-system directx9 est inclu direct dans la beta20 ( il remplace dx7? ) ? j'ai la flemme de tester...
Oui le subsystem directx9 est inclu dans la beta.
Non il ne remplace pas dx7 pour l'instant ( peut-être quand la lib 3D sera modifiée avec la 4.30 ?)

Tu vas devoir trouver une autre méthode si tu utilises le subsystem, dx9 ne gère pas Sprite3DBlendingMode().

Et pour l'instant le subsystem ne gère que des sprites 16 bits, va falloir attendre pour le 32 bits !
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

Polux a écrit :j'utilise enormément cette commande dans mes jeux ( ça permet de jouer sur les transparences et de créer de beaux effets spéciaux comme le feu, la neige ou autres ).
ah oui, effectivement... çà doit être toute une aventure que de mettre au point tout cela( j'ai bien fait du feu, mais à l'ancienne).
Répondre