Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Una de texturas

Iniciado por DraKKaR, 22 de Marzo de 2003, 06:07:19 AM

« anterior - próximo »

DraKKaR

                                Venga, a ver si sabeis algo de esto: imaginad ke he subido una textura junto con sus mipmaps a memoria de texturas mediante gluBuildMipmaps...

Ahora imaginad ke kiero Reemplazar esa textura. Habia pensado en utilizar glTexSubImage para reemplazarla pero eso no actualizara todos los niveles de lightmaps sino solo el ke le digas.. sabeis de alguna funcion parecida a gluBuildMipmaps ke haga lo ke kiero???                                

MaSteR

                                solo 1?
pos haz un for o un do while nu? nu se a q te refieres pero vamos...                                

MChiz

                                Hola:

La verdad es que es una duda que no me habia planteado... las dos soluciones que veo son:

1.- Como bien han dicho aqui, hacer un bucle pasandole todos los niveles de mipmap de la textura. Para crear los niveles de mipmap puedes usar la funcion gluScaleImage, que creo que es la que usa internamente gluBuild2DMipmaps. Si optas por esto, yo te recomendaria hacer una funcion propia, que vendria a ser una gluBuild2DMipmaps, pero que le pudieras decir que use glTexImage2D o glTexSubImage2D. De ese modo puedes construir la textura o "reconstruirla" ( volverla a enviar, que es lo que quieres ).

2.- Esta es mas facil. Puedes borrar la textura y volverla a subir como si fuese una nueva ^_^ No se hasta que punto es poco eficiente. Personalmente, lo veo una guarrada :b

Espero que te ayude.
Un saludote!                                

DraKKaR

                                Me ayuda.

Lo de bajar la textura y subir otra es lo ke hago ahora y el rendimiento cae en picado.
Probare lo ke dices con el gluScaleImage, no sabia ke gluBuild2DMipmaps usaba esa funcion internamente.

No hay mas opciones no?                                

MChiz

                                No te aseguro que gluBuild2DMipmaps utilice gluScaleImage, pero es que una vez alguien me lo dijo ( no me acuerdo quien ). Pero piensalo, es logico :)
Y no, creo que no hay ninguna otra forma. Pero en fin, es que es lo que tendrias que hacer. Calcular los mipmaps los has de calcular si cambias la textura madre, asi que no hay otro remedio. No creo que sea demasiado costoso. Almenos eso espero :)
Di algo cuando lo hayas probado! :)
Un saludotee!                                

MaSteR

                                Si eso avisnos q es interesante                                

DraKKaR

                                Tenias razon.. gluBuild2DMipmaps usa internamente gluScaleImage y glTexImage2D.

Lo ke he hechoe s usar gluBuildMipmaps para precalcular los mipmaps y guardarlos en posivciones de memoria para, cargarlos directamente a base de glTexImage2D.                                

MChiz

                                mmm... pero no querias utilizar glTexSubImage2D?                                

DraKKaR

                                Esa era la intencion pero al final lo ke keria hacer no lo hice por otros motivos, pero se podria usar glTexSubImage en vez de glTexImage perfectamente, siempre ke la textura anterior ya este subida.                                

MChiz

                                mmm... entonces ya esta solucionado? :b                                

MaSteR

                                ala pos mira q bien otro thread util solucionado ^^                                






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.