O estado atual do Doutorado…

Fazer Doutorado não é nada fácil. Alguns podem dizer que é mais fácil que o Mestrado. E é verdade, mas parece que, apesar do tempo maior, em alguns momentos você relaxa e quando percebe, o tempo está cada vez menor.

Eu sigo redigindo minha pesquisa todos os dias e publico aqui o estado atual do índice, que no final é o que vale para estruturar toda a pesquisa acadêmica.

Programação exploratória: aplicação na prototipação digital de games

Introdução: o código do código

1 – Game design e a engenharia de software
1.1 – O sentido da documentação e seus problemas invisíveis
1.2 – Documentação: GDD conceitual e GDD tecnológico

2 – Programação exploratória de computadores
2.1 – A prática programação exploratória
2.2 – Programação exploratória criativa
2.3 – Exploração do código e o conhecimento prévio
2.4 – Da criação à simplificação do código: o programa
2.5 – Programação exploratórias e as boas práticas do código

3 – Programação exploratória e prototipação digital
3.1 – Linguagens de programação e arquitetura
3.2 – Engines e frameworks de desenvolvimento
3.3 –  Engenharia de requisitos

Apresentação realizada no dia 25/03/2014

Produção de Games – Diálogo da arte com a técnica

Este ano (2011) comecei meu doutorado no TIDD da PUC-SP. Reproduzo aqui meu projeto de pesquisa.

APRESENTAÇÃO

A pesquisa acadêmica em games está presente nas universidades há pelo menos 10 anos. Diversos assuntos já foram pesquisados e os temas passam por diversas áreas como cultura, educação, comunicação, cognição, negócios, criação, produção, desenvolvimento, projetos, entre outros.

Como os jogos digitais são multidisciplinares por natureza, é fácil entender o grande número de áreas que já foram tema de pesquisa. Desde a graduação, passando pelo mestrado, o tema que tenho trabalhado está justamente na criação, produção e desenvolvimento de jogos digitais. O presente projeto de pesquisa transita dentro desta área, contudo, busca um ponto muito específico: como uma idéia pode ser transformada em código. Em outras palavras: como a linguagem natural pode ser transformada em linguagem de máquina para ter como resultado final um jogo digital de qualidade? Como a percepção se transforma em computação?

A grande proliferação de ferramentas que visam facilitar a produção de games nasceram com a finalidade de popularizar algumas funcionalidades presentes na maioria dos jogos. Porém, se todos os desenvolvedores utilizarem as mesmas funções e as mesmas ferramentas, teremos produtos homogêneos, iguais, e por assim dizer, sem criatividade. E é neste ponto que reside fator crucial que difere os bons jogos dos games medíocres: o diálogo fluído da arte com a técnica, onde a arte, a criação, a criatividade, a narratividade, a interatividade, as mecânicas, as regras e outros pontos comuns presentes no games dialogam com a computação. São estes pontos que devem ditar o ritmo da tecnologia e não o contrário. As ferramentas tecnológicas devem servir a arte e a criatividade e estas não podem se tornar reféns da tecnologia, da ferramenta.

QUESTÕES DE PESQUISA

O desenvolvimento de games, também conhecido como jogos digitais, se dá em um processo multidisciplinar de produção que começa com o esboço de idéias, conceituação de universo de jogo, passando pelo roteiro e sendo concentrado em um documento central que tem como objetivo guiar o projeto. Este documento é conhecido como documento de game design, do inglês, game design document (GDD). O processo de criação, formulação e desenvolvimento é conhecido como design de jogos, que segundo Schell (2010) é o ato de decidir o que um jogo deve ser.

O projetista de games, também denominado designer de jogos, é um indivíduo que, para exercer seu ofício de forma a construir um projeto consistente, necessita de diversas habilidades. Schell (2010) organiza uma lista importante destas habilidades e conhecimentos diversos, que são agora listados aqui:

• Animação
• Antropologia
• Arquitetura
• Brainstorming
• Negócios
• Cinematografia
• Comunicação
• Redação criativa
• Aspectos econômicos
• Engenharia moderna
• História
• Gerenciamento
• Matemática
• Música
• Psicologia
• Falar em público
• Design de áudio
• Redação técnica
• Artes visuais

O aspecto multidisciplinar da criação de games faz com que, no momento da formulação conceitual de um jogo digital, muitos profissionais e estudantes construam uma visão otimista do jogo a ser desenvolvido. Esta visão otimista pode fazer com que muitos projetos sofram modificações e deturpações em função da tecnologia utilizada para o seu desenvolvimento. Estas modificações podem ocorrer de diversas formas, que vão desde a não utilização de um conceito de jogo pensado no momento da criação, até a mudança completa do game. É a tecnologia não dialogando de maneira coerente com a arte.

A questão que este projeto de pesquisa se propõe a estudar é: como se dá o dialogo da percepção do criador de jogos com o desenvolvedor técnico para que o projeto original não sofra distorções e deterioração em função da tecnologia empregada em seu desenvolvimento. E como o desenvolvedor técnico entende os requisitos do jogo a fim de transformar a linguagem natural (concepção do jogo) em linguagem de máquina (programação).

Para ilustrar este problema, ou seja, os fatores relacionados à percepção do jogo pelo seu criador e seu diálogo com a máquina, foi produzido um gráfico que será apresentando a seguir.

O principal ponto desta pesquisa de doutorado se dá no ponto de interrogação (veja abaixo), situado entre a percepção do jogo e a computação. Será que é justamente neste ponto de interrogação que acontece o diálogo da arte com a técnica? É o que este projeto se propõe a pesquisar.

OBJETIVOS

O presente projeto de pesquisa se propõe a investigar os fundamentos teóricos e metodológicos necessários para a produção e desenvolvimento de games tendo como foco o diálogo da arte com a técnica, ou seja, o que foi concebido por seu criador e será executado pelo desenvolvedor.

Objetivos que participam das estruturas propostas neste projeto:

• Pesquisar os princípios fundamentais da engenharia de software e confrontá-los com o processo de desenvolvimento de jogos digitais;

• Observar e analisar o processo de produção de games na academia, principalmente no Curso Superior de Tecnologia em Jogos Digitais da PUC-SP e propor métodos para que o processo se torne mais eficiente;

• Analisar até que ponto a linguagem natural é utilizada pelos desenvolvedores de games para produzirem a linguagem técnica, ou seja, os códigos que darão forma e vida ao jogo;

• Investigar como acontece a negociação entre o GDD conceitual e o GDD tecnológico durante o processo de construção de um jogo;

• Propor formas efetivas de prototipação digital de games tendo como base a programação exploratória;

• Identificar como acontece a comunicação do designer de jogos (projetista) com a equipe de desenvolvimento (artistas e programadores).

JUSTIFICATIVAS

Não é de hoje que a grande imprensa noticia que a indústria dos games cresce mais que a do cinema, lucra milhões e milhões e que cria uma nova cultura em sua volta. Fato inegável e fator irrevogável.

Se hoje temos uma indústria em franco crescimento nos mais diversos países, é de se esperar que esta indústria absorva mão de obra especializada para produzir seus mais diversos títulos. E esta mão de obra especializada é formada na academia. É justamente na universidade que se aprende as boas práticas de produção e desenvolvimento para que, mais tarde, o profissional não cometa erros que venha a comprometer o resultado final de seu trabalho e fazer um jogo ruim.

Se a indústria cresce e a universidade forma profissionais, o tema proposto nesta pesquisa vem ao encontro das dificuldades encontradas no processo de produção de games no âmbito do diálogo do pensar com o fazer, da arte com a técnica, da percepção com a computação.

A pesquisa quer mostrar que, o pleno entendimento destes diálogos é que fazem com que um projeto desta natureza tenha sucesso em seu processo de construção e de desenvolvimento. O processo, segundo Pressman (2002), é um diálogo no qual o conhecimento, que deve se transformar em software, é reunido e embutido no software. O conhecimento aqui é a percepção criada pelo projetista de games, ou seja, o designer de jogos.

HIPÓTESES

A linguagem que o designer de jogos (pensador conceitual do game) utiliza tende a ser mais complexa, desorganizada e criativa do que a linguagem que o desenvolver técnico entende e codifica. O grande desafio do desenvolvedor técnico é entender a percepção do jogo e reproduzi-la em linguagem de máquina. Em função disso, é possível traçar algumas hipóteses a serem exploradas durante o processo de pesquisa:

• É possível a organização de uma metodologia que realize a ponte entre o conceitual e o tecnológico no âmbito do desenvolvimento de jogos digitais?

• É possível um protótipo digital reproduzir em sua plenitude a percepção do designer de um jogo?

• Os softwares disponíveis (motores de jogo) para a produção de games atrapalham ou limitam as perspectivas da criação?

• Quais são os elementos que constituem a linguagem do criador de jogos digitais?

• A programação exploratória é a melhor forma de ligação da arte com a técnica?

• Os fundamentos essenciais da engenharia de software devem ser aplicados ao desenvolvimento de games em sua plenitude?

• Ferramentas são apenas ferramentas. O que é preciso é formalizar e sistematizar os conceitos e métodos de trabalho?

• No contexto dos games, como arte faz o diálogo com a técnica?

• Como se dá a relação entre a imagem, interatividade, roteiro, narrativa, criação, planejamento, produção e programação?

• A programação exploratória é a técnica de exploração das percepções do criador de jogos?

• Como os elementos funcionais de um game podem estar presentes no seu momento de criação?

• Como são formadas as regras de um jogo e como estas regras são codificadas em linguagem de máquina?

• A mecânica de jogo nasce no momento da concepção do jogo ou no momento de sua codificação?

• É possível fazer um game do zero sem um projeto inicial?

• Qual a melhor forma de gerenciar o processo de produção tendo como base os pressupostos do criador de jogos?

METODOLOGIA

Análise direta e acompanhamento dos games produzidos nos cursos superiores da PUC-SP que trabalham o tema, tendo como foco principal o Curso Superior de Tecnologia em Jogos Digitais.

Avaliação de material produzido pelos acadêmicos e sistematização do processo de trabalho. Observação dos métodos de trabalho utilizados e aplicação de questionários a fim de tabular processos e métodos.

Desenvolvimento de banco de dados disponível para consulta pública (wiki ou blog) com os principais problemas enfrentados durante o processo de desenvolvimento de jogos digitais e suas possíveis soluções para que assim as boas práticas façam com que os games produzidos sejam cada vez melhores.

Amplo estudo da bibliográfica básica indicada neste projeto e levantamento de mais autores que tratem sobre o tema. Fichamento de todas as obras indicadas para agilizar o processo de produção da tese de doutorado.

Levantamento de grupos de pesquisa sobre engenharia de software e que trabalhem sua aplicabilidade nos games. Estudo sistemático de técnicas de gerenciamento de projeto para ajudar no processo de formulação das hipóteses.

REFERENCIAL TEÓRICO INICIAL

Um levantamento bibliográfico de maior amplitude será feito a respeito do problema e também sobre o tema. Além de uma grande pesquisa bibliográfica específica sobre os modelos teóricos, os problemas metodológicos e os conteúdos temáticos relativos ao objeto dessa pesquisa que terá, a princípio, como quadro teórico, os seguintes autores:

Autores: Alan Mathison Turing, Abraham Moles, Jesse Schell, Janet Murray, Lúcia Santaella, Roger S. Pressman, Gordon Pask, Vilém Flusser, Luís Carlos Petry, Sérgio Bairon, Steven Johnson, Noah Wardrip-Fruin, Jesper Juul, Katie Salen, Eric Zimmermman, Van Burnham, Pat Harrigan, Joost Raessens, Chris Crawford, Alexandre Souza Perucia, Antônio Córdova de Berthêm, Guilherme Lage Bertschinger, Roger Tavares, Sérgio Nesteriuk, Ítalo Santiago Vega, Sérgio Basbaum, Roberto Ribeiro Castro Menezes, Lúcia Leão, Wolfgang Wieser, Norbert Wiener entre outros.