Passar para o conteúdo principal

Oddworld vs. PlayStation Vita

A história dos bastidores sobre como é trabalhar com a poderosa portátil Sony.

No Digital Foundry, somos oficialmente bem parciais à PlayStation Vita e apesar de termos olhado para grandes jogos como Uncharted: Golden Abyss e WipEout 2048, as oportunidades para artigos tem sido limitadas - algo que sabemos e queremos corrigir numa série de futuros artigos que aprofundam a personalidade e capacidades da consola.

A primeira paragem é Just Add Water e Oddworld Inhabitants, que recentemente lançaram uma versão Vita completa do remake Stranger's Wrath, a versão original PS3 obteve um impressionante 9/10 na Eurogamer. É um interessante por inicial: não é segredo que a portátil Sony não tem algum grau de poder comparada com consolas atuais, e alguns podem dizer que ocupa uma espécie de meio termo entre as capacidades da PS2 e PS3. Com isso em mente, uma versão visualmente melhorada de um jogo da geração anterior parece um encaixe ideal para a Vita e um bom ponto para começar a nova visita à consola.

Nesta entrevista de programador centrada na tecnologia, os criadores falam sobre o processo de desenvolver na Vita, revelando novos detalhes sobre como a consola é usada para alguns dos truques para espremer mas performance do chipset móvel. Para apoiar o artigo está outra estreia - os artigos DF precisam de imensos vídeos para julgar aspetos tais como funcionalidades gráficas e performance e, graças a equipamento personalizado, podemos finalmente adquirir visuais Vita em feed direto para tu veres e partilhares.

Mas primeiro, passamos para o programador da Just Add Water, Peter Memmott, e diretor de desenvolvimento de Oddworld e CEO da JAW, Stewart Gilray, para ter uma ideia do que acontece mesmo quando uma nova peça de tecnologia de jogos chega até nós...

Digital FoundryNovo equipamento chega com ferramentas e documentos. Então como avalias as capacidades da plataforma tão diferente e única como a Vita?
Peter Memmott

Um bom começo é com os próprios documentos e também com os muitos códigos de amostra providenciados. Estes dão-te pistas sobre o que o equipamento pode ser capaz e se vai cumprir com as exigências do teu projecto. Uma preocupação nossa no início foi como poderíamos usar completamente o processador quad-core. Para nós esta foi uma das chaves para desbloquear todas as capacidades da Vita.

Digital FoundryO Criterion Games disse-nos que as ferramentas de desenvolvimento para a Vita são de um mundo diferente comparadas com as de outras consolas nas quais trabalhara - presumimos com todas. Qual a sua avaliação das ofertas Sony a este respeito?
Peter Memmott

Concordo com isso no geral. Penso que a única real similaridade com a PS3 são as livrarias online, de resto é tudo novo. Isto não é necessariamente uma coisa má pois precisas aproximar-te o máximo à consola e isto acaba por significar que tens que colaborar com diferenças significantes ao desenvolver entre plataformas diferentes.

Digital FoundryEm termos tecnológicos, quais são os principais desafios em levar um jogo PS3 para a Vita?
Peter Memmott

Certamente uma das maiores forças é ter um processador quad-core com real multi-processamento por equipamento, ao invés da mais limitada performance do hyper-threading. Com um pouco de trabalho podes mesmo espremer muito poder deste processador. Suponho que também podes considerar isto uma fraqueza em algumas formas porque é difícil usar o processador no seu máximo a todo o tempo, mas no geral é uma grande vantagem. Obviamente não existem SPUs na Vita comparado com a PS3, mas penso que o processador multi-core vai longe para abordar isto.

Digital FoundryTendo em conta que estás a correr um jogo de geração anterior com melhorias visuais de atual geração, não faz isto da Vita um bom par para Stranger's Wrath HD?
Peter Memmott

Absolutamente, o alcance do jogo e os requisitos técnicos acabaram por ser um par ideal para a Vita. E a julgar por algumas das análises que tivemos, e dos jogadores, é o tipo de jogo que corre bem nesta portátil em particular.

Digital FoundryTemos a situação bizarra da Vita correr remasterizações HD de Metal Gear a resoluções sub-nativas na Vita - a maioria do aumento na qualidade de imagem vem de uma passagem para leitura progressiva, não de um aumento na resolução. Pode dar-nos uma perspetiva sobre os desafios de operar em resolução completa na Vita?
Peter Memmott

Sim, Stranger's Wrath corre numa resolução completa a 960x544. O ecrã da Vita é vibrante e espantoso e seria pena não ser usado no seu potencial total. Após transportar SW consigo compreender porquê, no início do projeto, podes pensar no compromisso de uma resolução inferior para te dar um rácio de fotogramas decente. Esta foi a nossa abordagem na primeira metade do projeto. Apenas após um intenso período de optimização compreendemos que conseguíamos correr na resolução nativa e ter também um rácio de fotogramas decente.

Para correr em resolução completa deveu-se mesmo à taxa de preenchimento e fazer as mudanças necessárias para assegurar que a GPU não é sobrecarregada em qualquer parte do fotograma. Um dos maiores problemas foi ter muitas passagens de ecrã completo durante cada fotograma para vários efeitos. Existe uma sobrecarga extra para cada um destes passos porque uma nova cena precisa ser começada para cada um, portanto é uma boa ideia reduzir o número de cenas ou mudar a ordem da cena para combinar cenas que se geram no mesmo buffer. Jogando com a ordem de chamada dentro de cada cena também leva a alguma melhoria devido à forma como o sistema implementa rendering diferido de tecelagem. Outro grande ganho veio com o efeito de brilho onde combinamos várias passagens de blur numa única passagem e compensado com a mudança de padrão de amostras de texturas.

Algumas das melhorias mais óbvias que podem facilmente passar despercebidas incluem: usar as opções CG corretas para compilar optimizações, passar para modo de consumo alternativo durante jogo a solo para aumentar a velocidade de relógio da GPU, e reduzir a resolução das sombras, reflexos e outros buffers de efeitos.

Digital FoundryQual foi a vossa abordagem a funcionalidades específicas da Vita?
Peter Memmott

Bem, queríamos usar os novos painéis traseiros para começar, portanto criamos vários usos para eles. Houve um pouco de tentativa e erro envolvido para ver o que funciona ou não. Quando o jogo foi lançado penso que houve um descuido da nossa parte com o botão de soco atribuído ao painel traseiro. Isto foi apontado nalgumas análises e é algo que agora corrigimos na futura atualização. Limitamos agora a área ativa do painel tátil traseiro e isto foi uma imensa melhoria pois agora é bem difícil pressionar acidentalmente. A atualização também inclui um esquema de controlo alternativo para evitar isto completamente caso o jogador deseje. Também usamos o painel tátil traseiro para outros usos específicos tais como subir ou descer cordas, e remar quando Stranger controla um barco.

Como existem tantas configurações possíveis para o uso do painel tátil é algo que precisas abordar bem cedo no projeto caso contrário pode apanhar-te desprevenido mais tarde.

Digital FoundryA omissão de Cross Save surpreendeu muitos. É verdade que existe um limite de 1MB nos dados de jogo? Porque são os de Stranger maiores?
Stewart Gilray

Bem, o Cross Save usa na verdade o sistema TUS (Title User Storage) para facilitar a transferência - isso está limitado a 1MB, algo que sabíamos quando criamos o sistema User Generated Content system em Gravity Crash PS3. Então para esclarecer não existe esquema dedicado de Cross Save, é parte de um sistema existente. Em Stranger, os saves podem ter 5MB, e o jogo guarda muita informação pois podes guardar em qualquer ponto do jogo, portanto se tiveres completado três quatros de um nível podes ter uma centena de "tiros" gastos no nível, as posições de todos são guardadas, e isto aumenta o tamanho do save.

Digital FoundryDecidiram que a melhor rota para levar Stranger para a PS3 seria usar a livraria PSGL - uma API de estilo OpenGL desenhada para a PS3 o relativo mais próximo que tens da versão PC. Ainda está disponível para a Vita? Pode falar-nos sobre o processo de levar o jogo da PS3 para a portátil?
Peter Memmott

Bem, não havia livraria PSGL para a Vita na altura do desenvolvimento portanto a tarefa de transportar o jogo foi um grande desafio. A nossa abordagem foi emular tanto do sistema quanto possível. A maioria do código do jogo já tinha uma década e tentar modificar coisas a nível alto poderia ter-nos dado muitos problemas mais tarde. E sendo apenas eu a trabalhar no código isto podia ter acabo por ser um trabalho demasiado grande.

Ao invés disso eu basicamente emulei tanto do sistema existente e chamadas de rendering quanto possível. Penso, relembrando, que esta acabou pro ser a melhor abordagem porque nos permitiu muito rapidamente por o jogo a correr na Vita num pequeno espaço de tempo. Obviamente existem problemas na performance com a emulação básica mas assim que o jogo estava a correr devidamente e sem erros gráficos eu podia então usar as ferramentas de perfil de programação que vem com o kit para procurar optimizações onde eram definitivamente necessárias. E através de uma longa série de percursos de optimização conseguimos a performance que precisamos com impacto mínimo no código base original, que também significou passar menos tempo em testes.

Digital FoundryVemos muitos jogos a inferiorizar elementos na transição da PS3 para a Vita - as mais perceptíveis diferenças no vosso jogo são anti-aliasing e rácio de fotogramas. Quais foram as limitações com que tiveram que trabalhar e o quão aproximado está o produto do jogo PS3?
Peter Memmott

Fora as que mencionaste a outra principal diferença é a redução do tamanho de texturas, apesar deste ser aceitável devido a resolução mais pequena do aparelho. Também cortamos para metade a densidade dos decoradores do mundo. Primeiro ficamos preocupados que isto afetasse a riqueza dos ambientes, mas no final mal se nota durante o correr do jogo que fizemos esta alteração. Penso que isto se deve simplesmente ao ecrã mais pequeno e que podes te podes safar sem ter que o preencher com muitos objetos.

Fora os tamanhos de textura mais pequenos e alguma simplificação de um par de modelos de personagens, o produto final é essencialmente o jogo PS3.

Digital FoundryQual foi o maior desafio que tiveram que ultrapassar?
Peter Memmott

Sem dúvida o maior desafio foi ter o jogo a correr na resolução nativa. Na verdade só a meio do projecto pensamos que seria possível. Até aquele ponto estávamos a procurar correr numa resolução inferior para alcançarmos os 30FPS. Mas como o passar por uma série de optimizações e alguma incalculável ajuda da Sony no local eventualmente conseguimos resolução complete e nalgumas áreas do jogo estamos perto dos 50FPS, o que foi uma surpresa boa.

Digital FoundryQual foi o vosso processo para optimizar a performance na portátil?
Peter Memmott

Felizmente a Sony providencia excelentes ferramentas de criação de perfil com os kits de desenvolvimento. Sem estas de forma alguma teríamos chegado à qualidade final que tivemos na mesma quantidade de tempo. Eles realmente foram incalculáveis. Não vale a pena tentar adivinhar quais as mudanças que vão dar uma boa optimização. Em várias ocasiões o que pensei que seria uma boa optimização acabou por não ser e nalguns casos foram prejudiciais. Então acabei por confiar nas ferramentas de perfil para ter os maiores ganhos.

Após a optimização dos gráficos o jogo tornou-se orientado para o CPU. Novamente as ferramentas de perfil foram excelentes para analisar o código de jogo e um dos maiores ganhos que tivemos foi mover todas as chamadas de rendering para um tópico separado. Notamos no criador de perfis que uma quantidade considerável de tempo era para as chamadas de distância. Parte da razão disto era que não estávamos a usar objetos pré-computados e portanto passar os dados em bruto para cada chamada era bem dispendioso. Ao passar isto para uma tópico em separado e por a correr noutro núcleo tivemos uma utilização muito melhor do CPU com um grande ganho na performance. Sem fazer isto não penso que conseguiríamos correr na resolução nativa.

Também tivemos excelente ajuda da Sony no local. Tivemos um dos seus melhores tipos por um dia e deram-nos muitos conselhos e dicas de optimização. Admitimos que uma das maiores melhorias desse dia veio do uso do modo de consumo alternativo na Vita que te permite aumentar a velocidade de relógio da GPU enquanto desativa o WiFi durante o jogo. Mas, claro, isto apenas realça a grande importância de ler os manuais.

Digital FoundryQuais as principais lições de desenvolvimento que aprenderam ao completar o vosso primeiro projeto Vita?
Stewart Gilray

Não sei se é uma grande lição de desenvolvimento, mais um caso de compreender que podes fazer muito com um pouco de paciência. Estamos incrivelmente orgulhosos de Stranger na Vita, especialmente com o tempo e poder humano nele, portanto aquela pequena máquina é uma besta de pode provavelmente fazer muito, muito mais.

Digital FoundryA nível mais geral, estão empenhados em introduzir novas funcionalidades no jogo PS3 (e até na versão Vita) numa série de atualizações. A maioria dos programadores simplesmente corrige erros. Qual o vosso pensamento sobre este nível de serviço aos fãs e recompensa de uma perspetiva empresarial?
Stewart Gilray

É um serviço aos fãs e uma experiência. Stranger's Wrath HD é o primeiro título Oddworld com tabelas de pontuações, portanto queríamos testar com um título existente. Então adicionamos isso à versão Vita no final do desenvolvimento do projeto, mas foram retidas devido a problemas técnicos. Também enfrentamos uma necessidade de reduzir o tamanho da versão PS3 de 3.2GB para algo mais maneável, como tal reduzimos para perto de 1.5GB, então decidimos usar essa oportunidade para inserir as tabelas de pontuações também na PS3. Procuramos lançar isso em Março deste ano.

De uma perspetiva empresarial vai ser interessante ver quantas pessoas vão voltar a jogar partes do jogo para melhorar as suas posições assim como ver quantas pessoas vão comprar o jogo agora porque adicionamos tabelas de pontuações. É sobre o empenho da comunidade até certo nível e permitir que a nossa comunidade faça todo um "Acabei de bater-te em". Vai ser interessante.

Digital FoundryEstão contentes com o jogo agora ou vão continuar a mexer nele?
Stewart Gilray

Não, penso que podemos dizer que terminamos com Oddworld: Stranger's Wrath HD - isso inclui a possibilidade de uma versão Xbox 360, sobre a qual ouvimos que a Microsoft não vai tocar no título, a não ser que façamos uma sequela direta.

Digital FoundrySão um pequeno estúdio comparado com as gigantes equipas dos AAA, portanto os recursos certamente são limitados. Ao mesmo tempo estão a trabalhar em novos jogos que são muito mais ambiciosos - como equilibram a carga de trabalho internamente entre projetos novos e velhos?
Stewart Gilray

Acertas na cabeça do prego na verdade. Quando estas instalações a SW estiverem completas então toda a companhia vai estar em Abe's Oddysee New 'n' Tasty. Somos agora 15 fortes em adição a alguns dos originais da equipa original Oddworld Inhabitants que regressaram, algo do qual nos orgulhamos. Penso que esse projeto tem cerca de 22 pessoas agora, portanto crescemos, os nossos orçamentos cresceram e esperamos que os indies comecem a encurtar essa diferença entre a tradicional definição de "indie" e projectos "AAA", especialmente nesta era da distribuição digital.

Digital FoundryAs fortunas variáveis da Vita são bem documentadas - portanto continuam empenhados na plataforma? De uma perspetiva empresarial, é viável?
Stewart Gilray

Mesmo, não foram tempos fáceis. No entanto, do nosso ponto de vista estivemos fantásticos, fomos o título mais comprado na região SCEE em Dezembro e Janeiro, e o terceiro melhor na região SCEA, e continua com boa prestação em ambos. Temos mais dois títulos em desenvolvimento para a Vita que já anunciados e outro que não por isso tudo corre bem e vamos continuar a apoiar a plataforma até não mais fazer sentido.

Lê também