ࡱ> 574["bjbj4ΐΐ"  0&&&&&01M;======$>a]]]a&&v]*&&;];& S^'0" ]]]]]]]aa]]]]]]]]]]]]]]]] :TTULO: Implementao do Ray Tracing Acelerado por uma Octree em GPU Aluno: Diego Cordeiro Barboza Resumo Ray tracing uma tcnica amplamente empregada na gerao de imagens computadorizadas com alto grau de fidelidade e realismo. No entanto, esta tcnica apresenta um custo computacional bastante elevado, devido principalmente aos clculos de interseo que devem ser realizados pelo algoritmo. Por outro lado, o ray tracing um algoritmo altamente paralelizvel, visto que o clculo de um raio de luz qualquer independente dos demais. Assim, a implementao do ray tracing em GPU um processo natural. Estruturas de dados podem ser empregadas para reduzir a carga de processamento do ray tracing, minimizando o nmero de clculos de interseo realizados. Em trabalhos recentes, estas estruturas tm sido levadas GPU a fim de acelerar buscas em algoritmos paralelos diversos. Neste trabalho, proposta uma implementao do algoritmo de ray tracing em GPU utilizando uma octree como estrutura de acelerao. Todos os passos para a execuo do ray tracing em paralelo ocorrem diretamente na GPU, portanto elimina-se o gargalo de comunicao entre a CPU e a GPU. O trabalho tambm se prope a estudar qual a melhor representao de uma octree na GPU, realizando um estudo comparativo entre duas implementaes distintas. Palavras-chave: Estruturas de dados; Octree; Ray tracing; GPU. Abstract Ray tracing is a largely employed technique for generating computer images with high fidelity and realism. However, this technique is very costly, mainly because of the intersection calculations that are made by the algorithm. Still, the ray tracing is a highly parallelizable algorithm, bacause the calculations for a single light ray are independent from the computation of the others. This way, the implementation of the ray tracing on the GPU is a natural process. Data structures can be employed for reducing the processing load of the ray tracing algorithm, minimizing the number of intersection calculations to be done. In recent works, these structures are being ported to the GPU, so they can be used to accelerate various parallel algorithms. In this work, it is proposed a GPU ray tracing implementation using an octree as acceleration structure. Every single step of the algorithm runs in parallel on the GPU, so the communication bottleneck between the GPU and the CPU is eliminated. This work also proposes the study of which is the best way to represent the octree on the GPU, by comparing two different implementations. Keywords: Data strucutres; Ocree; Ray tracing; GPU EKLcdklvw 9 E l u  ) P 1 2 3 C t } !󫣫~~~shb6Bh!mH sH hyh!mH sH h!mH sH "h9h!5;CJaJmH sH hgz h!5 hgz h!hh!6 hh!hh!6 h!6hIh!5;CJaJh!5;CJaJh!h!5;aJh!h!h!5*Ecdkc w 2 3 r t } Rn!"xgd! $da$gd!gd! x`gd! $h`a$gd!`gd!!"h!h mH sH 21h:p . A!"#$% j 666666666vvvvvvvvv666666>6666666666666666666666666666666666666666666666666hH6666666666666666666666666666666666666666666666666666666666666666662 0@P`p2( 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p8XV~ OJPJQJ_HmHnHsHtH\`\ !Normal$dh`a$ CJOJQJ_HaJmHsHtH >A > Fonte parg. padroTiT 0 Tabela normal4 l4a ,k , 0 Sem lista PK![Content_Types].xmlj0Eжr(΢Iw},-j4 wP-t#bΙ{UTU^hd}㨫)*1P' ^W0)T9<l#$yi};~@(Hu* Dנz/0ǰ $ X3aZ,D0j~3߶b~i>3\`?/[G\!-Rk.sԻ..a濭?PK!֧6 _rels/.relsj0 }Q%v/C/}(h"O = C?hv=Ʌ%[xp{۵_Pѣ<1H0ORBdJE4b$q_6LR7`0̞O,En7Lib/SeеPK!kytheme/theme/themeManager.xml M @}w7c(EbˮCAǠҟ7՛K Y, e.|,H,lxɴIsQ}#Ր ֵ+!,^$j=GW)E+& 8PK!.atheme/theme/theme1.xmlYMoE#F{om'vGuرhF[xw;jf7q7J\ʉ("/z'4IA!>Ǽ3|^>5.=D4 ;ޭªIOHǛ]YxME$&;^TVIS 1V(Z Ym^_Ř&Jp lG@nN&'zξ@F^j$K_PA!&gǬへ=!n>^mr eDLC[OF{KFDžƠپY7q~o >ku)lVݜg d.[/_^йv[LԀ~Xrd|8xR{ (b4[@2l z "&'?>xpxGȡIXzg=2>ϫPCsu=o<.G4& h`9Q"LI(q }93̲8ztzH0SE+$_b9rQkZVͣiV 2n*=8OSyZ:"⨹ppH~_/PŴ%#:viNEcˬfۨY՛dEBU`V0ǍWTḊǬXEUJg/RAC8D*-Um6]Ptuyz*&Q܃h*6w+D?CprloSnpJoBӁc3 chϿ~TYok#ހ=pGn=wOikZoiBs͜zLPƆjui&e E0EMl8;|͚ 64HpU0)L O3 e:(xfä)Hy`r~B(ؘ-'4g\вfpZa˗2`khN-aT3ΑV \4  o`v/] f$~p p@ic0As\ @THNZIZ[}i RY\qy$JyϣH9\,AZjyiǛ)D]n|%lڟX̦l熹EЀ > 6ljWY DK/eby_膖L&W`VcJT14fS!:UJ0A?y6Xg1K#[]y%[BTRlwvSLɟ)4.Xt|zx\CJ#Lw@,e_}֜aN}jHP؏T$فdfl,YdTI]Zd+zoPnI hYC=!kk|l1Qn6MBŊ]|-_Ǭf^ Mθڎ`R+Wh1,Q >H *:[䠙A@V_ .ap64+lt^7st G5;Mb8s9x<ڮjI~11qM2%M2K94uo%PK! ѐ'theme/theme/_rels/themeManager.xml.relsM 0wooӺ&݈Э5 6?$Q ,.aic21h:qm@RN;d`o7gK(M&$R(.1r'JЊT8V"AȻHu}|$b{P8g/]QAsم(#L[PK-![Content_Types].xmlPK-!֧6 +_rels/.relsPK-!kytheme/theme/themeManager.xmlPK-!.atheme/theme/theme1.xmlPK-! ѐ' theme/theme/_rels/themeManager.xml.relsPK] " !" " 8@0(  B S  ?Texto1Texto2Texto3kC}$ wp$ $7=ADov9<=D!")3AX^dk   $ 9<!&$ Ecdk$ ! " $ @CCp;CC" @UnknownG*Ax Times New Roman5Symbol3. *Cx Arial7.@ CalibriA BCambria Math"q::20  2HX $P!2!xxDiegoDiegoOh+'0 px   Diego Normal.dotmDiego1Microsoft Office Word@Ik@"H@՜.+,0 hp|     Ttulo  !"#%&'()*+-./01236Root Entry FP^8Data 1TableWordDocument4SummaryInformation($DocumentSummaryInformation8,CompObj}  F+Documento do Microsoft Office Word 97-2003 MSWordDocWord.Document.89q