Using the segmentation of hands, I developed the game Control the ball with your hands.
This a video for show the game:
This game was developed in the Scilab, using the SIVP toolbox, thus it's a simulation algorithm.
I develop games like this because I like it.
If anyone wants talk about this game, or others things, may send me e-mails.
Este blog tem por finalidade apresentar meus trabalhos e alguns aspectos de minha vida pessoal. Eu (editor do blog) sou engenheiro e mestre em engenharia de teleinformática, sou usuário e entusiasta de software livre, sou católico praticante e espero que o meu blog possa te ajudar.
Mostrando postagens com marcador GDJCE. Mostrar todas as postagens
Mostrando postagens com marcador GDJCE. Mostrar todas as postagens
quarta-feira, 1 de outubro de 2008
segunda-feira, 25 de agosto de 2008
Free Games
Games, or any entertainment aplication, ever are questioned in Free Software, because when someone is talking about GNU/Linux and others free systems other one be the question: "I will can play the game {X}??". So is necessary to cite the incompatibilities between the systems (GNU/Linux and Window$, for example). Sometimes the emulators (as the wine) can resolves the problem, but the games are a big problem to use free software, for domestic users.
Currently exists many free games, or compatible with free enviroments, that are very interesting, for example:
List with many games here.
I believe that money is the biggest complicating for free game developers. But I find some answers to this question:
Publicity - a company can pay to the developers and the game could have advertisements of that, for example a car company (Ferrari, GM, Toyota, etc...) paid for a racer game, and all cars will be of this company.
"Closed" games - the game is free, so the source-code just together the program, but is possible to develop specific hardware to game and to market hardware and software together, or only the hardware, could be possible, too, make a portal with tutorials, tips, upgrades, device drivers, multiplayers games, etc...
Games to mobile devices (or embedded systems) - charge a fee by acess the site, download a program, upgrade, any resource, etc... And yet, the users could be tools to develop levels, for example.
Make money with free games is possible, invent your way!
Other big problem of game market is the developer's (programmers, game designers, graphic artists, etc....) greed, because many developers want be rich with only one game and live of this game forever.
Is better to do some games and make few many in each game than to do one game and make US$ 1,000,000.00 from it.
Today, most players can't pay for expensive games, but they can pay some cents for "simple" games.
Ok, it's all! Come on, let's to develop free games!!
Currently exists many free games, or compatible with free enviroments, that are very interesting, for example:
- Nexuiz;
- Super Tux (similar to Super Mario of SNES);
- America's Army;
- Open Arena;
- Tremolous;
- Tux Racer;
- Alien Arena;
- The Open Racing Car Simulator;
- Frets On Fire;
- Scorched 3D;
- Mania Drive;
- FreeCraft;
- Cube.
List with many games here.
I believe that money is the biggest complicating for free game developers. But I find some answers to this question:
Publicity - a company can pay to the developers and the game could have advertisements of that, for example a car company (Ferrari, GM, Toyota, etc...) paid for a racer game, and all cars will be of this company.
"Closed" games - the game is free, so the source-code just together the program, but is possible to develop specific hardware to game and to market hardware and software together, or only the hardware, could be possible, too, make a portal with tutorials, tips, upgrades, device drivers, multiplayers games, etc...
Games to mobile devices (or embedded systems) - charge a fee by acess the site, download a program, upgrade, any resource, etc... And yet, the users could be tools to develop levels, for example.
Make money with free games is possible, invent your way!
Other big problem of game market is the developer's (programmers, game designers, graphic artists, etc....) greed, because many developers want be rich with only one game and live of this game forever.
Is better to do some games and make few many in each game than to do one game and make US$ 1,000,000.00 from it.
Today, most players can't pay for expensive games, but they can pay some cents for "simple" games.
Ok, it's all! Come on, let's to develop free games!!
quarta-feira, 13 de agosto de 2008
Aplicações 3D
Aplicações que envolvem 3D (em visualização, interfaces, processamento, etc....) necessitam de algumas características importantes.
Para uma determinada aplicação, por exemplo um jogo ou simulador (para automáveis, aviões ou construções), é necessário atentar para as características dos sistemas. Quanto mais fiel se desejar que o sistema seja, mais pesado computacionalmente o sistema será.
Para um simulador de automóveis é necessário fazer considerações sobre aerodinâmica, resistência dos materiais (pneus e lataria), consumo de combustível, os atritos envolvidos (do sistema com o ambiente e internos ao sistema), os aquecimentos que irão aparecer em decorrência dos atritos envolvidos e muitas outras coisas que caberia a um engenheiro mecânico especificar.
Para desenvolver uma aplicação 3D, para um jogo por exemplo, antes de qualquer coisa são levantadas as características do modelo desejado, tais como dimensões, articulações, texturas da superfície, etc.... Em seguida o modelo pode ser feito em uma maquete ou similar. A partir da maquete, um artista gráfico usa um software específico para fazer a modelagem computacional, como o Blender.
Com o modelo pronto, este é salvo em um formato de arquivo específico, o qual contém informações sobre os vértices do objeto, as ligações entre os vértices, as articulações e outras coisas mais. O programador irá então desenvolver a aplicação em cima deste modelo para animá-lo ou controlá-lo, assim surgem os personagens dos jogos, modelos de prédios, carros, aviões, navios, etc......
Entretanto, existem API's que ajudam o trabalho dos desenvolvedores de aplicações 3D. É o caso da OpenGL, que tem interfaces nativas com C/C++ e Python e, novamente, OpenGL é uma API livre (se não fosse, eu não estaria falando dela aqui). Algumas funções estão prontas para serem usadas com OpenGL, como interfaces com a placa de vídeo, mouse, teclado, renderização, etc.... Isto permite a economia de muito tempo de implementação.
Para fechar o post, segue um vídeo que encontrei no YouTube sobre modelagem 3D.
Para uma determinada aplicação, por exemplo um jogo ou simulador (para automáveis, aviões ou construções), é necessário atentar para as características dos sistemas. Quanto mais fiel se desejar que o sistema seja, mais pesado computacionalmente o sistema será.
Para um simulador de automóveis é necessário fazer considerações sobre aerodinâmica, resistência dos materiais (pneus e lataria), consumo de combustível, os atritos envolvidos (do sistema com o ambiente e internos ao sistema), os aquecimentos que irão aparecer em decorrência dos atritos envolvidos e muitas outras coisas que caberia a um engenheiro mecânico especificar.
Para desenvolver uma aplicação 3D, para um jogo por exemplo, antes de qualquer coisa são levantadas as características do modelo desejado, tais como dimensões, articulações, texturas da superfície, etc.... Em seguida o modelo pode ser feito em uma maquete ou similar. A partir da maquete, um artista gráfico usa um software específico para fazer a modelagem computacional, como o Blender.
Com o modelo pronto, este é salvo em um formato de arquivo específico, o qual contém informações sobre os vértices do objeto, as ligações entre os vértices, as articulações e outras coisas mais. O programador irá então desenvolver a aplicação em cima deste modelo para animá-lo ou controlá-lo, assim surgem os personagens dos jogos, modelos de prédios, carros, aviões, navios, etc......
Entretanto, existem API's que ajudam o trabalho dos desenvolvedores de aplicações 3D. É o caso da OpenGL, que tem interfaces nativas com C/C++ e Python e, novamente, OpenGL é uma API livre (se não fosse, eu não estaria falando dela aqui). Algumas funções estão prontas para serem usadas com OpenGL, como interfaces com a placa de vídeo, mouse, teclado, renderização, etc.... Isto permite a economia de muito tempo de implementação.
Para fechar o post, segue um vídeo que encontrei no YouTube sobre modelagem 3D.
sexta-feira, 8 de agosto de 2008
Jogos livres
Jogos, ou aplicações de entretenimento de uma forma geral, sempre são um obstáculo na divulgação do Software Livre, pois quando alguém começa a falar de gnu/linux e correlatos aparece outro alguém e pergunta: "posso jogar {jogo 'X'} no linux?". Neste ponto surgem as diversas incompatibilidades entre os sistemas, as vezes contornáveis por emuladores (tipo o wine), mas normalmente a questão dos jogos é um grande problema.
Atualmente existem muitos jogos livres, ou ao menos compatíveis com plataformas livres, que são até bem interessantes, dentre os quais posso citar:
Acredito que o ponto que mais impede a proliferação de jogos livres é a dúvida: "como irei ganhar dinheiro?" e para esta pergunta, tomei conhecimento de algumas entidades têm criado soluções interessantes.
Publicidade - desenvolver jogos para empresas de modo a fazer propaganda da patrocinadora (tipo fazer um jogo de corrida em que todos os carros são de uma determinada marca);
Jogos de "caixinha" - como o jogo é livre, este deve ser acompanhado do código-fonte, porém pode-se desenvolver hardware específico para o seu jogo e fazer a comercialização do sistema completo, podendo até deixar o software disponível na internet com atualizações, dicas, tutoriais, device drivers para o hardware, etc.....;
Jogos para dispositivos móveis - taxar o usuário pelo download do jogo, o qual será feito pelo dispositivo móvel, sendo o jogo livre então o usuário poderia dispor de ferramentas para edição do jogo (tipo cenários, personagens, etc....).
Outras formas também podem ser pensadas, o povo brasileiro tem criatividade para criar formas de ganhar dinheiro com essas idéias.
Um grande problema para o comércio dos jogos livres é a ganância por parte dos desenvolvedores (programadores, game designers, artistas gráficos, sonoplastas, etc......), pois muitas vezes quem começa a desenvolver um jogo imagina ficar rico e passar a viver deste jogo que desenvolveu e de futuras atualizações.
Acredito ser melhor desenvolver vários jogos simples e ganhar um pouco em cada um que desenvolver um super-jogo e tentar ganhar uma fortuna em cima dele, a população que tem condições de pagar por jogos de grande porte deseja jogos de grande porte (realmente), com muitos jogadores on-line e muitos recursos.
Lembrando que a grande massa que está adentrando ao mundo da informática não tem poder aquisitivo, assim pode ser mais interessante tirar apenas algumas moedas destas pessoas, de modo que não fará falta em seus bolsos (nem na mesa de suas casas).
Espero ter passado a idéia.
Atualmente existem muitos jogos livres, ou ao menos compatíveis com plataformas livres, que são até bem interessantes, dentre os quais posso citar:
- Nexuiz;
- Super Tux (similar ao Super Mario do SNES);
- America's Army;
- Open Arena;
- Tremolous;
- Tux Racer;
- Alien Arena;
- The Open Racing Car Simulator;
- Frets On Fire;
- Scorched 3D;
- Mania Drive.
Acredito que o ponto que mais impede a proliferação de jogos livres é a dúvida: "como irei ganhar dinheiro?" e para esta pergunta, tomei conhecimento de algumas entidades têm criado soluções interessantes.
Publicidade - desenvolver jogos para empresas de modo a fazer propaganda da patrocinadora (tipo fazer um jogo de corrida em que todos os carros são de uma determinada marca);
Jogos de "caixinha" - como o jogo é livre, este deve ser acompanhado do código-fonte, porém pode-se desenvolver hardware específico para o seu jogo e fazer a comercialização do sistema completo, podendo até deixar o software disponível na internet com atualizações, dicas, tutoriais, device drivers para o hardware, etc.....;
Jogos para dispositivos móveis - taxar o usuário pelo download do jogo, o qual será feito pelo dispositivo móvel, sendo o jogo livre então o usuário poderia dispor de ferramentas para edição do jogo (tipo cenários, personagens, etc....).
Outras formas também podem ser pensadas, o povo brasileiro tem criatividade para criar formas de ganhar dinheiro com essas idéias.
Um grande problema para o comércio dos jogos livres é a ganância por parte dos desenvolvedores (programadores, game designers, artistas gráficos, sonoplastas, etc......), pois muitas vezes quem começa a desenvolver um jogo imagina ficar rico e passar a viver deste jogo que desenvolveu e de futuras atualizações.
Acredito ser melhor desenvolver vários jogos simples e ganhar um pouco em cada um que desenvolver um super-jogo e tentar ganhar uma fortuna em cima dele, a população que tem condições de pagar por jogos de grande porte deseja jogos de grande porte (realmente), com muitos jogadores on-line e muitos recursos.
Lembrando que a grande massa que está adentrando ao mundo da informática não tem poder aquisitivo, assim pode ser mais interessante tirar apenas algumas moedas destas pessoas, de modo que não fará falta em seus bolsos (nem na mesa de suas casas).
Espero ter passado a idéia.
terça-feira, 15 de julho de 2008
Planejamento para o Gravity Racer
Como estive tendo uns problemas com o Open CV no PCLOS, não irei fazer esta parte do Gravity Racer agora.
No momento estou meio parado com relação a este projeto, mas em alguns dias (ainda este mês) espero ter algo "paupável".
A ordem que pretendo seguir no desenvolvimento do jogo é a seguinte:
Com isso, fecho o Gravity Racer1.0 e este estará pronto para o mercado.
No momento estou meio parado com relação a este projeto, mas em alguns dias (ainda este mês) espero ter algo "paupável".
A ordem que pretendo seguir no desenvolvimento do jogo é a seguinte:
- Interface visual, em que irei desenvolver uma tela de abertura e aproveitar as figuras para o jogo propriamente dito. Neste ponto terei de aprender a manipular as figuras com SDL no C++, sendo um dos pontos mais importante a rotação das figuras.
- Controle dos elementos, basicamente controlar a nave e fazê-la interagir com o cenário.
- Sonoplastia, em que posso inventar algum som ou procurar algo na internet.
- Desenvolver a "inteligência" do jogo, implementar a interação gravitacional, inserir possíveis adversários para jogos single player (acho que seria bom usar lógica fuzzy na inteligência dos adversários, como no vídeo do controle fuzzy de foguete).
- Esta é uma estapa opcional: permitir jogos multi-player pela web, neste ponto terei sérios problemas pois não tenho experiência em aplicações desta natureza.
- Por fim, fazer o módulo de controle do foguete pela webcam, sendo esta a parte final do projeto.
Com isso, fecho o Gravity Racer1.0 e este estará pronto para o mercado.
Marcadores:
cálculo integral,
device driver,
GDJCE,
ica,
jogos,
linux,
multisign,
opencv,
Perfil profissional,
programação gráfica,
rastreamento,
sdl,
software livre,
visão computacional
quarta-feira, 9 de julho de 2008
Starting Gravity Racer
Hoje dei o primeiro passo no Gravity Racer.
Lembrei-me de uma aplicação que fiz, a qual consistia de um foguete que movia-se automaticamente em meio a meteoros.
Assim, poderei aproveitar as figuras e algumas partes do código.
Irei fazer o programa em C++ com SDL. Mas estou aberto a sugestões.
Pensei em fazer um sistema de controle para o foguete baseado em visão, em que o jogador iria segurar um objeto (semelhante a um apagador de lousa) e o foguete teria sua direção determinada pela direção do objeto, mas ainda estou analisando esta possibilidade.
Reforço que estou aberto a ajuda externa.
Lembrei-me de uma aplicação que fiz, a qual consistia de um foguete que movia-se automaticamente em meio a meteoros.
Assim, poderei aproveitar as figuras e algumas partes do código.
Irei fazer o programa em C++ com SDL. Mas estou aberto a sugestões.
Pensei em fazer um sistema de controle para o foguete baseado em visão, em que o jogador iria segurar um objeto (semelhante a um apagador de lousa) e o foguete teria sua direção determinada pela direção do objeto, mas ainda estou analisando esta possibilidade.
Reforço que estou aberto a ajuda externa.
Marcadores:
cálculo integral,
computação,
GDJCE,
jogos,
linux,
matemática,
mestrado,
Perfil profissional,
programação gráfica,
sdl,
software livre
terça-feira, 8 de julho de 2008
Gravity racer
Depois que acabam as atividades das aulas as idéias sempre fluem melhor...
Passei agora uns 4 dias em Guaramiranga, melhor cidade do CE que conheço, em um evento promovido pelo Movimento dos Focolares.
Neste evento (Mariápolis), pude relaxar bastante e quando voltei tive uma idéia de jogo que me pareceu bem interessante.
O Gravity racer (nome provisório) seria um jogo de corrida no espaço (com estrelas, planetas, meteoros, etc...) e as naves iriam percorrer este espaço como uma corrida convencional, porém seria levada em consideração a gravidade dos corpos celestes, o que poderia ajudar ou atrapalhar o competidor, visto que em operações espaciais de verdade a gravidade é usada para impulsionar as naves e foguetes para o espaço, então ficaria a critério do jogador usar a gravidade a seu favor ou evitar os corpos celestes.
Enfim, esta é apenas uma idéia e não tenho nada implementado. Caso alguém tenha interesse, pode entrar em contato que faremos uma boa parceria.
Ainda não sei que tecnologias abordar, mas poderia usar a internet (para jogos multiplayer), inteligência computacional para eventuais elementos autônomos (naves ET's, jogadores controlados pelo PC, etc....), visão computacional para prover a interatividade com o jogo, enfim, idéias não faltam.
Passei agora uns 4 dias em Guaramiranga, melhor cidade do CE que conheço, em um evento promovido pelo Movimento dos Focolares.
Neste evento (Mariápolis), pude relaxar bastante e quando voltei tive uma idéia de jogo que me pareceu bem interessante.
O Gravity racer (nome provisório) seria um jogo de corrida no espaço (com estrelas, planetas, meteoros, etc...) e as naves iriam percorrer este espaço como uma corrida convencional, porém seria levada em consideração a gravidade dos corpos celestes, o que poderia ajudar ou atrapalhar o competidor, visto que em operações espaciais de verdade a gravidade é usada para impulsionar as naves e foguetes para o espaço, então ficaria a critério do jogador usar a gravidade a seu favor ou evitar os corpos celestes.
Enfim, esta é apenas uma idéia e não tenho nada implementado. Caso alguém tenha interesse, pode entrar em contato que faremos uma boa parceria.
Ainda não sei que tecnologias abordar, mas poderia usar a internet (para jogos multiplayer), inteligência computacional para eventuais elementos autônomos (naves ET's, jogadores controlados pelo PC, etc....), visão computacional para prover a interatividade com o jogo, enfim, idéias não faltam.
sábado, 10 de maio de 2008
Grupo de Desenvolvimento de Jogos - GDJ
No FLISOL, aconteceu o Encontro de Desenvolvedores de Jogos do CE, o qual eu participei, e foi montado um grupo de discussão.
A idéia é aproximar os desenvolvedores de jogos do estado e permitir trocas de experiências.
O coordenador do grupo é o David Ferreira, que tem uma certa vivência em desenvolvimento de jogos.
Durante o encontro, a conversa teve caráter informativo e para apresentação dos membros, como citado aqui.
A idéia é aproximar os desenvolvedores de jogos do estado e permitir trocas de experiências.
O coordenador do grupo é o David Ferreira, que tem uma certa vivência em desenvolvimento de jogos.
Durante o encontro, a conversa teve caráter informativo e para apresentação dos membros, como citado aqui.
Assinar:
Postagens (Atom)