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.

2.5 Consi<strong>de</strong>rações finais 39<br />

Fig. 2.7: Atual lacuna na aplicação da GPU para realizar processamento vinculado à interação <strong>3D</strong>.<br />

(0, 0) e (1, 1) indicam a atribuição <strong>de</strong> coor<strong>de</strong>nadas <strong>de</strong> textura nos vértices no quadrilátero.<br />

A CPU po<strong>de</strong> transferir o conteúdo da textura <strong>de</strong> saída para a memória do sistema <strong>de</strong> modo a obter<br />

os resultados. Alternativamente, essa textura <strong>de</strong> saída po<strong>de</strong> ser utilizada como textura <strong>de</strong> entrada em<br />

outro estágio <strong>de</strong> processamento <strong>de</strong> fluxo na GPU.<br />

2.5 Consi<strong>de</strong>rações finais<br />

A flexibilida<strong>de</strong> obtida através das atuais GPUs tem sido largamente utilizada na implementação<br />

<strong>de</strong> técnicas relacionadas à visualização. Isto se <strong>de</strong>ve ao po<strong>de</strong>r computacional das GPUs, o qual é<br />

geralmente muitas vezes superior àquele existente nas CPUs para processamento <strong>de</strong> fluxos <strong>de</strong> dados,<br />

e à capacida<strong>de</strong> <strong>de</strong> realizar o processamento <strong>de</strong> visualização <strong>de</strong> forma paralela ao processamento <strong>de</strong><br />

outras tarefas realizadas na CPU. Por outro lado, o potencial <strong>de</strong> suporte à implementação <strong>de</strong> tarefas <strong>de</strong><br />

interação <strong>3D</strong> pela GPU ainda não é <strong>de</strong>vidamente explorado, seja para realizar interações que levem<br />

em consi<strong>de</strong>ração as modificações <strong>de</strong> geometria realizadas na GPU, seja para tornar tais interações<br />

mais eficientes em comparação com os tradicionais métodos <strong>de</strong> interação baseados em ray picking.<br />

As mais difundidas arquiteturas <strong>de</strong> interface gráfica com suporte a manipulações diretas, tais como<br />

o OpenSceneGraph e OpenSG, utilizam a tradicional técnica <strong>de</strong> ray picking para implementar tarefas<br />

<strong>de</strong> seleção e, portanto, não tratam corretamente mo<strong>de</strong>los cuja geometria tenha sido <strong>de</strong>formada na<br />

GPU. Esta não é uma limitação imposta pelo hardware gráfico, mas uma opção <strong>de</strong> projeto <strong>de</strong>ssas ar-<br />

quiteturas <strong>de</strong> interface gráfica segundo o paradigma da <strong>Arquitetura</strong> Gráfica Unificada, que se mostrou<br />

bem sucedido até o advento do hardware gráfico programável.<br />

Acreditamos que, se <strong>de</strong>vidamente explorada, a GPU po<strong>de</strong> ser utilizada para realizar processa-<br />

mento relacionado a tarefas <strong>de</strong> interação <strong>3D</strong>, preenchendo assim uma atual lacuna relacionada ao uso<br />

da GPU para interação, conforme ilustrado na figura 2.7. É sobre esta hipótese que propomos, nesta<br />

tese, uma arquitetura <strong>de</strong> suporte a tarefas <strong>de</strong> interação <strong>3D</strong> sobre geometria processada nas GPUs.<br />

Na arquitetura <strong>de</strong> interação proposta, a GPU é utilizada como um processador <strong>de</strong> fluxo para re-<br />

alizar tarefas tais como manter em memória <strong>de</strong> textura os atributos dos vértices após as modificação<br />

realizadas no processador <strong>de</strong> vértices, e para calcular elementos <strong>de</strong> geometria diferencial discreta a

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

Saved successfully!

Ooh no, something went wrong!