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.

116 <strong>Arquitetura</strong> <strong>de</strong> interação<br />

rísticas da imagem, a região <strong>de</strong> interesse po<strong>de</strong> <strong>de</strong>terminar a extensão do “campo <strong>de</strong> gravida<strong>de</strong>”,<br />

pois a aplicação po<strong>de</strong> fazer com que o cursor 2D seja atraído à característica mais próxima<br />

<strong>de</strong>ntro da região <strong>de</strong> interesse.<br />

Esses dados po<strong>de</strong>m ser fornecidos à arquitetura através do comando SetROI() que recebe<br />

como parâmetros as coor<strong>de</strong>nadas 2D do canto superior esquerdo e canto inferior direito da<br />

região <strong>de</strong> interesse.<br />

• Sha<strong>de</strong>rs <strong>de</strong> <strong>de</strong>formação <strong>de</strong> vértices, <strong>de</strong>finidos pela aplicação. Aplicam-se apenas quando há<br />

modificação dos atributos <strong>de</strong> vértices <strong>de</strong> entrada, ou dos atributos produzidos pelo estágio <strong>de</strong><br />

cálculo <strong>de</strong> atributos geométricos. Quando utilizado no primeiro estágio, o sha<strong>de</strong>r <strong>de</strong> <strong>de</strong>for-<br />

mação <strong>de</strong> vértices recebe como parâmetro <strong>de</strong> entrada os atributos da geometria original (com<br />

os tipos <strong>de</strong> dados e semântica <strong>de</strong>finidas anteriormente) e produz como saída a mesma lista<br />

<strong>de</strong> atributos, mas com valores possivelmente alterados segundo o processamento <strong>de</strong>finido pela<br />

aplicação. A entrada do sha<strong>de</strong>r <strong>de</strong> <strong>de</strong>formação <strong>de</strong> vértices utilizado no terceiro estágio inclui<br />

não só todos os parâmetros do primeiro estágio, como também os novos atributos correspon-<br />

<strong>de</strong>ntes às proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial estimadas no segundo estágio.<br />

Esses dados po<strong>de</strong>m ser fornecidos à arquitetura através <strong>de</strong> dois comandos, SetPreVertex-<br />

Deform() e SetPostVertexDeform(), que recebem como parâmetro uma string <strong>de</strong><br />

texto contendo o código do sha<strong>de</strong>r <strong>de</strong> modificação <strong>de</strong> atributos <strong>de</strong> vértices. O comando Set-<br />

PreVertexDeform() recebe o sha<strong>de</strong>r a ser executado antes da etapa <strong>de</strong> estimativa <strong>de</strong><br />

proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial. O comando SetPostVertexDeform() recebe o<br />

sha<strong>de</strong>r a ser executado após a etapa <strong>de</strong> estimativa <strong>de</strong> proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial.<br />

• Sha<strong>de</strong>r <strong>de</strong> <strong>de</strong>formação <strong>de</strong> fragmentos, <strong>de</strong>finido pela aplicação. Aplica-se apenas quando há mo-<br />

dificação dos atributos <strong>de</strong> entrada interpolados ao longo <strong>de</strong> cada fragmento produzido durante<br />

a rasterização. A entrada do sha<strong>de</strong>r <strong>de</strong> <strong>de</strong>formação <strong>de</strong> fragmentos recebe como parâmetros os<br />

atributos <strong>de</strong> entrada (com os tipos <strong>de</strong> dados e semântica <strong>de</strong>finidas anteriormente) interpolados<br />

linearmente pelo rasterizador, e produz como saída a mesma lista <strong>de</strong> atributos, mas com valores<br />

possivelmente alterados segundo o processamento <strong>de</strong>finido pela aplicação.<br />

Esses dados po<strong>de</strong>m ser fornecidos à arquitetura através do comando SetPixelDeform()<br />

que recebe como parâmetro uma string <strong>de</strong> texto contendo o código do sha<strong>de</strong>r <strong>de</strong> modificação<br />

<strong>de</strong> atributos <strong>de</strong> fragmentos.<br />

• Função <strong>de</strong> chamada <strong>de</strong> retorno a ser utilizada pela arquitetura quando a atualização dos atri-<br />

butos <strong>de</strong> vértices (estágio 1) e estimativa das proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial (estágio 2)

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

Saved successfully!

Ooh no, something went wrong!