• No se han encontrado resultados

Tema 6. Aplicación de texturas 2D

N/A
N/A
Protected

Academic year: 2021

Share "Tema 6. Aplicación de texturas 2D"

Copied!
8
0
0

Texto completo

(1)

Tema 6: Aplicaci´

on de Texturas 2D

(2)

Contenido

1

Introducci´

on

2

Coordenadas de Textura

3

Creaci´

on de una Textura 2D

(3)

Introducci´

on

Introducci´

on

El uso de texturas para aumentar el realismo visual de las

aplicaciones es muy frecuente.

Se va a mostrar c´

omo se puede utilizar una imagen 2D a modo de

mapa de color de manera que el valor definitivo de un determinado

p´ıxel dependa de la iluminaci´

on de la escena y de la textura.

En concreto, se presenta c´

omo utilizar OpenGL para aplicar una

(4)

Coordenadas de Textura

Descripci´

on

Las coordenadas de textura son un atributo m´

as de los v´

ertices.

Es responsabilidad del programador suministrar estas coordenadas.

El rango de coordenadas v´

alido en el espacio de la textura es entre 0

(5)

Creaci´

on de una Textura 2D

Son tres pasos:

1

Crear un objeto textura.

2

Asignar la unidad de textura.

3

Especificar para cada v´

ertice de la superficie sus coordenadas de

textura.

Listado 1: Lectura de un archivo de imagen en formato RGB

GLubyte ∗ l e e T e x t u r a ( c h a r ∗n o m b r e F i c h e r o , i n t ancho , i n t a l t o ) { GLubyte ∗ t e x t u r a = ( GLubyte ∗) m a l l o c (

s i z e o f ( GLubyte ) ∗3∗a n c h o∗ a l t o ) ; FILE ∗ f i c h e r o ;

(6)

Listado 2: Ejemplo de creaci´

on de una textura

GLubyte ∗ t e x t u r a= l e e T e x t u r a ( ” m e t a l . r g b ” , 2 5 6 , 2 5 6 ) ; // S o l i c i t a un nombre G L u i n t nombre ; g l G e n T e x t u r e s ( 1 , &nombre ) ; // C r e a un o b j e t o t e x t u r a g l B i n d T e x t u r e ( GL TEXTURE 2D , nombre ) ; // E s p e c i f i c a l a t e x t u r a RGB de t a l l a 256 x 2 5 6 g l T e x I m a g e 2 D ( GL TEXTURE 2D , 0 , GL RGB , 2 5 6 , 2 5 6 , 0 , GL RGB , GL UNSIGNED BYTE , t e x t u r a ) ; // R e p i t e l a t e x t u r a t a n t o en s como en t

g l T e x P a r a m e t e r i ( GL TEXTURE 2D , GL TEXTURE WRAP S , GL REPEAT ) ; g l T e x P a r a m e t e r i ( GL TEXTURE 2D , GL TEXTURE WRAP T , GL REPEAT ) ; // F i l t r a d o l i n e a l de l a t e x t u r a

g l T e x P a r a m e t e r i ( GL TEXTURE 2D , GL TEXTURE MAG FILTER , GL LINEAR ) ; g l T e x P a r a m e t e r i ( GL TEXTURE 2D , GL TEXTURE MIN FILTER , GL LINEAR ) ; // A c t i v a l a u n i d a d de t e x t u r a 0 g l A c t i v e T e x t u r e ( GL TEXTURE0 ) ; // A s i g n a e l o b j e t o t e c t u r a a d i c h a u n i d a d de t e x t u r a g l B i n d T e x t u r e ( GL TEXTURE 2D , nombre ) ; // O b t i e n e e l i n d i c e de l a v a r i a b l e d e l S h a d e r de t i p o s a m p l e r 2 D G L u i n t l o c= g l G e t U n i f o r m L o c a t i o n ( program , ” Img ” ) ; // I n d i c a que Img d e l S h a d e r u s e l a u n i d a d de t e x t u r a 0 g l U n i f o r m 1 i ( l o c , 0 ) ;

(7)

Figura:

Ejemplo de repetici´

on de textura. A la izquierda se ha repetido la

textura en sentido s, en el centro en sentido t, y a la derecha en ambos

sentidos.

(8)

Muestreo de la Textura

Descripci´

on

Las coordenadas de textura se proporcionan para cada v´

ertice y son

interpoladas en el pipeline del procesador gr´

afico.

En el procesador de fragmentos se utiliza la orden texture para

acceder al texel correspondiente a dicho fragmento.

Dicha funci´

on devuelve el color que ya ha sido procesado seg´

un los

par´

ametros de repetici´

on y filtrado especificados por el programador.

Listado 3: Acceso a la textura desde el Fragment Shader

u n i f o r m s a m p l e r 2 D Img ; i n v e c 2 c o o r d T e x t u r a ; o u t v e c 4 c o l o r F r a g m e n t o ; v o i d main ( ) { c o l o r F r a g m e n t o = t e x t u r e ( Img , c o o r d T e x t u r a ) ; }

Referencias

Documento similar

En el capítulo de desventajas o posibles inconvenientes que ofrece la forma del Organismo autónomo figura la rigidez de su régimen jurídico, absorbentemente de Derecho público por

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

quiero también a Liseo porque en mi alma hay lugar para amar a cuantos veo... tiene mi gusto sujeto, 320 sin que pueda la razón,.. ni mande

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Pero la realidad se impone por encima de todo; la misma Isidora es consciente del cambio: «Yo misma conozco que soy otra, porque cuando perdí la idea que me hacía ser señora, me

Five-step methodology DEA-based * allows us the decompose the differences in the research output of universities in terms of Intra-field inefficiency (inefficiencies of the

– Seeks to assess the contribution of the different types of capital assets: tangible ICT, tangible non-ICT, intangibles (public and private) and public capital (infrastructures). ·

d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que