Untitled - Departamento de Ciencias e Ingeniería de la Computación
Untitled - Departamento de Ciencias e Ingeniería de la Computación
Untitled - Departamento de Ciencias e Ingeniería de la Computación
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Las posibles semánticas <strong>de</strong> salida <strong>de</strong> los pixel sha<strong>de</strong>rs:<br />
Semántica Descripción<br />
COLORn Color para el ren<strong>de</strong>r target n<br />
DEPTHn Valor <strong>de</strong> profundidad<br />
Don<strong>de</strong> n es un entero opcional que sirve para especificar a qué registro especifico mapea, y el cual varía entre 0 y el<br />
número <strong>de</strong> recursos soportados. Como por ejemplo: TEXTCOORD3 o COLOR0.<br />
3.3.5 Conversiones <strong>de</strong> tipo<br />
Existen una gran cantidad <strong>de</strong> conversiones incorporadas en el lenguaje.<br />
Conversión Vali<strong>de</strong>s<br />
Esca<strong>la</strong>r a esca<strong>la</strong>r Esta conversión siempre es válida. Cuando aplicamos una conversión <strong>de</strong> un tipo<br />
booleano a un tipo entero o punto flotante, false es consi<strong>de</strong>rado cero y true uno.<br />
Cuando convertimos <strong>de</strong>s<strong>de</strong> un tipo entero o punto flotante a uno booleano, un cero<br />
es consi<strong>de</strong>rado false, y cualquier otro valor es consi<strong>de</strong>rado true. Cuando aplicamos<br />
una conversión <strong>de</strong> un tipo en punto flotante a un tipo entero, el valor es redon<strong>de</strong>ado<br />
al entero más cercano.<br />
Esca<strong>la</strong>r a vector Esta conversión siempre es válida. Replica al esca<strong>la</strong>r <strong>de</strong> manera <strong>de</strong> llenar al vector.<br />
Esca<strong>la</strong>r a matriz Esta conversión siempre es válida. Replica al esca<strong>la</strong>r <strong>de</strong> manera <strong>de</strong> llenar <strong>la</strong> matriz.<br />
Esca<strong>la</strong>r a objeto Conversión invalida.<br />
Esca<strong>la</strong>r a estructura Replica al esca<strong>la</strong>r <strong>de</strong> manera <strong>de</strong> llenar <strong>la</strong> estructura.<br />
Vector a esca<strong>la</strong>r Esta conversión siempre es válida. Se selecciona el primer componente <strong>de</strong>l vector y se<br />
lo asigna al esca<strong>la</strong>r.<br />
Vector a vector El vector <strong>de</strong>stino no <strong>de</strong>be ser más gran<strong>de</strong> que el vector fuente. La conversión<br />
mantiene los primeros componentes y <strong>de</strong>scarta el resto.<br />
Para este tipo <strong>de</strong> conversión, <strong>la</strong>s columnas <strong>de</strong> <strong>la</strong>s matrices, <strong>la</strong>s fi<strong>la</strong>s <strong>de</strong> <strong>la</strong>s matrices y<br />
<strong>la</strong>s estructuras numéricas son tratadas como vectores.<br />
Vector a matriz Para que esta conversión sea válida, el tamaño <strong>de</strong>l vector <strong>de</strong>be ser igual al tamaño <strong>de</strong><br />
<strong>la</strong> matriz.<br />
Vector a objeto Conversión invalida.<br />
Vector a estructura Es válida si <strong>la</strong> estructura no es más gran<strong>de</strong> que el vector, y si todos los componentes<br />
<strong>de</strong> <strong>la</strong> estructura son numéricos.<br />
Matriz a esca<strong>la</strong>r Esta conversión siempre es válida. Se selecciona el primer componente <strong>de</strong> <strong>la</strong> matriz<br />
(primera fi<strong>la</strong> y primera columna) y se lo asigna al esca<strong>la</strong>r.<br />
Matriz a vector Para que esta conversión sea válida, el tamaño <strong>de</strong> <strong>la</strong> matriz <strong>de</strong>be ser igual al tamaño<br />
<strong>de</strong>l vector.<br />
Matriz a matriz Para que esta conversión sea válida, <strong>la</strong> matriz <strong>de</strong>stino no <strong>de</strong>be ser más gran<strong>de</strong> que <strong>la</strong><br />
matriz fuente, en ambas dimensiones. La conversión funciona manteniendo los<br />
valores <strong>de</strong> más arriba y <strong>de</strong> más a <strong>la</strong> izquierda, <strong>de</strong>scartando el resto.<br />
Matriz a objeto Conversión invalida.<br />
Matriz a estructura Para que esta conversión sea válida, el tamaño <strong>de</strong> <strong>la</strong> estructura <strong>de</strong>be ser igual al<br />
tamaño <strong>de</strong> <strong>la</strong> matriz, y los componentes <strong>de</strong> <strong>la</strong> estructura <strong>de</strong>ben ser todos <strong>de</strong> tipo<br />
numérico.<br />
Página 54