Skip to content

Latest commit

 

History

History
38 lines (27 loc) · 2.28 KB

2-.md

File metadata and controls

38 lines (27 loc) · 2.28 KB

A base de conhecimento para programar usando a GPU, é mais importante, até do que programar. A visão e compreensão matemática é a base que sustenta a criação de efeitos e uso apropiado da gpu.


Em especifico essa area voltada ao paralelismo e seus campos, prevalece majotariamente na acadêmia. Pesquisas são feitas a todo momento, sua importãncia reflete no mercado de jogos, equipamentos, geração de terreno procedural, animação esquelética, geometria, filmes etc.


O conhecimento que é geralmente rejeitado no começo da escola e no fim, tal como matemática, física, e filosofia. São a base para você conseguir proseguir nessa área. A matemática como dita é a mais importante, entre as matérias: Geometria analitica, álgebra, álgebra linear, trigonometria, aritmética básica etc.

Geometria analitca, para entendermos vértices, distância entre pontos, vetores e formas polignais convexas ou não convexas, planos cartesianos etc. Trigonometria e sua incrivel relação com efeitos procedurais, pseudo-aleatoriedade e animações esqueléticas etc.

Vetores, matrizes e operação matemáticas entre eles, são basicamente os primitivos de uma linguagens de shader para programar com a GPU. O uso de linguagens de shader, como GLSL ou HLSL é cotidiano, você precisa aprender como funciona shaders. Em linguagens de programação como C, temos primitivos de inteiros, floats, doubles (float 64), mas não temos operadores de álgebra linear especializados e primitivos.


O conhecimento hoje em dia depende apenas de você pagar a internet. PDFs (papers, livros-compre-ebooks etc), repositórios do GitHub, conteúdo no yotube (Guanabara). Um exemplo é o livro Physically Based Rendering, que é disponibilizado gratuitamente no site oficial. Outro livro ótimo é o GPU GEMS 1, 2 e 3 da Nvidia, gratuito para ler no site deles.

Os papers de pesquisas, são disponibilizados na internet, você gratuitamente pode baixar PDFs: Geração procedural de terreno, iluminação, equações de renderização, efeitos 2D, otimização com GPU, collisões etc.


Uma coisa que não podemos deixar de citar é a paixão, pois não fica evidente, mas o processo de aprendizado é massivo, doloroso e sozinho na maioria dos casos. O amor pelo o que você faz é a energia da motivação.