Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Texturas En Opengl

Iniciado por shephiroth, 19 de Enero de 2005, 12:53:38 AM

« anterior - próximo »

shephiroth

 Wenas.

Por lo que comentais la idea de hacer una textura por tile no es recomendable......pos entonces me olvido xDD

_Grey: Muchas gracias por la librería, ahora le echaré un ojo a ver si puedo utilizarla ^^.

martiño: Ya observer ese problema cuando empecé.....como no tenia mucha idea creia q la funcion que definia que trozo de la textura tenia q dibujar lo haia mal........incluso recree el archivo grafico por si estaba mal......me pase por el irc y me dijeron lo mismo que tu, que el filtro bilinear me estaba dando los fallos.....lo solucione poniendo este filtro (la verdad no entiendo mucho la diferencia, pero si funciona pues funciona xDD):
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);

Buffon: Demomento no tengo tal problema, puesto que la funcion de carga de imagen me la devuelve siempre en RGBA. Utilizo tgas demomento, y me permite comprimidos y sin comprimir.....una funcion muy maja de los tutos de nehe xDD

GRACIAS ^^

martiño

 
Citarmartiño: Ya observer ese problema cuando empecé.....como no tenia mucha idea creia q la funcion que definia que trozo de la textura tenia q dibujar lo haia mal........incluso recree el archivo grafico por si estaba mal......me pase por el irc y me dijeron lo mismo que tu, que el filtro bilinear me estaba dando los fallos.....lo solucione poniendo este filtro (la verdad no entiendo mucho la diferencia, pero si funciona pues funciona xDD):
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);

El filtro GL_NEAREST es muy cutre, simplemente pone el pixel del color del texel mas cercano, si tienes una textura de mucha resolucion no se va a notar, pero si tienes una textura de tamaño normal se vará el poligono a cuadraditos, como en los primeros juegos 3D.

Los filtros que se usan habitualmente (en los juegos comerciales) son:

El bilineal:

         glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST);
         glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

El trilineal:

         glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR;
         glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

Estos dos filtros usan mipmaping, con lo que tienes que especificar los mipmaps para cada textura. La forma mas facil es con gluBuild2DMipmaps.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.