Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bills

Convite para participar de um projeto

Recommended Posts

Primeiramente quero me apresentar. Pode me chamar de Luiz ou "bills", se preferir. Sou estudante de engenharia de computação e adoro programar.
Fiz esse tópico para divulgar um projeto que estou iniciando e estou convidando qualquer um à participar dele.
Sobre o Projeto
Estou começando a fazer em "javascript" uma Engine (ou motor, como também é conhecido no brasil) de Jogos. Essa engine irá ser feita em cima do Entity-Component-System (Sistema de Entidades e Componentes). Para aqueles que não conhecem isso, vou explicar de maneira bem resumida e com minhas palavras.
Um "Sistema de Entidades e Componentes" é uma maneira de programar jogos que vem sendo muito utilizada ultimamente. Basicamente, consiste em dividir seu jogo em entidades (objetos do jogo) e componentes (características dessas entidades). Uma entidade pode possuir vários componentes e cada componente deve representar uma característica. Veja um exemplo:

 

O jogo Bomberman (acredito que todos conheçam) possui as seguintes entidades:
O bomberman (o jogador)
Os blocos do mapa
As bombas
As chamas das bombas
Os inimigos
Os power ups
etc...
Tudo que eu citei acima são entidades pois são coisas que interagem com o mundo do jogo. E cada uma dessas coisas possuem componentes.
O bomberman (imagem, posição, animação, movimento, controle, mortal)
Os blocos do mapa (imagem, posição, mortal)
As bombas (imagem, animação, posição, temporária)
Entre parenteses mostrei alguns possíveis componentes que cada entidade possuiria. Como pode perceber cada componente fornece características a entidade. O componente "posição" forneceria as coordenadas x e y, por exemplo.

 

Por que eu quis começar esse projeto?
Existe muitas outras engines e muitas delas são ótimas. Eu não faço a minha engine no intuito que ela seja superior e nem inferior a elas, tanto que uso o código de muitas dessas outras para estudar. O que eu quero mesmo é fazer uma engine bem simples e leve. Uma engine que seja apenas o suficiente para um jogo funcionar. O resto quero que seja "componentes" externos. Sonho em um dia que essa minha engine tenha uma enorme comunidade com diversos componentes, tutoriais, jogos, etc.
O convite está aberto
O projeto é open-source (código aberto) e está distribuído pela licensa MIT. Assim qualquer um tem a liberdade de ler o código e implementar novas funcionalidades. No momento estou terminando o Sistema de Entidade e Componentes. Meu próximo passo será implementar um sistema de tempo para poder começar a trabalhar com renderização e dar vida a alguns jogos. Não disse que eu tinha acabado de começar o projeto? xD
O projeto está hospedado no GitHub: http://github.com/luizbills/LiteJS
QUALQUER UM PODE AJUDAR
Caso você não entenda muito sobre como funciona uma engine, você ainda pode ajudar de muitas outras maneiras:
  • Ajudar na documentação dos métodos.
  • Ajudar a traduzir para o inglês e outras línguas.
  • Criar jogos usando a engine (para servir de exemplos).
  • Ajudar a testar os códigos.
Eu te agradeço por ter me dado sua atenção =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.