Foros 3DPoder.  

Bienvenido a Foros 3DPoder..

Usted esta viendo este foro como invitado, no esta registrado todavía, lo que limita su visión del foro. Si quiere unirse gratis a la mayor comunidad del diseño gráfico de habla hispana, tener acceso a publicar y responder mensajes, tener mensajes privados con otros miembros(PM), responder encuestas, publicar sus imágenes para que las vea el resto del mundo, tener acceso a los video_tutoriales, y muchas cosas más, no lo dude. Registrarse es rápido, simple y gratuito, agregate hoy a la mayor comunidad 3D de habla hispana! !

Si usted tiene algún problema con su registro, por favor , díganoslo aquí. 3d





¿Te ayudo?
Retroceder   Foros 3DPoder. > :: Técnicas 3d > VideoJuegos
Foro3D Galeria Privada Video3D Blueprints Software Blog3DPoder Buscar Empleo Donaciones

google adsense


Respuesta
 
Herramientas
Antiguo 09 abr 2006   #1
alberizo
Marqués de Carabás
 
Avatar de alberizo
 
Fecha de Ingreso: noviembre-2005
Mensajes: 2,090
Predeterminado [Engines gráficos] Texturas potencia de 2

Dsd siempre se utilizan en los videojuegos texturas potencia de 2 (p2), pero ahora viene mi dilema, yo tb siempre las e utilizado en p2. pero alguna vez no lo he hecho, y es q ahora me viene genial q no lo sea, normalemtne no me han dado problema , x ejemplo una textura de 490x1100, pero algunas veces si que me los a dado, salian puntos negros en algunas zonas de la textura, pero ajustando la imagen a p2. queda 512x1024 y se ve bien, pero no es cuadrada.

Mis dudas son, el que las texturas tengan q ser cuadradas en potencia de 2, es un mito, o se pueden usar sin problemas. De que depende en que mi equipo se vea bien y en el de otra no, depende del chip gráfico, de la API?
Gracias
__________________
alberizo is offline   Responder Con Cita
Antiguo 09 abr 2006   #2
HalfVector
H = E + L
 
Fecha de Ingreso: marzo-2004
Ubicación: Entre dos vectores
Mensajes: 877
Predeterminado Re: [Engines gráficos] Texturas potencia de 2

Te pongo una respuesta que le di a un compañero de Stratos sobre el tema de render targets y texturas potencia de dos:

Cita:
Escritos por BeRSeRKeR,21/03/06, 06:40
No tienes por qué tener problemas a la hora de crear RTs que no sean potencia de dos, siempre que la aceleradora lo soporte. Para saberlo, puedes utilizar el "caps viewer" y ver si el flag D3DPTEXTURECAPS_NONPOW2CONDITIONAL está activado. Lo que indica ese flag es que bajo ciertas circunstancias, puedes utilizar texturas que no sean potencia de dos. Esas circunstancias son (sacado de la documentación de DX):

Cita:
D3DPTEXTURECAPS_NONPOW2CONDITIONAL

D3DPTEXTURECAPS_POW2 is also set, conditionally supports the use of 2D textures with dimensions that are not powers of two. A device that exposes this capability can use such a texture if all of the following requirements are met.

* The texture addressing mode for the texture stage is set to D3DTADDRESS_CLAMP.
* Texture wrapping for the texture stage is disabled (D3DRS_WRAP n set to 0).
* Mipmapping is not in use (use magnification filter only).
* Texture formats must not be D3DFMT_DXT1 through D3DFMT_DXT5.

If this flag is not set, and D3DPTEXTURECAPS_POW2 is also not set, then unconditional support is provided for 2D textures with dimensions that are not powers of two.

A texture that is not a power of two cannot be set at a stage that will be read based on a shader computation (such as the bem - ps and texm3x3 - ps instructions in pixel shaders versions 1_0 to 1_3). For example, these textures can be used to store bumps that will be fed into texture reads, but not the environment maps that are used in texbem - ps, texbeml - ps, and texm3x3spec - ps. This means that a texture with dimensions that are not powers of two cannot be addressed or sampled using texture coordinates computed within the shader. This type of operation is known as a dependent read and cannot be performed on these types of textures.
Saludos.
Este es el código de nuestro motor que comprueba si la aceleradora soporta texturas potencia de dos:

Código:
if (caps.TextureCaps.SupportsPower2)
{
    if (!caps.TextureCaps.SupportsNonPower2Conditional)
        HLogWriter.Write("<font color=red>Textures must be power of two in size</font>", true, HLogWriter.Style.Blinking);
    else
        HLogWriter.Write("Textures do not need to be power of two in size (under certain conditions)", true);
}
else
{
    HLogWriter.Write("Textures do not need to be power of two in size", true);
}
Esto es para managed Direct3D. Para unmanaged Direct3D es similar. Y para OpenGL debe existir una extensión (esta es la pricnipal razón por la que abandoné OpenGL en favor de Direct3D) que te indique esto mismo. Si estás utilizando algún motor, me imagino que también dispondrá de una estructura que te indique las capacidades de la aceleradora.

En fin, si la aceleradora soporta texturas que no sean potencia de dos, no debería haber problemas, aunque en teoría se hace un uso más óptimo de memoria con las texturas potencia de dos.

En cualquier caso, siempre se podrían dividir las texturas que no sean potencia de dos en varias texturas que sí lo sean. Creo que esto es lo que hizo un compañero de Stratos en su motor 2D en el que utilizaba Direct3D.

Saludos.
HalfVector is offline   Responder Con Cita
Respuesta

Etiquetas Identificativas
engines, graficos, potencia, texturas


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Normas de Publicación
Usted no puede publicar nuevos mensajes.
Usted no puede responder mensajes
Usted no puede publicar archivos adjuntos
Usted no puede editar sus mensajes

BB code is habilitado
Las caritas están habilitado
Código [IMG] está deshabilitado
Código HTML está deshabilitado
Trackbacks are deshabilitado
Pingbacks are deshabilitado
Refbacks are deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TEXTURAS: Sitios para bajar texturas carlosall Materiales y Texturizado 101 Hace 3 Semanas 18:04
Exportar/Importar OBJ con texturas RavenX Modelado 2 07 jun 2005 14:01
tratamiento de texturas bitmap para dvd. all Postproducción 17 04 jun 2005 20:22
Paranoia backburner y texturas trenZ Problemas con Programas 1 21 may 2004 14:16
Intercambio de cds de texturas dideje Infografía General 1 01 jul 2003 14:59

google adsense



La franja horaria es GMT. Ahora son las 21:20.


Powered by: vBulletin, para 3DPoder.com Versión 3.7.0 Beta 4
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.
3DPoder.com Foro3d.com © Al servicio de la infografia y el 3D desde 1997.
Refinance | Wills | Mortgage | Mortgages | Comcast Digital Voice
Content Relevant URLs by vBSEO 3.2.0