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.
Capítulo 3<br />
Atributos elementares para manipulação<br />
direta<br />
Neste capítulo mostramos como tarefas <strong>de</strong> manipulação direta <strong>3D</strong> usando dispositivos aponta-<br />
dores 2D po<strong>de</strong>m ser implementadas através da leitura <strong>de</strong> atributos geométricos e não geométricos<br />
(valores <strong>de</strong>finidos pela aplicação) codificados previamente como componentes <strong>de</strong> cor <strong>de</strong> cada pixel<br />
do mo<strong>de</strong>lo ren<strong>de</strong>rizado em buffers <strong>de</strong> ren<strong>de</strong>rização não visíveis. Esta possibilida<strong>de</strong> permite simular <strong>de</strong><br />
forma satisfatória as tarefas <strong>de</strong> interação comumente implementadas segundo o tradicional método<br />
<strong>de</strong> ray picking, o qual requer a execução <strong>de</strong> testes <strong>de</strong> interseção entre um raio e cada primitiva <strong>de</strong><br />
cada mo<strong>de</strong>lo. Além disso, permite levar em consi<strong>de</strong>ração as modificações dos atributos da geometria<br />
realizadas na GPU, caso tais atributos sejam também calculados na GPU antes <strong>de</strong> serem codificados<br />
nos pixels. Tal possibilida<strong>de</strong> serve <strong>de</strong> inspiração para a proposta da arquitetura <strong>de</strong> suporte a tarefas <strong>de</strong><br />
manipulação <strong>3D</strong> apresentada na seção 5.<br />
Veremos que os atributos geométricos necessários para a implementação <strong>de</strong> tarefas básicas <strong>de</strong> ma-<br />
nipulação direta <strong>3D</strong> po<strong>de</strong>m se resumir em proprieda<strong>de</strong>s <strong>de</strong> geometria diferencial das superfícies sob<br />
interação. Desse modo, apresentamos na seção 3.1 uma introdução a conceitos básicos <strong>de</strong> geometria<br />
diferencial <strong>de</strong> superfícies. Na seção 3.2 realizamos um estudo <strong>de</strong> casos com as tarefas básicas <strong>de</strong><br />
manipulação <strong>3D</strong> <strong>de</strong> modo a mostrar esse conjunto mínimo <strong>de</strong> atributos do mo<strong>de</strong>lo geométrico neces-<br />
sários para a realização <strong>de</strong> cada tarefa segundo o método tradicional <strong>de</strong> ray picking. Essas tarefas<br />
são os blocos básicos <strong>de</strong> construção <strong>de</strong> tarefas <strong>de</strong> manipulação direta <strong>3D</strong> usando dispositivos apon-<br />
tadores 2D, e amplamente utilizadas em aplicativos <strong>de</strong> mo<strong>de</strong>lagem geométrica, pintura <strong>3D</strong> e jogos.<br />
Mostramos na seção 3.3 como esse conjunto mínimo <strong>de</strong> atributos po<strong>de</strong> ser processado em um fluxo<br />
<strong>de</strong> visualização <strong>de</strong> gráficos raster e codificados para cada pixel do mo<strong>de</strong>lo ren<strong>de</strong>rizado <strong>de</strong> modo que<br />
a aplicação possa realizar a mesma tarefa básica <strong>de</strong> interação.<br />
41