Análise Tecnológica: Kinect
Digital Foundry sobre a latência, sobrecarga do CPU e como funciona.
Contudo, é importante referir que existe uma grande gama de factores que conspiram para fazer com que o Kinect reaja de forma diferente dependendo do jogo a ser jogado. O Nick Burton da Rare, com quem falámos no evento hands-on, foi muito específico em referir que o seu jogo opera com a latência de 150ms, não incluindo a latência do ecrã.
Vimos em testes anteriores da Digital Foundry nos jogos das consolas que os títulos de 30 FPS operam a 100ms no melhor cenário. Enquanto o Kinect Sports consegue correr a 60FPS (certamente que o bowling corre), o scan do Kinect está limitado aos 30FPS, então no melhor dos casos, nunca devemos assumir ver algum tipo de resposta melhor que os 100 ms padrão.
Em cima disso estão outras considerações. Por exemplo, em termos de latência, vai haver um “custo” fixo em adquirir o mapa de profundidade e a informação RGB, e vai haver também uma latência adicional causada pela transferência do USB – vocês acham que estes são os custos fixos base de um sistema em operação. Depois existe o processo de adquirir os dados, e as diferentes configurações das quais as produtoras podem aceder.
Que elementos são estes exactamente e como eles afectam o desempenho? Uma imagem RGB com o mapa de profundidade alinhado (ou registado, como diz a Microsoft) em conjunto com análise de controlo vocal, vai claramente requerer mais trabalho do CPU do que processar os dados do esqueleto e algum reconhecimento gestual.
Isto explica presumidamente a razão porque Burton estava tão interessado em apontar que o seu jogo opera a um nível específico de latência. Até nos nossos próprios testes de latência, podemos ver uma grande variedade da latência do controlador em muitos títulos a correr ao mesmo frame-rate, e podemos imaginar a situação a ser muito pior com o Kinect, definitivamente a curto prazo.
Como apontado no nosso hands-on inicial de ontem e no nosso original Digital Foundry vs. Project Natal da Gamescom, o factor latência parece mais que um problema simplesmente porque estamos habituados a que as nossa acções sejam transmitidas para a consola nos níveis mais altos e rápidos.
As nossas mãos e dedos são capazes de tempos de reacção extremamente rápidos, e enquanto carregar no joypad possa parecer fazer os jogos mais acessíveis, o corpo humano como um todo não consegue reagir tão rápido como os nossos reflexos entre o cérebro e dedos. Isto é razão pela qual os jogos Kinect que, no papel, têm todos a mesma latência geral como alguns jogos tradicionais que utilizam o joypad, sentem-se uma menor resposta.
Levar em conta a latência inerente do movimento do corpo humano é talvez um dos maiores desafios enfrentados pelos produtores do Kinect, e isto é provavelmente capaz de ser mais ou menos um problema, dependendo da pessoa que está a jogar.
Mas quanto será o fardo das bibliotecas NUI no CPU, como são referidas pela Microsoft? Tendo em mente o facto que temos um captor de movimentos excelente a nível de consumidor, e que o chip de processamento no design original do Natal foi removido em favor de um software implementado na própria Xbox 360, podem ser perdoados por pensarem que o desempenho do jogo seria afectado pela carga adicional.
Bem, os rumores iniciais acerca do uso de um núcleo do CPU Xenon estão claramente fora de questão baseado nos jogos que vimos. O Kinect Adventures de Kudo Tsunoda corre com uns visuais bastante atractivos usando o Unreal Engine, que provavelmente não seria de bom agrado correr num CPU aleijado.
Contudo, o melhor exemplo que vimos até agora, foi a demo do Kinect em Forza Motorsport na conferência da Microsoft. Existem poucas dúvidas de que a acção em palco não era scriptada (como no Project Natal Experience na noite anterior), e aqui estamos a ver os mesmos 720p60 que esperaríamos dos excelentes títulos de corrida da Turn 10.
Provavelmente a melhor fonte que temos na actual carga adicional que o Kinect provoca no CPU Xenon vem do artigo do Project Natal na revista Wired de há uns meses. Naquele artigo, Alex Kipman apontou uma carga de 10 a 15 porcento dependendo das tarefas a serem pedidas pelas várias bibliotecas.
Tendo em mente o que o Kinect está a alcançar, isso é uma conquista impressionante. Isto não contradiz totalmente os rumores de “um núcleo” que estavam previamente a circular – pode simplesmente ser o caso de que o Kinect apenas usa uma certa percentagem daquela unidade de processamento única, mais provavelmente espalhada sobre dois segmentos de hardware disponíveis.
Enquanto a demo de Forza sugere que o Kinect possa ser importado para jogos existentes, programar essas significantes bibliotecas NUI numa linha já existente pode ser problemático, especialmente num sistema tão sensível à latência como este.
No regresso do evento hands-on, vê-se claramente que a Microsoft – dependendo do preço do produto final – tem algo de vencedor nas suas mãos, e fiquei agradavelmente surpreendido como a tecnologia de ponta se transformou numa série de jogos que, para a maior parte, vai combinar muito bem com a audiência pretendida.
Estes rapazes e raparigas não estão interessados em coisas como a latência, ou questão se o Kinect vai funcionar bem com os títulos apontados para os hardcore. Para o tipo de público que estava atraído pela Wii, é claro que o Kinect funciona e oferece algo genuinamente novo e excitante.
Mas em que posição isto nos deixa, nós jogadores hardcore? Talvez tenhamos que esperar para ver como aqueles jogos do Star Wars e Forza Motorsport se saem no próximo ano.