Como demonstrar o Advanced Game AI como uma peça do portfólio?
Basicamente, toda empresa de jogos deseja ver um portfólio que exiba seu conjunto de habilidades. Se você é especialista em IA , o que e como deve mostrar suas habilidades.
Os gráficos agradáveis ​​em uma demonstração de IA são obrigatórios (passe pelo RH não técnico que não entende a IA, pense no verso 2d 3d)?
Demonstre a IA com vários recursos ou um único exemplo focado.
Habilidades fundamentais como encontrar caminhos, hfsm, planejamento etc. são componentes críticos da IA, mas realmente impressionam como parte do portfólio?
Uma entidade AI única, várias entidades ou grandes populações é sempre melhor?
Também como parte de um portfólio, idealmente, haveria um executável e vídeos que deveriam mostrar tudo o que está tentando ser exibido em apenas alguns minutos.
Eu diria que qualquer das habilidades exibidas neste vídeo seria um ótimo portfólio, mas as empresas de jogos realmente esperam isso de uma única pessoa.
O AI Sandbox é outro ótimo exemplo, mas foi feito com o trabalho de muitas pessoas.
Quaisquer exemplos de bons portfólios de IA seriam ótimos.
ai portfolio demo
Kynapse é legal :)
— RCIX
Na minha escola, temos alguns alunos de mestrado estudando IA e o fazem usando o mecanismo Unreal. Eles fazem parceria com um estudante de arte que faz alguns modelos 3D (eles certamente não precisam ser extravagantes) e depois trabalham sua mágica de IA no UnrealScript e no editor Unreal, e terminam com algo funcional que pode ser estudado e jogado com . Afinal, este é o objetivo final da IA: um jogo ou protótipo real que demonstra os conceitos da IA. Porque qualquer coisa menos é apenas um conceito, não uma demonstração.
Eu imaginaria que você poderia substituir o Unreal por qualquer mecanismo; A unidade, é claro, é muito popular, e o mecanismo Source da Valve também está fazendo ótimas coisas de IA. Eu acho que o resultado final é que você precisa usar todo o middleware possível, para poder passar da base e rapidamente testar realmente os conceitos de IA.
Muitas de suas perguntas são muito caso a caso. Você pode querer vários exemplos de um conceito de IA cada, ou um grande mundo de sandbox de IA com todos os tipos de IA correndo por aí interagindo. Realmente depende do que exatamente você está fazendo ou mostrando.
Esta não é uma pergunta, então: sim! Também recomendo que você tenha um site pessoal para que você possa direcioná-lo para ele ou até mesmo mostrá-lo em uma entrevista, se houver um computador na sala. Verifique se o site é o mais padrão possível; use vídeo HTML5 e Flash (o que for compatível com o navegador) e faça capturas de tela, caso o computador esteja tão bloqueado que nada disso esteja disponível. Além disso, se você tiver um dispositivo de reprodução de vídeo portátil (iPod, telefone, etc.), carregue vídeos do seu portfólio e traga isso! Pode não haver nada mais impressionante em uma entrevista sem um computador do que retirar o dispositivo de inserção aqui e realmente mostrar ao entrevistador o seu trabalho.
Além disso, uma nota final: há uma grande diferença entre bonito e polido. Não precisa ter gráficos estelares; mas os gráficos que estão lá devem pelo menos parecer acabados, não espaços reservados, sem falhas ou bugs etc. Só porque não precisa ser arte, não significa que não deva parecer um protótipo pronto para apresentar .
— Ricket
Motor a vapor? Eu acho que você quer dizer o Source Engine da Valve. O Steam é o sistema de entrega de conteúdo da Valve.
@AttackingHobo Desculpe, foi corrigido.
— Ricket 24/10/10
Para responder suas perguntas específicas:
Os gráficos são totalmente sem importância . Contanto que as pessoas entendam a diferença entre digamos atores e objetos estáticos do mundo, você ficará bem. As demo serão criticadas pela equipe de programação e eles sabem o que é importante para um programador de IA.
O foco múltiplo versus o foco único é difícil, veja minhas regras gerais abaixo
Habilidades fundamentais - são uma obrigação . Não vá para o avançado e esqueça de mostrar seu entendimento básico dos principais comportamentos da IA. Infelizmente, para muitas empresas, a IA ainda está baixa em sua lista de prioridades. Pelo menos inicialmente, eles procurarão alguém com conhecimento básico que possa levar a IA a um nível básico
Definitivamente, existem várias entidades / atores de IA .
O executável é preferível , pois mostra os comportamentos e o fato de que você pode fazê-lo em um ambiente de tempo real. Os vídeos são bons para mostrar comportamentos específicos de IA e adicionar anotações para declarar explicitamente o que está acontecendo.
Algumas regras gerais:
Minha maior sugestão é visualização . Embora os gráficos bonitos não sejam importantes, a visualização dos atores é crucial. Ative todas as depurações que puder e deixe-as ativadas para suas demos. O que você quer fazer é mostrar todos os comportamentos / decisões / dados que a IA está usando para o visualizador. Isso pode ser simples, como mostrar o estado atual ao lado de cada ator (por exemplo, ocioso), o "cone do campo de visão", o caminho atual etc.
Quanto exatamente ao que mostrar, isso depende inteiramente da empresa em que você deseja trabalhar. Minha sugestão é escolher sua empresa favorita (ou top 3) e olhar para a IA em seus jogos atualmente. Adapte seus exemplos para se ajustarem ao estilo desses jogos (por exemplo, FPS vs RTS). Além disso, observe a tecnologia que eles estão usando. Se você está inscrevendo-se em uma empresa que usa irreal, você está em uma posição muito melhor se usar irreal para exibir sua demonstração. Isso mostra que você tem conhecimento de IA e a implementa na tecnologia atual.
— Doolwind
"Os gráficos são totalmente sem importância." Em teoria, eles são, mas se você está apresentando sua IA e ela é um pouco mais fraca que outras pessoas, mas a apresentação visual é muito melhor, quem você acha que conseguirá o emprego?
— AttackingHobo
Sim, eu concordo com a maior parte do que você tem a dizer, mas os gráficos são totalmente importantes, embora você possa se safar de gráficos que não são de primeira qualidade se houver um estilo para eles (por exemplo, pense em arte poligonal ou minecraft)
— Latência
Como um veterano de 16 anos na indústria, na minha opinião, você não precisa torná-la bonita para demonstrar boas habilidades de IA. Por outro lado, acho que você deve ficar bonito porque:
A apresentação é muito importante na indústria de jogos e é uma maneira de deixar claro que você "fez um esforço", mesmo se gastou muitas mais horas na tecnologia subjacente.
Sua demonstração pode ser vista por um gerente de contratação, pessoa de RH ou programador que não sabe nada sobre IA
Se você conseguir alguém para torná-la bonita para você, melhor, porque isso mostra que você se preocupa em causar uma boa impressão, mas também que pode encontrar pessoas para ajudá-lo e cooperar com elas. Habilidades muito importantes no trabalho.
Em relação ao uso de uma API como Unreal ou Kynapse; Eu acho que é muito mais valioso mostrar que você pode construir um mecanismo de IA do nada. Demonstrando entusiasmo e resolução de problemas. Quando você estiver no trabalho, poderá passar alguns dias lendo uma API e documentação, mas uma compreensão mais profunda do que está abaixo da API é um ativo muito mais valioso.
Espero que isso ajude e boa sorte!
— justinhj
Por mais que eu goste de dizer que os gráficos não importam, isso simplesmente não é verdade. Não importa o quão incrível seja sua IA, a apresentação é o que é consumido pelos seus espectadores. Como as coisas são iguais, a apresentação mais bonita vencerá.
Isso não quer dizer que você precise apresentar uma peça incrivelmente detalhada, apenas uma que pareça limpa e acabada.
Você também deve prestar atenção ao movimento irregular de seus modelos gráficos; mesmo que o alvo do seu caminho mude 180 °, convém que essa alteração ocorra gradualmente na tela para tornar o movimento natural.
Sugiro emparelhar com um bom artista, e certifique-se de representar esse fato, se solicitado durante a sua apresentação. O artista também pode querer que um vídeo de sua demonstração mostre aos empregadores em potencial como a arte deles é usada "no jogo".
— jessecurry
Esse é outro problema com os sistemas de IA e animação. Algumas implementações permitem que a IA substitua animações pré-criadas, para que a AI funcione muito melhor, mas com anomalias gráficas. Por outro lado, se você aperfeiçoar a animação, ela limitará severamente o que a IA é capaz de fazer. Ah, trocas.
Certa vez, implementei um sistema que se misturaria automaticamente entre grupos de animações para fazer o personagem se mover naturalmente. Funcionou muito bem, parecia ser uma maneira decente de resolver esse problema. Pena que não tive mais tempo para trabalhar nisso.
Em qualquer lugar que permita que pessoas de recursos humanos não técnicos julguem demonstrações técnicas enviadas por candidatos, não está em algum lugar que você deseja trabalhar.
quase todas as empresas usam o RH como filtro para remover envios de currículo não relevantes. Eles fazem algumas centenas de currículos e o RH os reduz a talvez 5 deles que realmente receberão entrevistas.
Demonstrações não são currículos. O RH não executa demonstrações.
Como você basicamente mostra o comportamento do agente e nada mais, a resposta é não. Se puder, tente usar texturas simples (talvez nenhuma) e modelos simples que consistam em juntas e membros simples.
Isso depende do seu gosto. Pessoalmente, prefiro começar de maneira simples e adicionar novos agentes para mostrar mais recursos à medida que a demonstração avança, criando complexidade e vários comportamentos emergentes.
Na verdade, a maioria não aceita isso e procura algo além disso, mencione-o, mas não se concentre nisso. O principal interesse aqui são suas possíveis otimizações para os algoritmos já estabelecidos e / ou novas abordagens para esses problemas.
Veja 2.
Concordo, desde que ambos sejam uma vantagem. (algumas pessoas gostam de experimentar os executáveis ​​de demonstração por conta própria, se sentirem interesse suficiente)
— voodooattack
Do jeito que o dinheiro está com muitas empresas, tenho certeza de que você será envolvido em várias coisas diferentes e não apenas na IA - por esse motivo, eu diria que você também deve mostrar boas habilidades gerais.
Considere o cenário em que duas pessoas incríveis demonstram seu trabalho; ambos mostram a mesma IA, têm as mesmas qualificações / experiência e são muito semelhantes em todos os aspectos - mas um usa triângulos para atores e caixas para estática e o outro mostra sua demonstração com modelos carregados de arquivo. Pessoalmente, contrataria aquele que (a) se esforçasse mais (b) mostrasse que eles podem trabalhar fora de sua zona / especialidade de conforto.
Como outra pessoa mencionou para a sua especialidade, você não precisa mostrar bons gráficos, mas também não acho que isso machucaria.
Sim, deve parecer bonito (ou não feio), mas não subestime gráficos multiplicadores. Uma cidade 2D com bolhas 2D se movendo é boa, se você estiver demonstrando evitar colisões.