na minha empresa, temos usado óculos estereoscópicos por anos junto com telas crt rápidas capazes de lidar com taxas de atualização verticais > 120Hz. Ultimamente está ficando extremamente difícil encontrar esses monitores, então decidimos experimentar um dos novos LCDs que suportam 120Hz de atualização e, como prometido no site da nVidia, suportam a visão 3D. Nós temos um Samsung 2233RZ. A forma como obtemos estéreo está exibindo alternadas imagens esquerda e direita a 120Hz (usando DirectX), com obturadores alternando abrir / fechar para o olho correspondente (enviando disparador sincronizado com DirectX), para que a imagem real seja percebida em 3D a 60Hz. Este sistema funciona, sem dúvida.
Não tem sorte, no entanto, usar a tela + nossas persianas como não funcionou:
- os pixels em um lcd estão no estado ligado durante a duração de um quadro (8mSec)
- há um atraso de cerca de metade de um quadro antes que o quadro enviado pelo computador seja realmente desenhado na tela
- em outras palavras, enquanto o obturador está aberto (também 8mSec), o olho vê metade da esquerda e metade da imagem certa
Corrigimos isso com algum hardware que compensa o atraso e encurta o período em que os obturadores estão abertos. Até aí tudo bem: a percepção 3D foi muito boa, mas apenas para pequenas imagens no meio da tela.
Mais algumas medições revelaram algo muito surpreendente para nós: o 2233RZ não mostra o quadro inteiro de uma só vez (o que esperávamos de uma tela LCD: qualquer LCD que temos aqui, também projetores DLP, tudo isso), mas escreve linha por linha, assim como faria uma crt. Portanto, não há nenhuma maneira para que o estéreo funcione corretamente com os obturadores, porque há um atraso de 8mSec entre o pixel superior esquerdo sendo ativado e o pixel inferior direito com um. Além disso, quando a parte inferior direita está ativada, a parte superior esquerda já está desativada.
A pergunta é: como a nVidia faz isso, e podemos fazer isso? Os óculos do kit de visão 3D usam o mesmo princípio que o nosso, então deve estar na tela / placa de vídeo, não? Como eles forçam a tela a mostrar o quadro inteiro de uma só vez, para que todos os pixels entrem e saiam ao mesmo tempo? Isso é algo que pode ser definido em software? Ou isso só pode ser feito ao usar uma das placas GeForce listadas como compatíveis para uso com o kit 3D (testamos com a Quadro 570, usando cabo de link duplo)? Se assim for, é um protocolo sobre DVI que é como 'ei, eu sou uma GeForce, você é uma tela de 120Hz, você pode mostrar um quadro em 8mSec para que possamos fazer algumas coisas em estéreo?' e a tela responde "sim, eu posso fazer isso" ou "não, não posso, porque você é uma Quadro"?
edit: acabou de descobrir que há também um '3D Vision Pro' que pertence ao site suporta o Quadro FX570. Maior diferença que os óculos usam um RF em vez de um emissor infravermelho. Mas isso significaria que o computador que usamos atende aos requisitos de visão 3D.
Portanto, a questão importante 'real' é (graças ao MBraedley): como eu digo ao cartão e à tela para irem no modo 3D, para que a tela atualize todos os pixels de uma só vez?
edit2: na nVidia cpl, eu configuro as configurações 3D. Agora, ao usar o StereoView, listado em aplicativos compatíveis, o aplicativo realmente informa 'buffer estéreo' disponível para que tudo pareça configurado corretamente. No entanto, o problema permanece: dependendo da quantidade de atraso ajustado nos óculos, há crosstalk ('fantasma') na parte superior, no centro ou na parte inferior da tela.
UPDATE
depois de muitos e-mails com a nVidia, e eles basicamente alegando que o sistema funcionaria melhor que o nosso, mas eles não podem nos dizer por que, porque é sua propriedade intelectual etc., decidimos comprar o kit 3D de qualquer maneira.
Depois de algumas medições, fica bem claro: elas usam exatamente o mesmo princípio que já fazemos por 10 anos. Eles não usam truques especiais, e o 3D Vision é muito pior do que o nosso sistema. Apenas duas diferenças:
- software: eles têm alguns métodos de API que você pode dar duas imagens duas, e eles são exibidos automaticamente intercalados. Fazemos isso 'manualmente' enviando um quadro após o outro para a placa de vídeo.
- hardware: seus óculos são muito ruins em comparação com o que usamos. O efeito fantasma é realmente terrível com os óculos da nVidia, e é visível de cima a baixo: o estado 'fechado' do vidro está muito longe de estar fechado. Uma coisa a ser observada aqui: trata-se de fantasmas medidos usando um osciloscópio. Ao visualizar uma cena real com muitos detalhes e sem grande contraste (normalmente para jogos), o efeito fantasma é praticamente invisível aos olhos.