J utilise openGL comme moteur 2d pour un jeu
sur certaines textures, j ai des tailles variables et je peux jouer sur le filtage de texture et les mipmap pour obtenir un resultat optimal quelque soit la taille
par contre jai des textures de taille fixe que j affiche exactement a la taille reelle de la texture dans le moteur de jeu
(ex : le jeu a une resolution fenetrée de 1024*768, j utilise par exemple un fond d ecran de menu sur une texture 1024*1024 qui utilise une zone 1024*768 et je joue sur les coordonnées de texture (0,0.25,1) pour l afficher sur la totalité de la fenetre)
le probleme est que le resultat est pas vraiment optimal , il y a une perte entre mon image de départ (jpg ou png, ou bmp , meme resultat) et l affichage dans le moteur, et ce quelque soit le filtering
les PJ montrent bien le problème
je cherche la cause, mais pour l instant j ai pas trouvé grand chose en activant , désactivant GL_DITHER, different param de glHint, etc...
j utilise SOIL pour loader les textures mais je pense pas que le problème soit la
je suis donc preneur de toute info sur ce qui pourrait être la source de ce problème
quelque infos supplémentaire:
j utilise sdl
la fenetre utilise des couleurs 32 bits
le depth test est désactivé, je n utilise que de la 2d
voic les parametres opengl de base
Merci d avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 glEnable(GL_ALPHA_TEST); glAlphaFunc(GL_GREATER,0.05f); glDisable(GL_DEPTH_TEST); glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable(GL_LINE_SMOOTH); glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); glEnable(GL_POINT_SMOOTH); glHint(GL_POINT_SMOOTH_HINT, GL_NICEST); glEnable(GL_CULL_FACE); glCullFace(GL_BACK);![]()
Partager