Можно ли запускать приложения Java3D на оборудовании Nvidia 3D Vision? - PullRequest
13 голосов
/ 11 августа 2011

Возможно ли запустить приложение Java3D на Nvidia 3D Vision на оборудовании?

У меня есть существующее приложение Java3D, которое может работать в стереоскопическом 3D. Раньше я всегда запускал приложение на картах Quadro, используя рендерер OpenGL и стерео с четырьмя буферами.

Теперь у меня есть доступ к ноутбуку с системой nVidia 3D Vision (с GeForce GTX 460M). Из документации кажется, что мое приложение может работать в стерео, если я использую привязки DirectX и позволяю драйверам nVidia позаботиться о стерео, однако это не так.

Если я запускаю приложение Java3D с j3d.rend = d3d, API nVidia 3D Vision, похоже, не распознает его как приложение DirectX.

Как получить драйверы nVidia 3D Vision для обнаружения приложения Java3D и рендеринга в стереоскопическом 3D?

Ответы [ 4 ]

6 голосов
/ 25 августа 2011

Я разочарован, что до сих пор все отклонили это как невозможное прямо из ворот. Я работал над этим последние несколько дней и добился определенных успехов. До сих пор я обнаружил, что это возможно, но с несколькими оговорками:

  1. Вам нужны последние версии драйверов от nVidia (280.29 на момент написания статьи)
  2. Вам необходимо использовать средство визуализации Direct3D, а не средство визуализации OpenGL (-Dj3d.rend = d3d)
  3. Вам нужно заставить Direct3D работать в полноэкранном режиме. (-Dj3d.fullscreen = ОБЯЗАТЕЛЬНО)
  4. Вам необходимо запустить с использованием ConfiguredUniverse в полноэкранном режиме (я использую предоставленный j3d-1x1.cfg, который доступен в документации по Java3D)

Чтобы заставить его работать на 64-битной машине, мне пришлось использовать 64-битные библиотеки DLL для Java3D, которые кто-то услужливо предоставил на форумах Java3D (http://home.java.net/node/705510) Это может или не может быть требуется в 32-битной системе.

Будущие выпуски драйверов nVidia обещают улучшенную поддержку оконного режима стерео, поэтому возможно, что это станет легче в будущем (возможно, устранение необходимости в опции 3 и / или 4 выше)

Я также выясню, может ли восстановление исходного кода Java3D с некоторыми дополнительными привязками nVidia устранить требование полноэкранного режима и выполнить репост с результатами.

1 голос
/ 11 августа 2011

Java3D использует то, что называется «Quadbuffer Stereo», то есть два отдельных буфера кадров с двойной буферизацией, один для левого и один для правого глаза.NVidia считает это «профессиональным качеством», хотя правильную стереоскопию невозможно провести без точного контроля содержимого обоих глаз.

3D Vision, однако, добавляет некоторые шейдеры для создания стерео разделения на месте.Это, однако, работает только с программами, дающими ему некоторые подсказки через API 3D Vision.Java3D этого не делает.

Будем только надеяться, что Microsoft действительно выдвинет Quadbuffered Stereo в качестве основного требования для графики DirectX 12, так что у NVidia больше нет слабых оправданий, чтобы не допустить этого в OpenGL потребительского уровня.*

0 голосов
/ 17 августа 2015

Это может быть устаревшим, но у меня есть двоичные библиотеки DirectX для Java3D 64. Это j3dcore-d3d.dll. Если кому-то это нужно, отправьте мне сообщение.

Из файла readme.txt:

======

README

Java3D DirectX 9.0 Renderer для 64 бит

Январь, 2010

Привет

Компаньон j3dcore-d3d.dll является средством визуализации Java3D. для Microsoft DirectX D3D в 64 бит. Это использует именно тот же исходный код из 32 бит, но скомпилированный с Visual Студия 2005 для Windows 64bit.

Было протестировано с Windows XP Pro. 64-битная версия, Vista 64 и Windows-7 64. В драйверах nVidia и ATI.

Использование

Удалите j3dcore-d3d.dll в ту же папку, где находится j3dcore-ogl.dll.

Dependency

Используйте его с 64-битной JRE. Требуется Java3D для Windows AMD 64, доступный на https://java3d.dev.java.net/binary-builds.html

Также необходимо обновить драйвер DirectX Вы можете получить его http: \ www.microsoft.com \ directx Текущая полная ссылка для DirectX Web Setup: http://www.microsoft.com/downloads/details.aspx?familyid=2DA43D38-DB71-4...

Эта последняя ссылка указывает на очень маленькое веб-средство обновления для среды выполнения DirectX.

Ответственность

Это только для целей тестирования. Используйте его на свой страх и риск. Это НЕ одобрено или поддерживается Sun, Oracle или любой другой компанией.

0 голосов
/ 25 августа 2011

java3D не поддерживает API 3d vision, но может работать с любой прямой программой x

...