Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation
| Ano de defesa: | 2019 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | , |
| Tipo de documento: | Dissertação |
| Tipo de acesso: | Acesso aberto |
| Idioma: | eng |
| Instituição de defesa: |
Universidade Federal da Bahia
Instituto de Matemática e Estatística Departamento de Ciências da Computação |
| Programa de Pós-Graduação: |
em Ciência da Computação
|
| Departamento: |
Não Informado pela instituição
|
| País: |
brasil
|
| Palavras-chave em Português: | |
| Área do conhecimento CNPq: | |
| Link de acesso: | http://repositorio.ufba.br/ri/handle/ri/33541 |
Resumo: | Este trabalho apresenta um método de geração procedural de planetas com múltiplas resoluções, fazendo uso de uma técnica de ruído fractal Browniano com derivadas parciais analíticas. Através de várias iterações deste ruído fractal conseguimos simular certos tipos de erosão de terreno, e uma vez que o conteúdo é gerado algoritmicamente, uso de assets se faz desnecessário. Esse efeito de erosão é capaz de simular características planetárias de larga escala, pois com o comportamento fractal de assimilabilidade e sua multiresolução nativa, podemos gerar pontos de referência realísticos como vales até cumes de montanhas. Os dados planetários são gerenciados por uma quadtree, sendo esta gerenciada por hash, prevenindo que vértices duplicados sejam armazenados e provendo buscas com complexidade O(1). Para gerar a forma esférica do planeta e suas coordenadas de altitude através do ruído fractal usamos computação genérica com processamento em placa gráfica, assim tomando proveito das capacidades de computação paralela da GPU. O algortimo de view-frustum culling é aplicado valendo-se da quadtree para otimizar a aplicação, evitando o envio de informação para a GPU de triângulos que não estão no campo de visão do observador. Finalmente, nossa abordagem é capaz de lidar com Nível de Detalhamento (LOD) baseado no ponto de vista do observador e a introdução de detalhes em alta resolução através do uso de tesselação em hardware. Os resultados mostram que nosso método é capaz de gerar corpos planetários realísticos, com coerência temporal em tempo real. |
| id |
UFBA-2_217e4cb32b172c91d8f6c37e5a561dcd |
|---|---|
| oai_identifier_str |
oai:repositorio.ufba.br:ri/33541 |
| network_acronym_str |
UFBA-2 |
| network_name_str |
Repositório Institucional da UFBA |
| repository_id_str |
|
| spelling |
d'Oliveira, Ricardo Barros Duarted'Oliveira, Ricardo Barros DuarteApolinário Junior, Antonio LopesSilva, Rodrigo Luis Souza daMello, Vinicius Moreira2021-06-10T21:17:09Z2021-06-10T21:17:09Z2021-06-102019-01-29http://repositorio.ufba.br/ri/handle/ri/33541Este trabalho apresenta um método de geração procedural de planetas com múltiplas resoluções, fazendo uso de uma técnica de ruído fractal Browniano com derivadas parciais analíticas. Através de várias iterações deste ruído fractal conseguimos simular certos tipos de erosão de terreno, e uma vez que o conteúdo é gerado algoritmicamente, uso de assets se faz desnecessário. Esse efeito de erosão é capaz de simular características planetárias de larga escala, pois com o comportamento fractal de assimilabilidade e sua multiresolução nativa, podemos gerar pontos de referência realísticos como vales até cumes de montanhas. Os dados planetários são gerenciados por uma quadtree, sendo esta gerenciada por hash, prevenindo que vértices duplicados sejam armazenados e provendo buscas com complexidade O(1). Para gerar a forma esférica do planeta e suas coordenadas de altitude através do ruído fractal usamos computação genérica com processamento em placa gráfica, assim tomando proveito das capacidades de computação paralela da GPU. O algortimo de view-frustum culling é aplicado valendo-se da quadtree para otimizar a aplicação, evitando o envio de informação para a GPU de triângulos que não estão no campo de visão do observador. Finalmente, nossa abordagem é capaz de lidar com Nível de Detalhamento (LOD) baseado no ponto de vista do observador e a introdução de detalhes em alta resolução através do uso de tesselação em hardware. Os resultados mostram que nosso método é capaz de gerar corpos planetários realísticos, com coerência temporal em tempo real.This thesis presents a multi-resolution procedural planet generation using fractional Brownian motion obtained with analytical analytical partial derivative value noises. Instead of relying on pre-made content, we use a series of iterations of fractal noises to simulate erosion, producing large-scale planetary features. Through fractal behavior of self-similarity and its native multiresolution, we achieve realistic landmarks from valleys to mountain ranges. Planetary data is managed by a hash-based quadtree with view-frustum culling that prevents vertex duplication and provides O(1) lookups. Spherical transformations and their respective noise values are computed using generic GPU programming through Transform feedback, taking advantage of its parallel power. Finally, our approach can deal with view-dependent Level of Detail { LOD and displacement techniques introducing high level details with hardware tessellation. The results show that our method achieve generating and rendering planetary bodies, with temporal coherence, in real-time.Submitted by Ricardo Barros (richardtrle@gmail.com) on 2021-04-21T02:58:59Z No. of bitstreams: 1 template-msc.pdf: 37150447 bytes, checksum: 814fb30aeeb27b8709e5b6954a213d47 (MD5)Approved for entry into archive by Solange Rocha (soluny@gmail.com) on 2021-06-10T21:17:09Z (GMT) No. of bitstreams: 1 template-msc.pdf: 37150447 bytes, checksum: 814fb30aeeb27b8709e5b6954a213d47 (MD5)Made available in DSpace on 2021-06-10T21:17:09Z (GMT). No. of bitstreams: 1 template-msc.pdf: 37150447 bytes, checksum: 814fb30aeeb27b8709e5b6954a213d47 (MD5)Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), Fundação de Amparo à Pesquisa do Estado da Bahia (FAPESB)Ciências Exatas e da TerraCiência da ComputaçãoMetodologia e Técnicas da ComputaçãoProcessamento Gráfico (Graphics)Geração ProceduralPlanetasShadersComputação GráficaAlgoritmosProcedural generationAlgorithmsComputer graphicsRenderização de terrenos em escala planetáriaPlanetary-scale terrain renderingMulti-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellationinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal da BahiaInstituto de Matemática e EstatísticaDepartamento de Ciências da Computaçãoem Ciência da ComputaçãoUFBAbrasilinfo:eu-repo/semantics/openAccessengreponame:Repositório Institucional da UFBAinstname:Universidade Federal da Bahia (UFBA)instacron:UFBAORIGINALtemplate-msc.pdftemplate-msc.pdfapplication/pdf37150447https://repositorio.ufba.br/bitstream/ri/33541/1/template-msc.pdf814fb30aeeb27b8709e5b6954a213d47MD51LICENSElicense.txtlicense.txttext/plain1442https://repositorio.ufba.br/bitstream/ri/33541/2/license.txt817035eff4c4c7dda1d546e170ee2a1aMD52TEXTtemplate-msc.pdf.txttemplate-msc.pdf.txtExtracted texttext/plain155869https://repositorio.ufba.br/bitstream/ri/33541/3/template-msc.pdf.txtd354bee9ff1d2636c350747bd87726eaMD53ri/335412022-07-05 14:04:05.614oai:repositorio.ufba.br:ri/33541VGVybW8gZGUgTGljZW7vv71hLCBu77+9byBleGNsdXNpdm8sIHBhcmEgbyBkZXDvv71zaXRvIG5vIFJlcG9zaXTvv71yaW8gSW5zdGl0dWNpb25hbCBkYSBVRkJBLgoKIFBlbG8gcHJvY2Vzc28gZGUgc3VibWlzc8ODwqNvIGRlIGRvY3VtZW50b3MsIG8gYXV0b3Igb3Ugc2V1IHJlcHJlc2VudGFudGUgbGVnYWwsIGFvIGFjZWl0YXIgZXNzZSB0ZXJtbyBkZSBsaWNlbsODwqdhLCBjb25jZWRlIGFvIFJlcG9zaXTDg8KzcmlvIEluc3RpdHVjaW9uYWwgZGEgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGEgQmFoaWEgbyBkaXJlaXRvIGRlIG1hbnRlciB1bWEgY8ODwrNwaWEgZW0gc2V1IHJlcG9zaXTDg8KzcmlvIGNvbSBhIGZpbmFsaWRhZGUsIHByaW1laXJhLCBkZSBwcmVzZXJ2YcODwqfDg8Kjby4gCgpFc3NlcyB0ZXJtb3MsIG7Dg8KjbyBleGNsdXNpdm9zLCBtYW50w4PCqW0gb3MgZGlyZWl0b3MgZGUgYXV0b3IvY29weXJpZ2h0LCBtYXMgZW50ZW5kZSBvIGRvY3VtZW50byBjb21vIHBhcnRlIGRvIGFjZXJ2byBpbnRlbGVjdHVhbCBkZXNzYSBVbml2ZXJzaWRhZGUuCgogUGFyYSBvcyBkb2N1bWVudG9zIHB1YmxpY2Fkb3MgY29tIHJlcGFzc2UgZGUgZGlyZWl0b3MgZGUgZGlzdHJpYnVpw4PCp8ODwqNvLCBlc3NlIHRlcm1vIGRlIGxpY2Vuw4PCp2EgZW50ZW5kZSBxdWU6CgogTWFudGVuZG8gb3MgZGlyZWl0b3MgYXV0b3JhaXMsIHJlcGFzc2Fkb3MgYSB0ZXJjZWlyb3MsIGVtIGNhc28gZGUgcHVibGljYcODwqfDg8K1ZXMsIG8gcmVwb3NpdMODwrNyaW8gcG9kZSByZXN0cmluZ2lyIG8gYWNlc3NvIGFvIHRleHRvIGludGVncmFsLCBtYXMgbGliZXJhIGFzIGluZm9ybWHDg8Knw4PCtWVzIHNvYnJlIG8gZG9jdW1lbnRvIChNZXRhZGFkb3MgZGVzY3JpdGl2b3MpLgoKIERlc3RhIGZvcm1hLCBhdGVuZGVuZG8gYW9zIGFuc2Vpb3MgZGVzc2EgdW5pdmVyc2lkYWRlIGVtIG1hbnRlciBzdWEgcHJvZHXDg8Knw4PCo28gY2llbnTDg8KtZmljYSBjb20gYXMgcmVzdHJpw4PCp8ODwrVlcyBpbXBvc3RhcyBwZWxvcyBlZGl0b3JlcyBkZSBwZXJpw4PCs2RpY29zLgoKIFBhcmEgYXMgcHVibGljYcODwqfDg8K1ZXMgc2VtIGluaWNpYXRpdmFzIHF1ZSBzZWd1ZW0gYSBwb2zDg8KtdGljYSBkZSBBY2Vzc28gQWJlcnRvLCBvcyBkZXDDg8Kzc2l0b3MgY29tcHVsc8ODwrNyaW9zIG5lc3NlIHJlcG9zaXTDg8KzcmlvIG1hbnTDg8KpbSBvcyBkaXJlaXRvcyBhdXRvcmFpcywgbWFzIG1hbnTDg8KpbSBhY2Vzc28gaXJyZXN0cml0byBhb3MgbWV0YWRhZG9zIGUgdGV4dG8gY29tcGxldG8uIEFzc2ltLCBhIGFjZWl0YcODwqfDg8KjbyBkZXNzZSB0ZXJtbyBuw4PCo28gbmVjZXNzaXRhIGRlIGNvbnNlbnRpbWVudG8gcG9yIHBhcnRlIGRlIGF1dG9yZXMvZGV0ZW50b3JlcyBkb3MgZGlyZWl0b3MsIHBvciBlc3RhcmVtIGVtIGluaWNpYXRpdmFzIGRlIGFjZXNzbyBhYmVydG8uCg==Repositório InstitucionalPUBhttps://repositorio.ufba.br/oai/requestrepositorio@ufba.bropendoar:19322022-07-05T17:04:05Repositório Institucional da UFBA - Universidade Federal da Bahia (UFBA)false |
| dc.title.pt_BR.fl_str_mv |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| title |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| spellingShingle |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation d'Oliveira, Ricardo Barros Duarte Ciências Exatas e da Terra Ciência da Computação Metodologia e Técnicas da Computação Processamento Gráfico (Graphics) Geração Procedural Planetas Shaders Computação Gráfica Algoritmos Procedural generation Algorithms Computer graphics Renderização de terrenos em escala planetária Planetary-scale terrain rendering |
| title_short |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| title_full |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| title_fullStr |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| title_full_unstemmed |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| title_sort |
Multi-resolution procedural planet generation based on fractal brownian motion noise and hardware tessellation |
| author |
d'Oliveira, Ricardo Barros Duarte |
| author_facet |
d'Oliveira, Ricardo Barros Duarte |
| author_role |
author |
| dc.contributor.author.fl_str_mv |
d'Oliveira, Ricardo Barros Duarte d'Oliveira, Ricardo Barros Duarte |
| dc.contributor.advisor1.fl_str_mv |
Apolinário Junior, Antonio Lopes |
| dc.contributor.referee1.fl_str_mv |
Silva, Rodrigo Luis Souza da Mello, Vinicius Moreira |
| contributor_str_mv |
Apolinário Junior, Antonio Lopes Silva, Rodrigo Luis Souza da Mello, Vinicius Moreira |
| dc.subject.cnpq.fl_str_mv |
Ciências Exatas e da Terra Ciência da Computação Metodologia e Técnicas da Computação Processamento Gráfico (Graphics) |
| topic |
Ciências Exatas e da Terra Ciência da Computação Metodologia e Técnicas da Computação Processamento Gráfico (Graphics) Geração Procedural Planetas Shaders Computação Gráfica Algoritmos Procedural generation Algorithms Computer graphics Renderização de terrenos em escala planetária Planetary-scale terrain rendering |
| dc.subject.por.fl_str_mv |
Geração Procedural Planetas Shaders Computação Gráfica Algoritmos Procedural generation Algorithms Computer graphics Renderização de terrenos em escala planetária Planetary-scale terrain rendering |
| description |
Este trabalho apresenta um método de geração procedural de planetas com múltiplas resoluções, fazendo uso de uma técnica de ruído fractal Browniano com derivadas parciais analíticas. Através de várias iterações deste ruído fractal conseguimos simular certos tipos de erosão de terreno, e uma vez que o conteúdo é gerado algoritmicamente, uso de assets se faz desnecessário. Esse efeito de erosão é capaz de simular características planetárias de larga escala, pois com o comportamento fractal de assimilabilidade e sua multiresolução nativa, podemos gerar pontos de referência realísticos como vales até cumes de montanhas. Os dados planetários são gerenciados por uma quadtree, sendo esta gerenciada por hash, prevenindo que vértices duplicados sejam armazenados e provendo buscas com complexidade O(1). Para gerar a forma esférica do planeta e suas coordenadas de altitude através do ruído fractal usamos computação genérica com processamento em placa gráfica, assim tomando proveito das capacidades de computação paralela da GPU. O algortimo de view-frustum culling é aplicado valendo-se da quadtree para otimizar a aplicação, evitando o envio de informação para a GPU de triângulos que não estão no campo de visão do observador. Finalmente, nossa abordagem é capaz de lidar com Nível de Detalhamento (LOD) baseado no ponto de vista do observador e a introdução de detalhes em alta resolução através do uso de tesselação em hardware. Os resultados mostram que nosso método é capaz de gerar corpos planetários realísticos, com coerência temporal em tempo real. |
| publishDate |
2019 |
| dc.date.submitted.none.fl_str_mv |
2019-01-29 |
| dc.date.accessioned.fl_str_mv |
2021-06-10T21:17:09Z |
| dc.date.available.fl_str_mv |
2021-06-10T21:17:09Z |
| dc.date.issued.fl_str_mv |
2021-06-10 |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
http://repositorio.ufba.br/ri/handle/ri/33541 |
| url |
http://repositorio.ufba.br/ri/handle/ri/33541 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.publisher.none.fl_str_mv |
Universidade Federal da Bahia Instituto de Matemática e Estatística Departamento de Ciências da Computação |
| dc.publisher.program.fl_str_mv |
em Ciência da Computação |
| dc.publisher.initials.fl_str_mv |
UFBA |
| dc.publisher.country.fl_str_mv |
brasil |
| publisher.none.fl_str_mv |
Universidade Federal da Bahia Instituto de Matemática e Estatística Departamento de Ciências da Computação |
| dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFBA instname:Universidade Federal da Bahia (UFBA) instacron:UFBA |
| instname_str |
Universidade Federal da Bahia (UFBA) |
| instacron_str |
UFBA |
| institution |
UFBA |
| reponame_str |
Repositório Institucional da UFBA |
| collection |
Repositório Institucional da UFBA |
| bitstream.url.fl_str_mv |
https://repositorio.ufba.br/bitstream/ri/33541/1/template-msc.pdf https://repositorio.ufba.br/bitstream/ri/33541/2/license.txt https://repositorio.ufba.br/bitstream/ri/33541/3/template-msc.pdf.txt |
| bitstream.checksum.fl_str_mv |
814fb30aeeb27b8709e5b6954a213d47 817035eff4c4c7dda1d546e170ee2a1a d354bee9ff1d2636c350747bd87726ea |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Repositório Institucional da UFBA - Universidade Federal da Bahia (UFBA) |
| repository.mail.fl_str_mv |
repositorio@ufba.br |
| _version_ |
1847342238181359616 |