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.
8 Introdução<br />
<strong>de</strong> produção, o uso <strong>de</strong> tais ferramentas po<strong>de</strong> ajudar a reduzir a lacuna existente entre o sistema<br />
no qual o artista gráfico trabalha, e o sistema utilizado pelos programadores para produzir o<br />
produto final que utiliza os recursos gráficos. Aplicativos <strong>de</strong>ste tipo, como o Right Hemisphere<br />
Deep Creator/Deep Paint <strong>3D</strong> [Hemisphere, 2007], Pixologic ZBrush [Pixologic, 2007] e In-<br />
teractive Effects Amazon Paint [Effects, 2007], po<strong>de</strong>m se beneficiar <strong>de</strong> ferramentas <strong>de</strong> edição<br />
capazes <strong>de</strong> atuar diretamente sobre mo<strong>de</strong>los modificados na GPU ao fornecer ao usuário uma<br />
interface mais amigável e que aten<strong>de</strong> o paradigma WYSIWYG. Neste caso, o usuário po<strong>de</strong><br />
trabalhar com o mo<strong>de</strong>lo na forma como ele será apresentado na aplicação final.<br />
• Capacida<strong>de</strong> <strong>de</strong> utilizar o po<strong>de</strong>r computacional da GPU para realizar processamento <strong>de</strong> intera-<br />
ção <strong>de</strong> forma paralela à CPU. Tal característica é especialmente importante em jogos e outras<br />
aplicações <strong>de</strong> processamento gráfico intensivo que requerem o uso <strong>de</strong> manipulação direta <strong>3D</strong><br />
como forma <strong>de</strong> interação com os objetos da cena. Ao realizar o processamento <strong>de</strong> interação em<br />
hardware gráfico, a CPU fica livre para executar outras tarefas <strong>de</strong> forma paralela (e.g., tarefas<br />
da lógica do jogo). Além disso, o alto po<strong>de</strong>r computacional das GPUs po<strong>de</strong> reduzir o próprio<br />
processamento da interação, mesmo no caso em que as primitivas geométricas não sofrem <strong>de</strong>-<br />
formações <strong>de</strong> vértices ou fragmentos.<br />
• Em aplicações <strong>de</strong> CAD (Computer Ai<strong>de</strong>d Design), diferentes representações <strong>de</strong> mo<strong>de</strong>los ge-<br />
ométricos (e.g., representação explícita, implícita ou paramétrica) requerem algoritmos distin-<br />
tos <strong>de</strong> interseção entre raios e superfícies (ray picking) para <strong>de</strong>terminar os pontos <strong>de</strong> seleção.<br />
Por outro lado, a visualização <strong>de</strong>sses mo<strong>de</strong>los com aceleração em hardware gráfico é comu-<br />
mente feita através <strong>de</strong> representações formadas <strong>de</strong> primitivas suportadas pelas GPUs atuais, a<br />
saber, triângulos, pontos e linhas. 2 Para aumentar a flexibilida<strong>de</strong> do algoritmo <strong>de</strong> interação com<br />
relação a diferentes tipos <strong>de</strong> geometria, a GPU po<strong>de</strong> ser utilizada para realizar o cálculo <strong>de</strong> in-<br />
teração sobre a representação submetida pela CPU. O resultado po<strong>de</strong> ser utilizado diretamente<br />
para realimentação visual, ou como aproximação para a solução exata, ou ainda como passo<br />
inicial <strong>de</strong> um processo iterativo <strong>de</strong> refinamento da interseção com a geometria exata.<br />
1.2 Hipótese e contribuição<br />
Esta tese <strong>de</strong>fen<strong>de</strong> a hipótese <strong>de</strong> que a atual arquitetura <strong>de</strong> hardware gráfico programável é flexível<br />
o suficiente para processar atributos geométricos necessários para a realização <strong>de</strong> tarefas <strong>de</strong> manipula-<br />
2 Já foram propostas técnicas <strong>de</strong> traçado <strong>de</strong> raios em tempo real através do uso da GPU como um processador <strong>de</strong><br />
propósito geral [Purcell et al., 2002, Purcell, 2004]. Embora o paradigma <strong>de</strong> varredura ainda seja mais eficiente em<br />
hardware atual, propostas <strong>de</strong> processadores <strong>de</strong>dicados para traçado <strong>de</strong> raios também já foram apresentadas [Woop et al.,<br />
2005].