MIP - (MIP Is Portable)


Talvez uma das questões mais importantes na hora de efetivamente colocar a
mão na massa e começar a codificar um jogo seja em qual plataforma ele irá
rodar. Nesse momento vários parâmetros devem ser levados em consideração na
escolha de determinado sistema operacional para o desenvolvimento. Entre
eles podemos destacar a estabilidade do sistema, a disponibilidade de
ferramentas de desenvolvimento, facilidade de acesso à documentação do
sistema, facilidade de acesso aos recursos de hardware.
Existem diversos outros fatores que também devem ser levados em
consideração, como facilidade de distribuição e aceitação do sistema
operacional no mercado, já que seria bastante interessante que o maior
número possível de pessoas entrassem em contato com o jogo e apreciasse
nosso trabalho.
A discussão desses aspectos nos levou à idéia de desenvolver uma biblioteca
gráfica que permitisse a migração do código de um sistema para o outro com o
mínimo de esforço. Dessa forma poderíamos desenvolver os jogos num sistema e
migrá-lo para outro conforme as necessidades.
Nesse contexto nasceu o MIP, cujos principais objetivos são:

 
Funcionamento:

O MIP funciona como uma camada localizada entre o sistema operacional e o
código do jogo. A idéia é fornecer uma série de funções importantes para o
desenvolvimento de um jogo utilizando uma interface padrão, assim podemos
programar boa parte do software utilizando as funções do MIP, que se
encarrega de utilizar outras ferramentas disponíveis naquele sistema
operacional e os recursos de hardware. Quando da necessidade de migração do
jogo, tudo que se precisa fazer é trocar o MIP para aquele correspondente ao
novo sistema operacional e trocar o restante do código incompatível, que
dependendo do cuidado dos programadores durante o desenvolvimento pode ser
quase inexistente.

Para citar um exemplo simples de como isso pode funcionar vamos imaginar que
precisamos inserir uma imagem estática na tela, se estivermos trabalhando
sobre o Microsoft Windows poderíamos utilizar as bibliotecas do DirectX para
realizar essa tarefa. Isso seria bem fácil de fazer, basta conhecer a
interface oferecida pelo DirectX e fazer a chamada da função. Agora vamos
imaginar que precisamos portar o jogo para o Linux, nesse caso precisamos
vasculhar um nosso código todas as chamadas para essa função e trocá-la pôr
alguma outra função semelhante do Linux.

Podemos facilmente perceber o quão improdutivo isso é, pois além de possuir
conhecimentos a respeito das duas plataformas e das bibliotecas gráficas
pertencentes ao sistema teremos que adaptar nosso código de uma maneira
muito radical, o que pode significar mais trabalho do que se tivéssemos que
rescrever o jogo do início nesse novo sistema.

Ao invés disso podemos utilizar o MIP, que já possui versões para Linux e
Windows e portanto cuida dessas diferenças entre os sistemas. A chamada da
função que insere uma imagem na tela é a mesma tanto numa versão como em
outra e não vamos precisar nos preocupar com esse aspecto na hora de migrar.

A utilização de uma biblioteca como o MIP nesse caso é fundamental para
tornar o processo de migração viável, mais rápido e barato. Seria então
interessante agregar no MIP diversas funções de uso comum na programação de
jogos, como funções gráficas e sonoras. Foram justamente essas duas
ferramentas que foram primeiramente implementadas no projeto.

 

Volta a Pagina Principal