Curso completo de DirectX 9 com C\C++
Gameprog - Escola de programação de jogos digitais
Contato: gameprog.br@gmail.com
Fase 00-0
00.1 Tópicos de encerramento
1.1 Sobre o autor...
1.2 Patrocínio e parcerias
1.3 Referências
1.4 Making of
[topo] 1.1 Sobre o autor...
O escritor Jair Pereira está envolvido com produção de software e
videogame desde 1988 quando fez seu primeiro curso de programação em
linguagem basic no extinto computador TRS-80 e curtiu no decorrer
dessa década o videogame Atari.
Durante a década de '90 ele suspendeu seu hobby de programação para
adquirir disciplina pessoal nas práticas de filosofias espiritualistas
mas entre um compromisso e outro ele encontrava tempo para ouvir a
banda de rock Legião Urbana e jogar videogame em todos os consoles da
Nitendo que alegraram esta época.
Com a chegada do CD-ROM nos consoles de videogame ele conseguiu
emplacar em um deles seu primeiro programa em Assembly escrito para
um emulador de NES 8 bits.
Depois da virada do ano 2000, Jair Pereira adquiriu domínio da lingua
inglesa, aprendeu computação gráfica utilizando 3D Studio Max e
produção de software com as linguagens C++ e C#.
Atualmente, utilizando seus conhecimentos de inglês e sua disciplina
sistemática, ele se dedica em trazer para o cenário brasileiro o
conhecimento de ponta que permite produzir via programação as
aplicações de tecnologia gráfica 3d entra elas os videogames e as
animações 3d.
O autor sustenta o website www.gameprog.com.br e pode ser contactado
no email gameprog.br@gmail.com
[topo] 1.2 Patrocínio e parcerias
Com o intuito de beneficiar o crescimento da indústria de videogame e
computação gráfica no Brasil o autor dessa obra está aberto para
relações de parceria e patrocínio com outras empresas e autores.
Se estiver ao seu alcance injetar recursos para apoiar e acelerar
nosso trabalho de pesquisa na área entre em contato no email
gameprog.br@gmail.com
[topo] 1.3 Referências
Luna, Frank D.; Introduction to 3D game programming with DirectX
9.0c : a shader approach; Wordware Publishing; 2006.
Miller, Tom; Managed DirectX® 9 Kick Start: Graphics and Game
Programming; Sams Publishing; October 22, 2003.
Ditchburn, Keith; "DirectX Programming & Techniques Index";
(http://toymaker.info/Games/index.html); Acesso Maio, 2015;
Wong, Rick; "DirectX Tutorials";
(http://www.two-kings.de/tutorials/dxgraphics/); Acesso Abril, 2014;
Petzold, Charles; Programming Windows. 5th ed. Redmond, Wash.;
Microsoft Press, 1999
[topo] 1.4 Making of
O início de tudo
A idéia de montar um curso sobre Directx começou quando eu recebi um
convite para trabalhar nos bastidores de um portal eletrônico sobre
jogos em 2006. O trabalho não deu muito certo devido a problemas de
origem pessoal mas de qualquer maneira marcou o ano no qual me tornei
profeciente na linguagem C. Cinco anos depois, em 2011, eu montei
e publiquei sozinho o website www.gameprog.com.br para publicar
artigos sobre programação de jogos. Para alimentar o website em 2013
eu finalizei o meu aprendizado e meu curso com a linguagem c\c++ e
também meu curso de programação utilizando a biblioteca multimídia
darkgdk que era a base de funcionamento da linguagem darkbasic.
Aproximação cautelosa ao uso do Directx com C++
O código-fonte em c++ de aplicações de amostras de uso da API do
directx 9 me dava um certo pavor pelo nível de complexidade encontrado
nessas amostras produzidas para acompanhar a documentação original do
directx. No primeiro momento eu evitei esse confronto e tratei de
aprender C# e directx gerenciado que era muito mais fácil, amistoso e
muito mais legível. Em 2014 eu conclui a faculdade de informática
e isso liberou o tempo necessário para concluir neste mesmo ano meus
estudos de directx gerenciado. Neste mesmo ano eu comecei a dar meus
primeiros passos na aprendizagem do directx 9 com a linguagem C\C++
que foram pavimentados e facilitados com a experiência adquirida na
assimilação do Directx com a linguagem C#.
A elaboração do curso de directx 9 com c++
A elaboração dos cursos era uma forma de aprender e de registrar meu
aprendizado. Cada capítulo do directx 9 me dava desespero de elaborar
porque cada um deles demandavam 2 ou três semanas para ser assimilado,
ilustrado com uma aplicação de exemplo e ser documentado na forma de
um capítulo do curso. Os capítulos não eram elaborados de forma
linear como se apresentam no curso. Eles eram elaborados e depois
encaixados numa sequência harmoniosa dentro do curso. Os capítulos
sobre o uso do stencil e de partículas foram os últimos a serem
adicionados visto que nenhum material ou livro explicava de forma
simples e clara como utilizar tais recursos do directx. A confecção
desses capítulos demandou uma série de experiências com muitas
tentativas e erros para que eu pudesse entender como utilizar e
explicar de forma simples a construção de partículas e o uso do
stencil.
Eu queria adicionar no curso o uso de modelos animados porém nenhum
autor explicava de maneira gradual e simples a elaboração de uma
aplicação com etapas fáceis de serem assimiladas. Então visto que o
capítulo de modelo animado iria adicionar um nível repentinamente
grande de dificuldade ele foi deixado para o módulo posterior do meu
curso de directx aonde eu poderia elaborar explicações intermediárias
antes de abordar modelos animados.
Dificuldades pessoais
A elaboração dos cursos foi marcada pelo uso de grandes recursos de
tempo e financeiros. Eu tive de alugar uma sala comercial para ter
um lugar silencioso e sossegado para escrever e tive que negociar
uma redução de ganhos e de carga horária na empresa para ter o tempo
livre para produzir o curso. Era uma situação de equilíbrio delicado
pois meus custos pessoais aumentaram, minha renda diminuiu e minha
segurança financeira evaporou-se colocando em risco a manutenção da
minha própria existência e a dos meus dependentes. Mas existia o risco
em não se arriscar, existia o risco em se ater a uma segurança
transitória, existia o risco de não ser a si mesmo e de não viver uma
vida genuína. Por fim a economia brasileira ruiu em 2014 e por ter
arriscado em um momento de segurança eu consegui concluir uma grande
obra que não teria um outro momento favorável para vir ao mundo e que
me deu algo interno para me agarrar e basear meu futuro.
1.1 Sobre o autor...
1.2 Patrocínio e parcerias
1.3 Referências
1.4 Making of