• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

hristosax

Bibliotecas para jogos

34 mensagens neste tópico

Alguém sabe com que bibliotecas e tal é que se fazem jogos como Savage2, Counter-strike, WoW, warcraft, ?

Sei que normalmente é C++(acho), mas gostava de saber que bibliotecas e coisas assim é que usam para os gráficos?

Tipo:Allegro

thanks :(

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

OpenGL ou DirectX (Por vezes ambas) integradas com a win32 API

Mas se calhar o melhor é pegares num motor gráfico já feito e começar daí, se não nunca mais tens o jogo feito.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

OpenGL ou DirectX (Por vezes ambas) integradas com a win32 API

Mas se calhar o melhor é pegares num motor gráfico já feito e começar daí, se não nunca mais tens o jogo feito.

O que queres dizer com "motor gráfico"?

Não te percebo :D E não encontro um IDE (ou la como se chama) para directX :(

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
A game engine is a software system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and desktop operating systems such as Microsoft Windows, Linux, and Mac OS X. The core functionality typically provided by a game engine includes a rendering engine (“renderer”) for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, and a scene graph. The process of game development is frequently economized by in large part reusing the same game engine to create different games.

Ou seja, quando se faz um jogo, não se faz tudo de raíz. Pega-se numa "framework", ou motor de jogo, que te simplifique o trabalho. Tens aqui uma lista de motores gratuitos: http://en.wikipedia.org/wiki/Category:Free_game_engines

Para escolheres um, tens que saber que tipo de jogo queres, pois normalmente os motores estão mais adaptados a um determinado género (Cube é para FPSs, Spring para RTSs, etc).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ou seja, quando se faz um jogo, não se faz tudo de raíz. Pega-se numa "framework", ou motor de jogo, que te simplifique o trabalho. Tens aqui uma lista de motores gratuitos: http://en.wikipedia.org/wiki/Category:Free_game_engines

Para escolheres um, tens que saber que tipo de jogo queres, pois normalmente os motores estão mais adaptados a um determinado género (Cube é para FPSs, Spring para RTSs, etc).

Achas difícil programar um jogo FPS(ou não FPS, pode ser uma coisa pequena) a partir de um motor de jogo?

Ainda sou um pouco begginer em C++, mas quero introduzir-me nesta área da programação desde cedo, parece-me boa ideia :P

Já agora, só encontro o JOGO Cube, não encontro nada que me sirva de motor de jogo :S

Any help?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já agora, só encontro o JOGO Cube, não encontro nada que me sirva de motor de jogo :S

Na primeira linha da página da wikipedia onde "apenas encontraste o jogo":

"Cube is a first-person shooter video game and also the name of its game engine which is free and open source software."

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hristosax, se ainda és iniciado, vai com calma.

Primeiro começa com coisas simples como jogos de texto, depois por api's simples como SDL ou allegro para jogos 2D e depois é que avanças.

Vais ver que vais ganhar muita experiência não só na programação como também no game design. :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hristosax, se ainda és iniciado, vai com calma.

Primeiro começa com coisas simples como jogos de texto, depois por api's simples como SDL ou allegro para jogos 2D e depois é que avanças.

Vais ver que vais ganhar muita experiência não só na programação como também no game design. :P

Mesmo em cheio! Segue o conselho do JD557. Simplesmente não vais criar logo um FPS assim de um dia para o outro.

Já agora, não tens necessariamente de começar por jogos 2D. Ter conhecimento sobre libs de jogos 2D não te vai ajudar muito para libs de jogos 3D. Aconselho-te este motor, porque é muito fácil de usar. Meia dúzia de linhas tens um nível no ecrã: Irrlicht Engine.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mesmo em cheio! Segue o conselho do JD557. Simplesmente não vais criar logo um FPS assim de um dia para o outro.

Já agora, não tens necessariamente de começar por jogos 2D. Ter conhecimento sobre libs de jogos 2D não te vai ajudar muito para libs de jogos 3D. Aconselho-te este motor, porque é muito fácil de usar. Meia dúzia de linhas tens um nível no ecrã: Irrlicht Engine.

A seguinte resposta é para vocÊs os dois:

obrigado pelos conselhos.

AInda estou confuso a tentar decidir no que fazer primeiro, porque não sei o grau de dificuldade de fazer um jogo 2D, nem um de texto.

Acho que vou começar por pensar em fazer um jogo do galo em texto

depois fazia um com gráficos.

acham boa ideia ?

por agora vou no tutorial da MS sobre C++, estou a aprender ponteiros, só para saberem onde ando na programação.

Thanks

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Na primeira linha da página da wikipedia onde "apenas encontraste o jogo":

"Cube is a first-person shooter video game and also the name of its game engine which is free and open source software."

Estava a tentar dizer que não encontro a maneira de USAR o motor de jogo Cube(eu sabia que era e jogo e o motor).

percebes? :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

love2d nao e para Lua?

Sim, mas é fixe para fazer experiências.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, mas é fixe para fazer experiências.

hmm talvez mais tarde aprenda Lua, mas não me interessa tanto :S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O meu conselho e sendo que a minha área de gosto foi game dev, é nas mesmas linhas dos conselhos acima, excepto num pormenor que é o do uso de um motor de jogos.

Ou seja se o teu objectivo é mesmo só fazer um jogo sim nesse caso deves 100% usar um motor de jogo,

no entanto se o teu objectivo é aprenderes o maximo possivel sobre a area de game dev talvez até como profissão, então deves começar primeiro por pequenas aplicações onde vás aprendendo os principios de Computer Graphics se for essa area especifica que te interesse

onde possas aprender conceitos como

Transformações lineares (matrizes e transformações, projecções etc), iluminação, texturação, etc...

Depois então podes tentar fazer um jogo, esqueçendo o fazer um motor de jogo sendo que a maior parte do pessoal começa a fazer um motor de jogo (algo k demora cerca de 5 anos com equipas completas) e desanima visto que só passado longo tempo é começa a ver algo no ecra apelativo

PS: antes disso tudo deves dominar bem uma linguagem de programação como por ex o C++ que é a linguagem mais usada na industria.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Depois então podes tentar fazer um jogo, esqueçendo o fazer um motor de jogo sendo que a maior parte do pessoal começa a fazer um motor de jogo (algo k demora cerca de 5 anos com equipas completas) e desanima visto que só passado longo tempo é começa a ver algo no ecra apelativo

Isto é totalmente verdade! :P

Estou a fazer o meu motor de jogo há meses, e só agora comecei a ter qualquer coisa no ecrã.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hum já agora se for em OpenGL avisa ai, que também ando de volta do meu mas para já como acabei o curso e ando á procura de job está um pouco em standby, mas quando estiver numa altura mais "calma" vou continuar, e é sempre bom conheçer pessoal tuga com os mesmo gostos  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hum já agora se for em OpenGL avisa ai, que também ando de volta do meu mas para já como acabei o curso e ando á procura de job está um pouco em standby, mas quando estiver numa altura mais "calma" vou continuar, e é sempre bom conheçer pessoal tuga com os mesmo gostos  :P

http://www.assembla.com/wiki/show/vapor

Se quiseres ajudar, era bem fixe. E sim, usa OpenGL (moderno, só com shaders e VBOs).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O meu conselho e sendo que a minha área de gosto foi game dev, é nas mesmas linhas dos conselhos acima, excepto num pormenor que é o do uso de um motor de jogos.

Ou seja se o teu objectivo é mesmo só fazer um jogo sim nesse caso deves 100% usar um motor de jogo,

no entanto se o teu objectivo é aprenderes o maximo possivel sobre a area de game dev talvez até como profissão, então deves começar primeiro por pequenas aplicações onde vás aprendendo os principios de Computer Graphics se for essa area especifica que te interesse

onde possas aprender conceitos como

Transformações lineares (matrizes e transformações, projecções etc), iluminação, texturação, etc...

Depois então podes tentar fazer um jogo, esqueçendo o fazer um motor de jogo sendo que a maior parte do pessoal começa a fazer um motor de jogo (algo k demora cerca de 5 anos com equipas completas) e desanima visto que só passado longo tempo é começa a ver algo no ecra apelativo

PS: antes disso tudo deves dominar bem uma linguagem de programação como por ex o C++ que é a linguagem mais usada na industria.

Ok... Vou começar a fazer joguinhos como  o jogo do galo em texto, e quando já tiver C++ mais ou menos "dominado" vou começar a ver umas coisas de gráficos e tal...

É que eu penso ter a programação como um backup, não como uma profissão de alta importância. Em princípio sigo música, mas se houver problemas...

Já percebeste, huh?

:P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hum já agora se for em OpenGL avisa ai, que também ando de volta do meu mas para já como acabei o curso e ando á procura de job está um pouco em standby, mas quando estiver numa altura mais "calma" vou continuar, e é sempre bom conheçer pessoal tuga com os mesmo gostos  :P

Olha que há jogos(acho eu) como o Savage2, e outros que te dão job na programação deles.

Por exemplo o Savage2(é tipo uma mistura entre WoW e Warcraft) é programado em C++, e eles precisam e querem programadores, acho que podes fazer isso à longa distância, a partir do PC.

E deve haver algum em Portugal?

Se nao houver esperemos que pró ano haja, depois das eleições  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Olha que há jogos(acho eu) como o Savage2, e outros que te dão job na programação deles.

Por exemplo o Savage2(é tipo uma mistura entre WoW e Warcraft) é programado em C++, e eles precisam e querem programadores, acho que podes fazer isso à longa distância, a partir do PC.

E deve haver algum em Portugal?

Se nao houver esperemos que pró ano haja, depois das eleições  :P

Penso que deves estar a referir-te a game admins que não são programadores mas sim "gestores" dentro da cumunidade do jogo com privilégios elevados para organizar eventos banir hackers etc.

Dentro da area de desenvolvimento de jogos computação gráfica não é a unica (mas de facto é  a mais dificil de arranjar de arranjar emprego pelo elevado nº de concorrentes, tens sempre outras areas interessantes tais como, Inteligencia Artifical, Som, Networking, Tool developer, Physics, Scripting isto só para mencionar algumas.

Triton: estive a dar uma olhadela e de facto acho interessante especialmente a organização, no entanto o meu motor vai usar um conceito um pouco diferente a nivel de organização vai ser um sistema baseado em "plugins" onde cada modulo possa ser substituido por uma implementação  distinta (baseado em interfaces), achei tb interessante o facto de usares row vectors em vez de column vectors para as matrizes.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
o meu motor vai usar um conceito um pouco diferente a nivel de organização vai ser um sistema baseado em "plugins" onde cada modulo possa ser substituido por uma implementação  distinta (baseado em interfaces)
Isso é como os emuladores normalmente funcionam, pelo menos os da N64, parece interessante, pelo menos é uma forma de suportar OpenGL/DirectX/outros mais facilmente.
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, eu pensei em usar plugins mas achei que numa fase inicial não compensaria o trabalho. Tenho suporte para dynamic loading de plugins no motor (nos ficheiros DynamicLibrary.[cpp|h]), simplesmente nada ainda os usa.

Se fores cuscar revisões antigas, vês que até comecei por abstrair a parte de rendering, etc. Mas entretanto convenci-me que não valia a pena preocupar-me com isso numa fase inicial, e com razão.

Não tinha noções (e ainda não tenho) de como abstrair o rendering de uma forma que fosse compatível com Direct3D e OpenGL. Só quando se conhece bem as APIs que queremos abstrair, é que podemos ter noção de como o melhor fazer.

Mas é uma ideia que tenho aprender também sobre Direct3D e poder fazer "refactor" do motor para usar plugins de rendering, mas por enquanto acho que não vale a pena.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem estamos a monopolizar a thread do rapaz  :P

sim a vantagem n se limita a api gráfica mas tb por exemplo api usada som, através do fornecimento de um interface adequado qualquer cliente do motor de jogo o pode extender, e talvez ainda mais importante que isso permitir que por ex 2 programadores um que acredite que da forma x a performance/qualidade fique melhor outro com uma ideia distinta trabalhem em simultaneo cada um implementado a sua versão em simultaneo. Outro aspecto que vou querer também implementar é do ser um motor baseado em components em vez da tradicional hierarquia de herança para gerir as entidades do jogo

http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/

e já agora n era bom termos uma secção destinada a api's gráficas  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Penso que deves estar a referir-te a game admins que não são programadores mas sim "gestores" dentro da cumunidade do jogo com privilégios elevados para organizar eventos banir hackers etc.

Dentro da area de desenvolvimento de jogos computação gráfica não é a unica (mas de facto é  a mais dificil de arranjar de arranjar emprego pelo elevado nº de concorrentes, tens sempre outras areas interessantes tais como, Inteligencia Artifical, Som, Networking, Tool developer, Physics, Scripting isto só para mencionar algumas.

Triton: estive a dar uma olhadela e de facto acho interessante especialmente a organização, no entanto o meu motor vai usar um conceito um pouco diferente a nivel de organização vai ser um sistema baseado em "plugins" onde cada modulo possa ser substituido por uma implementação  distinta (baseado em interfaces), achei tb interessante o facto de usares row vectors em vez de column vectors para as matrizes.

Não, estou a falar de Empresas que criam jogos, que precisam de programadores para fazer updates, adicionar coisas, fix bugs :thumbsup:

Ou criar uma sequela a um jogo já existente, que é o que se faz muito :P De savage para Savage2 precisaram de programadores.

Quem sabe se haverá Savage3?

Ou uma nova versão do WoW?

Ou counter strike?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora