03.04.2013 Views

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

172 Sha<strong>de</strong>rs <strong>de</strong> estimativa <strong>de</strong> elementos <strong>de</strong> geometria diferencial <strong>de</strong> primeira or<strong>de</strong>m<br />

/////////////////////////////////////////////////////////////////////<br />

float2 Idx1DTo2D( float iIdx, float2 vCons )<br />

{<br />

}<br />

return float2( iIdx, iIdx ) * vCons;<br />

/////////////////////////////////////////////////////////////////////<br />

// Constantes <strong>de</strong>finidas pela aplicação e utilizadas como segundo<br />

// parâmetro <strong>de</strong> Idx1DTo2D( ).<br />

/////////////////////////////////////////////////////////////////////<br />

float2 g_vVtCons; // Utilizado em mapas <strong>de</strong> atributos <strong>de</strong> vértices<br />

float2 g_vFaceCons; // Utilizado em mapas <strong>de</strong> atributos <strong>de</strong> faces<br />

float2 g_vAdjCons; // Utilizado com o mapa <strong>de</strong> relações <strong>de</strong> adjacência<br />

/////////////////////////////////////////////////////////////////////<br />

// Objetos <strong>de</strong> amostragem <strong>de</strong> textura.<br />

/////////////////////////////////////////////////////////////////////<br />

sampler sVPos; // Mapa <strong>de</strong> posições dos vértices<br />

sampler sUpdVPos; // Mapa <strong>de</strong> posições atualizadas dos vértices<br />

sampler sVTex; // Mapa <strong>de</strong> coor<strong>de</strong>nadas <strong>de</strong> textura dos vértices<br />

sampler sFace; // Mapa <strong>de</strong> faces<br />

sampler sAdjIdx; // Mapa <strong>de</strong> índices <strong>de</strong> adjacência<br />

sampler sAdj; // Mapa <strong>de</strong> relações <strong>de</strong> adjacência<br />

sampler sFaceN; // Mapa <strong>de</strong> normais às faces<br />

sampler sFaceT; // Mapa <strong>de</strong> tangentes às faces<br />

sampler sFaceB; // Mapa <strong>de</strong> bitangente às faces<br />

/////////////////////////////////////////////////////////////////////<br />

// 1o. passo: Atualiza as posições dos vértices <strong>de</strong> acordo com a<br />

// função <strong>de</strong> <strong>de</strong>formação.<br />

/////////////////////////////////////////////////////////////////////<br />

float4 UpdateVPos( float2 vTex ) : COLOR<br />

{<br />

// Lê a posição do vértice<br />

float4 vPos = tex2D( sVPos, vTex );<br />

// Chama a função <strong>de</strong> <strong>de</strong>formação <strong>de</strong>finida pela aplicação<br />

// Obs.: A função não é apresentada nessa listagem

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!