É possível programar toda a lógica e o fluxo de um jogo sem nunca tocar no mecanismo de um gráfico?

7

Não estou interessado em renderizar motores ou design de níveis, mas estou muito interessado em programar a IA que conduz todas as características do jogo. Estou pensando em como o sistema d20 conduz as regras por trás dos jogos de D&D. Existe uma pessoa que programa essa lógica e é possível programar quase toda uma API sem tocar no mecanismo de um gráfico? Sou engenheiro de software por profissão (Java com alguma experiência em C #), então estou procurando usar essas habilidades de programação.


fonte
Veja meu post nas APIs de código-fonte aberto. Programar a IA não o mecanismo. gamedev.stackexchange.com/questions/8920/…
David Young

Respostas:

8

sim

É possível programar jogos sem tocar em um mecanismo gráfico ou de renderização. Mas isso limitará você a jogos baseados em texto. Alguns bons exemplos desses jogos seriam nethack, fortaleza anã e MUDS on-line (masmorras multiusuário).

Se você quiser fazer um jogo com gráficos, sugiro que você se junte a uma equipe onde você pode programar lógica e IA sem ter que saber muito sobre gráficos.

AttackingHobo
fonte
Também pensar em sites dinâmicos simples, onde você gera cada resultado em HTML e manter os valores no servidor em algum tipo de armazenamento local (SQL, ascii, xml ou qualquer outro)
BerggreenDK
3

Sim,

um mecanismo de jogo é feito de muitos subsistemas. Mecanismo gráfico, mecanismo AI, sistema de entrada, sistema de som, editor de jogos e muito mais.

Um jogo é composto por um mecanismo de jogo (e para jogos pequenos não é necessário) e muito conteúdo: texturas, níveis, modelos 3D, sons e GAME LOGIC, sim, a lógica do jogo é um conteúdo.

Você pode fazer um jogo sem um mecanismo, ou com um mecanismo com apenas dois ou três subsistemas. Um jogo sem gráficos, apenas no modo de texto. Em uma grande empresa, pequenos grupos são dedicados apenas a uma parte do jogo. (Scripts de IA, iluminação, rede, etc.)

momboco
fonte
3

Você está interessado em criar um novo jogo ou apenas tentar implementar várias técnicas de IA? No segundo caso, existem muitos videogames que oferecem APIs para interagir com o jogo. Por exemplo, você pode criar um bot para StarCraft usando BWAPI .

pek
fonte
3

Existe uma pessoa que programa essa lógica e é possível programar quase toda uma API sem nunca tocar no mecanismo de um gráfico? Sou engenheiro de software por profissão (Java com alguma experiência em C #), então estou procurando usar essas habilidades de programação.

Definitivamente. Programadores de jogabilidade geralmente nunca tocam no código de renderização real. Estamos separados por algumas camadas (lidando com atores e controladores e outros). Dito isto, como programador de jogabilidade em FPS triplos A, me vi trabalhando frequentemente com código de animação.

E você ainda precisa conhecer sua matemática e, dependendo da plataforma, entender o que está acontecendo nos bastidores com as decisões que toma.

Sua milhagem variará dependendo da tecnologia e da empresa; mas, geralmente, você está falando sobre jogabilidade ou programação de IA.

AA Grapsas
fonte
1

Sim, acho que você pode. Embora você deva saber que geralmente o sistema de IA se comunica com o sistema de animação para gerenciar o movimento e as ações dos personagens.

Realmente depende do jogo que você vai implementar.

David Saltares
fonte
0

É possível.

A Microsoft lançou recentemente o Kodu.

Você deve assistir à série de vídeos feitos no Kodu.


fonte
0

Se você tem um bom mecanismo de jogo disponível, não precisa se concentrar na parte gráfica e deixar o mecanismo lidar com isso.

adrix89
fonte
0

Eu acho que o melhor dessa abordagem, que eu mesmo fiz, é que você é livre para reutilizar seu "mecanismo de regras" depois de concluí-lo.

Isso me deu a chance de aplicá-lo a diversos mecanismos / renderizadores. Eu apenas coloco a interface do usuário na parte superior e posso criar facilmente (quase) jogos completamente diferentes. Eu poderia fazer um um side-scroller 2D usando sprites, outro um calabouço 3d, outro um mapa rotativo isométrico.

riv_rec
fonte