O que há de errado com a família Linux / * nix para jogos? O que torna o desenvolvimento de jogos para esta plataforma muito lento em comparação com o Windows ou mesmo o OS X?
O que há de errado com a família Linux / * nix para jogos? O que torna o desenvolvimento de jogos para esta plataforma muito lento em comparação com o Windows ou mesmo o OS X?
Respostas:
Para os clientes de jogos, isso tem a ver principalmente com a cultura, levando a estratégias de monetização difíceis.
Servidores para jogos multiplayer, por outro lado, têm atraído muita atenção no linux / nix, é uma plataforma muito atraente para o desenvolvimento de tecnologia de servidor.
Há esperança de que o eventual lançamento do Steam for Linux ajude a mudar essa cultura no que diz respeito aos clientes e forneça aos desenvolvedores e editores uma plataforma mais viável monetariamente para a distribuição de jogos.
O que há de errado com a família Linux / * nix para jogos?
'Errado' é uma palavra forte, mas vou listar algumas coisas que impedem os desenvolvedores de jogos de trabalhar no Linux.
Cultura - O pessoal do Linux tende a acreditar que o software deve ser gratuito - isso não é propício para obter lucro com a venda do software. Isso pode mudar no futuro, com os jogos online sendo 'software como serviço' em certo sentido.
Participação de mercado - A participação de mercado do Linux no desktop sempre foi muito pequena. Agora que a participação de mercado finalmente passou de 'desprezível' para ' lamentavelmente baixa ', você pode fazer um pequeno argumento para direcionar essa plataforma - se o ponto anterior não era verdade, isso é verdade. Isso também chegou um pouco tarde demais - o mercado de jogos sem console é realmente muito pequeno hoje em dia quando você exclui MMOs.
Suporte ao desenvolvedor - A Microsoft investiu muito tempo e dinheiro no DirectX e, mais recentemente, no XNA. Com um download, você tinha todas as APIs e documentação necessárias para criar jogos. O Linux não possui um corpo central para fazer isso, nem mesmo um único produto que possa ser usado. O SDL não faz gráficos 3D, o OpenGL não faz nada além de gráficos, nem teve uma estratégia de atualização muito credível nos últimos anos e há um bilhão de outras bibliotecas ( muitas das quais podem ser encontradas em uma lista que mantenho aqui ) você pode jogar na mistura sem líderes claros. É apenas muito mais aborrecimento. Além disso, muitos dos principais middlewares não funcionam no Linux; portanto, em vez de código testado e com suporte pago, você deve considerar o uso de código aberto abandonado que nunca foi usado em um jogo lançado.
Suporte ao SO - o Linux pode fazer tudo o que o Windows faz, mas às vezes dificulta as coisas. O suporte ao som, em particular, é horrível. O suporte a vídeo é estranho devido às legalidades em torno dos codecs. A distribuição de seus binários pode ser complicada quando você considera os diferentes tipos de embalagem que você precisa oferecer suporte. Todas essas coisas podem ser superadas se você souber o que está fazendo, mas a maioria dos desenvolvedores do Windows não saberá o que está fazendo com o Linux, para que não possam portar seus produtos com facilidade.
O Linux é responsável por aproximadamente 1% do total de usuários finais acessando a Internet ( OS Marketshare ). Seu uso aumenta significativamente quando se fala em servidores, mas simplesmente não é um grande sistema operacional de consumo.
Não há nada de errado com a família de sistemas operacionais Linux / * nix para o desenvolvimento de jogos, exceto o público-alvo. A maioria dos desenvolvedores sente que o esforço para criar jogos para Linux não se traduzirá em cópias vendidas de seus jogos, especialmente nas comunidades AAA.
Mesmo várias empresas que transportaram até jogos AAA para o Linux (nem pagaram o custo inicial de desenvolvimento do jogo) não foram capazes de gerar vendas suficientes nessa plataforma para se manter à tona.
Dito isto, o Linux pode ser um benefício para muitos desenvolvedores independentes, porque existem alguns fanáticos por Linux que compram um jogo simplesmente porque é lançado no Linux.
Os jogos Linux são um mercado amplamente inexplorado, na minha opinião, especialmente para os indies. Se você observar os números relatados pela Hemisphere Games for Osmos e os números relatados pela Wolfire Games para o Humble Indie Bundle (especialmente a receita total de cada plataforma), poderá ver que os usuários do Linux podem estar bastante ansiosos para apoiar aqueles que suportam Linux.
Uma coisa que notei que ainda não foi abordada aqui é a mistura geral de drivers, kernels e bibliotecas com os quais você precisa trabalhar no linux. Ele ficou melhor ultimamente (com algumas distros que compõem o que eu só acho que é a maioria das caixas de linux por aí), mas ainda é uma bagunça. Para um ótimo exemplo do que quero dizer, consulte este post-mortem da porta Osmos do Linux , especificamente a seção "Não amei". Em suma, esse artigo reclama sobre:
O que você quer dizer com muito lento? Eu não acho que o gamedev para linux seja mais lento do que para outros sistemas operacionais. Se você quis perguntar por que não existem jogos comerciais desenvolvidos para linux, acho que é principalmente porque o mercado é muito pequeno. Havia uma empresa que começou a portar jogos comerciais do Windows para o linux, mas eles fecharam porque não tiveram sucesso em vender esses jogos. Além disso, se você deseja desenvolver um jogo para Linux, ainda precisa fornecê-lo para Windows, se quiser ganhar dinheiro suficiente, no entanto, desenvolvê-lo de maneira multiplataforma é ainda mais caro e o mercado Linux provavelmente não vale a pena. isto. Então, eu diria que não é econômico.
Uma razão pela qual acho que o Linux não recebe tanta atenção é simplesmente que a maioria das pessoas que executa o Linux também pode optar por executar o Windows por meio de uma configuração de inicialização dupla para executar jogos. Isso também afeta os usuários de Mac também, em certa medida, mas devido à composição menos técnica da base de usuários (sem dizer isso como um pouco para os usuários de Mac - é mais que os usuários de Linux tendem a ser o tipo de pessoa que não o faz). Lembre-se de executar todo tipo de tarefas técnicas misteriosas para que algo funcione), há menos pessoas dispostas a instalar o Windows em sua máquina.
Intimamente relacionado é que qualquer pessoa interessada em jogos para PC provavelmente comprará um PC com Windows. Como eles já possuem uma máquina Windows, eles não exigirão versões nativas de Linux ou Mac.
Eu também acho que há simplesmente poder em números. Há muito mais usuários do Windows que usuários do Linux e, portanto, mais saída no Windows. Além disso, o nível de entrada é muito mais baixo com ferramentas visuais versus ferramentas de linha de comando (embora isso tenha mudado com o tempo). Muitas crianças também conseguiram mexer no PC antigo de seus pais, o que, estatisticamente, era mais provável que fosse um PC com Windows do que uma caixa Linux.
O usuário comum do jogo não é um usuário Linux. Portanto, o mercado não existe e não é prudente gastar dinheiro tentando se concentrar nesse mercado.
Eu sei que a id Software tenta lançar um cliente linux de seus jogos, apenas porque eles são incríveis e adoram a plataforma.
Não devemos esquecer que a maioria dos mecanismos de jogos comerciais está ligada e / ou tem um conjunto de ferramentas diretamente enraizado nos consoles win32 /. Essa também é a razão pela qual muitos jogos ainda usam o BSP, por exemplo. Como eles fizeram um grande investimento, não correram um risco enorme por um mercado menor. Pode mudar no futuro, mas agora você precisa investir muito esforço para se tornar multiplataforma.
Como o Steam apareceu no Mac, o que é realmente uma excelente notícia, suspeito que será apenas uma questão de tempo até aparecer no Linux. Um Mac está executando um sistema operacional semelhante ao Unix, portanto, não deve haver muitos problemas para transferir os jogos.
Pelo menos podemos ter esperança. :)
Outra questão importante que você deve levar em consideração ao desenvolver para o Linux é como instalar o seu jogo. Não há mecanismo de instalação padrão que funcione sem problemas nas distribuições. Existem sistemas de gerenciamento de pacotes que facilitam sua vida, embora nem todas as distros usem os mesmos formatos. Os dois formatos de empacotamento mais comuns provavelmente seriam .deb (usado pelas distribuições baseadas no debian) e .rpm (usado pelas distribuições baseadas no redhat). Você pode perder muito tempo ajustando o pacote do seu aplicativo para várias distribuições, embora, se você optar por não fornecer o jogo em um formato de pacote escolhido para distros, corra o risco de alienar a base de usuários.
Gostaria de saber se o mercado é tão pequeno quanto as pessoas dizem. Quero dizer, conheço várias pessoas que usam o Linux como sistema operacional do dia a dia que mantêm uma partição livre para uma instalação do Windows para jogar seus jogos. (Eu faço o mesmo) A única razão pela qual temos o Windows instalado é por causa dos desenvolvedores de software. Se eles mudarem de posição e suportarem o Linux, estou certo de que a taxa de adoção aumentaria. Mas nada mudará a menos que alguém dê o salto primeiro (entre na válvula).
Pessoalmente, resolvi muitos problemas do Linux usando o Wine, mas ainda tinha problemas para encontrar uma solução de instalação padronizada que funcionasse para todos.