Shader tutor : an interactive tool for learning and exploring shader programming
Autor(a) principal: | |
---|---|
Data de Publicação: | 2018 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/185063 |
Resumo: | O aprendizado de programação de shaders comumente requer que o novato crie uma aplicação hospedeira completa, carregando manualmente modelos poligonais e texturas e lidando com detalhes da API gráfica. Esse processo pode ser bastante desencorajador, desviando a atenção da programação de shaders para o desenvolvimento da infraestrutura da aplicação. Para aliviar esse trabalho, ambientes de desenvolvimento de shaders foram criados por fabricantes de GPUs, como o FX Composer da NVIDIA e o RenderMonkey da AMD, mas ambos foram descontinuados há bastante tempo, e não oferecem suporte a linguagens modernas de shading. Recursos disponíveis on-line, como Shadertoy e Shdr, podem ser ferramentas valiosas para ajudar no aprendizado de programação de shaders, mas costumam ser difíceis de utilizar, possuem um conjunto de funcionalidades limitado e/ou não oferecem documentação adequada para iniciantes. Nós apresentamos um ambiente completo para o aprendizado e exploração de programação de shaders utilizando GLSL. Nosso ambiente, desenvolvido usando Vulkan, é capaz de suprir as necessidades de usuários iniciantes bem como experientes. Sua interface amigável permite que o usuário carregue modelos 3D e imagens sem dificuldade, além de modificar variáveis e texturas, aplicando as mudanças em tempo real. |
id |
UFRGS-2_db90f5141fd12bdf958126e2e37f0f64 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/185063 |
network_acronym_str |
UFRGS-2 |
network_name_str |
Repositório Institucional da UFRGS |
repository_id_str |
|
spelling |
Baptista, Khin Emmanuel RodriguesOliveira Neto, Manuel Menezes de2018-11-24T03:14:43Z2018http://hdl.handle.net/10183/185063001077764O aprendizado de programação de shaders comumente requer que o novato crie uma aplicação hospedeira completa, carregando manualmente modelos poligonais e texturas e lidando com detalhes da API gráfica. Esse processo pode ser bastante desencorajador, desviando a atenção da programação de shaders para o desenvolvimento da infraestrutura da aplicação. Para aliviar esse trabalho, ambientes de desenvolvimento de shaders foram criados por fabricantes de GPUs, como o FX Composer da NVIDIA e o RenderMonkey da AMD, mas ambos foram descontinuados há bastante tempo, e não oferecem suporte a linguagens modernas de shading. Recursos disponíveis on-line, como Shadertoy e Shdr, podem ser ferramentas valiosas para ajudar no aprendizado de programação de shaders, mas costumam ser difíceis de utilizar, possuem um conjunto de funcionalidades limitado e/ou não oferecem documentação adequada para iniciantes. Nós apresentamos um ambiente completo para o aprendizado e exploração de programação de shaders utilizando GLSL. Nosso ambiente, desenvolvido usando Vulkan, é capaz de suprir as necessidades de usuários iniciantes bem como experientes. Sua interface amigável permite que o usuário carregue modelos 3D e imagens sem dificuldade, além de modificar variáveis e texturas, aplicando as mudanças em tempo real.Learning shader programming often requires the novice to create an entire host application, having to manually load polygonal models and textures, and to deal with graphics API details. This process can be quite discouraging, deviating one’s attention from actual shader programming to the development of application infrastructure. To alleviate this load, shader development environments have been created by graphics cards manufacturers, such as NVIDIA’s FX Composer and AMD’s RenderMonkey, but both have long been discontinued, not supporting modern shading languages. Available on-line resources, like Shadertoy and Shdr, can be valuable tools in assisting the learning of shader programming, but are often difficult to use, have limited feature sets, and/or lack proper documentation to get beginners started. We present a complete environment for learning and exploring shader programming using GLSL. Our environment, developed using Vulkan, can suit the needs of both beginners and advanced users. Its user-friendly interface allows one to effortlessly load 3D models and images and modify variables and textures, applying the changes in real time.application/pdfengComputação gráficaShader programmingComputer graphicsVulkanGLSLShader tutor : an interactive tool for learning and exploring shader programmingUma ferramenta integrativa para o aprendizado e exploração de programação de shaders info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPorto Alegre, BR-RS2018Ciência da Computação: Ênfase em Ciência da Computação: Bachareladograduaçãoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001077764.pdf.txt001077764.pdf.txtExtracted Texttext/plain74305http://www.lume.ufrgs.br/bitstream/10183/185063/2/001077764.pdf.txt19626d0f1393dfcdb23ec07ceb6ddb9aMD52ORIGINAL001077764.pdfTexto completo (inglês)application/pdf6441374http://www.lume.ufrgs.br/bitstream/10183/185063/1/001077764.pdf0fbd73775750b1bce8097afa5625b1fcMD5110183/1850632021-05-26 04:44:56.60734oai:www.lume.ufrgs.br:10183/185063Repositório de PublicaçõesPUBhttps://lume.ufrgs.br/oai/requestopendoar:2021-05-26T07:44:56Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
Shader tutor : an interactive tool for learning and exploring shader programming |
dc.title.alternative.pt.fl_str_mv |
Uma ferramenta integrativa para o aprendizado e exploração de programação de shaders |
title |
Shader tutor : an interactive tool for learning and exploring shader programming |
spellingShingle |
Shader tutor : an interactive tool for learning and exploring shader programming Baptista, Khin Emmanuel Rodrigues Computação gráfica Shader programming Computer graphics Vulkan GLSL |
title_short |
Shader tutor : an interactive tool for learning and exploring shader programming |
title_full |
Shader tutor : an interactive tool for learning and exploring shader programming |
title_fullStr |
Shader tutor : an interactive tool for learning and exploring shader programming |
title_full_unstemmed |
Shader tutor : an interactive tool for learning and exploring shader programming |
title_sort |
Shader tutor : an interactive tool for learning and exploring shader programming |
author |
Baptista, Khin Emmanuel Rodrigues |
author_facet |
Baptista, Khin Emmanuel Rodrigues |
author_role |
author |
dc.contributor.author.fl_str_mv |
Baptista, Khin Emmanuel Rodrigues |
dc.contributor.advisor1.fl_str_mv |
Oliveira Neto, Manuel Menezes de |
contributor_str_mv |
Oliveira Neto, Manuel Menezes de |
dc.subject.por.fl_str_mv |
Computação gráfica |
topic |
Computação gráfica Shader programming Computer graphics Vulkan GLSL |
dc.subject.eng.fl_str_mv |
Shader programming Computer graphics Vulkan GLSL |
description |
O aprendizado de programação de shaders comumente requer que o novato crie uma aplicação hospedeira completa, carregando manualmente modelos poligonais e texturas e lidando com detalhes da API gráfica. Esse processo pode ser bastante desencorajador, desviando a atenção da programação de shaders para o desenvolvimento da infraestrutura da aplicação. Para aliviar esse trabalho, ambientes de desenvolvimento de shaders foram criados por fabricantes de GPUs, como o FX Composer da NVIDIA e o RenderMonkey da AMD, mas ambos foram descontinuados há bastante tempo, e não oferecem suporte a linguagens modernas de shading. Recursos disponíveis on-line, como Shadertoy e Shdr, podem ser ferramentas valiosas para ajudar no aprendizado de programação de shaders, mas costumam ser difíceis de utilizar, possuem um conjunto de funcionalidades limitado e/ou não oferecem documentação adequada para iniciantes. Nós apresentamos um ambiente completo para o aprendizado e exploração de programação de shaders utilizando GLSL. Nosso ambiente, desenvolvido usando Vulkan, é capaz de suprir as necessidades de usuários iniciantes bem como experientes. Sua interface amigável permite que o usuário carregue modelos 3D e imagens sem dificuldade, além de modificar variáveis e texturas, aplicando as mudanças em tempo real. |
publishDate |
2018 |
dc.date.accessioned.fl_str_mv |
2018-11-24T03:14:43Z |
dc.date.issued.fl_str_mv |
2018 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/185063 |
dc.identifier.nrb.pt_BR.fl_str_mv |
001077764 |
url |
http://hdl.handle.net/10183/185063 |
identifier_str_mv |
001077764 |
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.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Repositório Institucional da UFRGS |
collection |
Repositório Institucional da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/185063/2/001077764.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/185063/1/001077764.pdf |
bitstream.checksum.fl_str_mv |
19626d0f1393dfcdb23ec07ceb6ddb9a 0fbd73775750b1bce8097afa5625b1fc |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
|
_version_ |
1815447232372015104 |