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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
154 Conclusões e trabalhos futuros<br />
2007a], Auto<strong>de</strong>sk Maya [Auto<strong>de</strong>sk, 2007c], Right Hemisphere Deep Creator/Deep Paint <strong>3D</strong> [Hemi-<br />
sphere, 2007], Pixologic ZBrush [Pixologic, 2007], Interactive Effects Amazon Paint [Effects, 2007],<br />
e também para a maior parte das bibliotecas game engines utilizadas em <strong>de</strong>senvolvimento <strong>de</strong> jogos.<br />
Esta opção <strong>de</strong> projeto, baseada no paradigma da <strong>Arquitetura</strong> Gráfica Unificada [Zeleznik et al., 1991],<br />
se mostrou bem sucedida na década <strong>de</strong> 1990. Hoje, entretanto, apresenta limitações ante o advento<br />
<strong>de</strong> hardware gráfico programável. Em particular, tais aplicativos não são capazes <strong>de</strong> realizar cálcu-<br />
los corretos <strong>de</strong> interseção com mo<strong>de</strong>los cuja geometria tenha sido <strong>de</strong>formada na GPU. Por exemplo,<br />
se os atributos da geometria original são modificados no processador <strong>de</strong> vértices ou processador <strong>de</strong><br />
fragmentos, a geometria visualizada po<strong>de</strong>rá ser muito diversa da geometria original sobre a qual o<br />
algoritmo <strong>de</strong> ray picking é aplicado.<br />
A contribuição principal <strong>de</strong>sta tese é a proposta <strong>de</strong> uma arquitetura <strong>de</strong> software que fornece su-<br />
porte à implementação <strong>de</strong> tarefas <strong>de</strong> manipulação direta <strong>3D</strong> usando dispositivos apontadores 2D,<br />
integrada à atual arquitetura <strong>de</strong> hardware das GPUs. Ao contrário das abordagens baseadas no tradi-<br />
cional método <strong>de</strong> ray picking, as tarefas <strong>de</strong> interação baseadas nesta nova arquitetura são capazes <strong>de</strong><br />
levar em consi<strong>de</strong>ração, <strong>de</strong> forma eficiente, modificações dos atributos das geometrias processadas na<br />
GPU.<br />
A arquitetura proposta é baseada em duas hipóteses. A primeira hipótese supõe que os atributos<br />
necessários para realizar tarefas básicas <strong>de</strong> manipulação direta, tais como seleção e posicionamento<br />
restrito, se resumem em atributos geométricos e atributos <strong>de</strong>finidos pela aplicação para cada pixel do<br />
mo<strong>de</strong>lo ren<strong>de</strong>rizado. Mostramos que tais atributos geométricos são proprieda<strong>de</strong>s <strong>de</strong> geometria dife-<br />
rencial tais como o vetor normal, vetor tangente, vetor bitangente, curvaturas principais e direções<br />
principais. Para <strong>de</strong>fen<strong>de</strong>r tal hipótese, realizamos um estudo <strong>de</strong> casos com tarefas básicas <strong>de</strong> manipu-<br />
lação direta <strong>3D</strong>, mostrando como cada tarefa tradicionalmente implementada com ray picking po<strong>de</strong><br />
ser implementada segundo a hipótese <strong>de</strong>fendida. Concluindo que os atributos geométricos essenciais<br />
são os atributos <strong>de</strong> geometria diferencial dos mo<strong>de</strong>los tratados, propomos algoritmos na GPU para<br />
a estimativa eficiente e robusta <strong>de</strong> proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial <strong>de</strong> mo<strong>de</strong>los discretos. As<br />
proprieda<strong>de</strong>s calculadas são proprieda<strong>de</strong>s relacionadas a <strong>de</strong>rivadas parciais <strong>de</strong> primeira or<strong>de</strong>m (ve-<br />
tor normal e vetores tangentes alinhados <strong>de</strong> acordo com o mapeamento das coor<strong>de</strong>nadas <strong>de</strong> textura),<br />
segunda or<strong>de</strong>m (coeficientes do tensor <strong>de</strong> curvatura, curvaturas principais e direções principais) e<br />
terceira or<strong>de</strong>m (coeficientes do tensor <strong>de</strong> <strong>de</strong>rivada <strong>de</strong> curvatura). Tais algoritmos se <strong>de</strong>stacam como<br />
uma contribuição secundária <strong>de</strong>ste trabalho <strong>de</strong> tese, e po<strong>de</strong>m ser utilizadas isoladamente em outro<br />
contexto além do contexto <strong>de</strong> interação.<br />
A segunda hipótese supõe que a atual arquitetura <strong>de</strong> hardware gráfico programável fornece fle-<br />
xibilida<strong>de</strong> suficiente para que os atributos geométricos necessários para suportar tarefas básicas <strong>de</strong><br />
manipulação direta (em especial, seleção e posicionamento com restrição) possam ser processados