是否可以在 Nvidia 3D Vision 硬件上运行 Java3D 应用程序?

发布于 2024-11-29 05:18:23 字数 483 浏览 2 评论 0原文

是否可以在 Nvidia 3D Vision 硬件上运行 Java3D 应用程序?

我有一个可以在立体 3D 中运行的现有 Java3D 应用程序。过去,我总是使用 OpenGL 渲染器和四缓冲立体在 Quadro 卡上运行应用程序。

我现在可以使用配备 nVidia 3D Vision 系统(配备 GeForce GTX 460M)的笔记本电脑。从文档来看,如果我使用 DirectX 绑定并让 nVidia 驱动程序处理立体声,似乎应该可以在立体声中运行我的应用程序,但是,情况似乎并非如此。

如果我使用 j3d.rend=d3d 运行 Java3D 应用程序,nVidia 3D Vision API 似乎不会将其识别为 DirectX 应用程序。

如何让 nVidia 3D Vision 驱动程序检测 Java3D 应用程序并以立体 3D 进行渲染?

Is is possible to run a Java3D application on Nvidia 3D Vision hardware?

I've got an existing Java3D application that can run in stereoscopic 3D. In the past, I've always run the application on Quadro cards using the OpenGL renderer and quad buffered stereo.

I now have access to a laptop with the nVidia 3D Vision system (with a GeForce GTX 460M). From the documentation, it seems like it should be possible to run my application in stereo if I use the DirectX bindings and let the nVidia drivers take care of the stereo, however, this does not seem to be the case.

If I run a Java3D application with j3d.rend=d3d, the nVidia 3D Vision API doesn't seem to recognize it as a DirectX application.

How can I get the nVidia 3D Vision drivers to detect a Java3D application and render in stereoscopic 3D?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

因为看清所以看轻 2024-12-06 05:18:23

我很失望的是,到目前为止,每个人都认为这是不可能的。这几天我一直在研究这个问题,并取得了一些进展。到目前为止,我发现这是可能的,但有一些警告:

  1. 您需要 nVidia 的最新驱动程序(撰写本文时为 280.29)
  2. 您需要使用 Direct3D 渲染器,而不是 OpenGL 渲染器(-Dj3d.rend= d3d)
  3. 您需要强制 Direct3D 以全屏模式运行。 (-Dj3d.fullscreen=REQUIRED)
  4. 您需要在全屏模式下使用ConfiguredUniverse运行(我正在使用Java3D文档中提供的j3d-1x1.cfg)

才能使其在64位计算机上运行,我必须使用 Java3D 的 64 位 dll,有人在 Java3D 论坛上提供了有用的信息(http://home.java.net/node/705510) 这可能需要也可能不需要32位系统。

nVidia 驱动程序的未来版本承诺改进对窗口模式立体声的支持,因此将来这可能会变得更容易(可能消除上面的选项 3 和/或 4 的需要)

我还将调查是否重建 Java3D 源使用一些额外的 nVidia 绑定可以消除全屏要求,并重新发布结果。

I'm disappointed that so far everyone has dismissed this as impossible right out of the gate. I've been working on this for the past several days, and made some headway. So far, I've found that it is possible, but with a few caveats:

  1. You need the latest drivers from nVidia (280.29 as of this writing)
  2. You need to use the Direct3D renderer, not the OpenGL renderer (-Dj3d.rend=d3d)
  3. You need to force Direct3D to run in fullscreen mode. (-Dj3d.fullscreen=REQUIRED)
  4. You need to run using a ConfiguredUniverse in fullscreen mode (I'm using the provided j3d-1x1.cfg that is available in the Java3D documentation)

In order to get it working on a 64-bit machine, I had to use the 64-bit dlls for Java3D, which someone has helpfully provided on the Java3D forums (http://home.java.net/node/705510) This may or may not be required on a 32-bit system.

Future releases of the nVidia drivers promise improved support for windowed-mode stereo, so its possible that this will become easier in the future (possibly eliminating the need for option 3 and/or 4 above)

I'll also investigate if rebuilding the Java3D source with some additional nVidia bindings can eliminate the fullscreen requirement, and repost with the results.

梦冥 2024-12-06 05:18:23

Java3D 使用一种称为“Quadbuffer Stereo”的东西,即两个不同的双缓冲帧缓冲区,一个用于左眼,一个用于右眼。 NVidia 认为这个东西是“专业级的”,尽管如果没有精确控制双眼的内容就不可能进行适当的立体视觉。

然而,3D Vision 会插入一些着色器来创建原位立体分离。然而,这只适用于通过 3D Vision API 给出一些提示的程序。 Java3D 没有。

我们只是希望微软确实将四缓冲立体作为 DirectX 12 Graphics 的核心要求,这样 NVidia 就不再有蹩脚的借口来阻止它远离“消费级”OpenGL。

Java3D uses something called "Quadbuffer Stereo", i.e. two distinct doublebuffered framebuffers, one for the left and one for the right eye. NVidia considers this thing "professional grade", although it is impossible to to proper stereoscopy without accurate control of the content of both eyes.

3D Vision however inserts some shaders to create an in-situ stereo separation. This however only works with programs giving it some hints through the 3D Vision API. Java3D doesn't.

Let's just hope that Microsoft will indeed push Quadbuffered Stereo as a core requirement of DirectX 12 Graphics, so that NVidia has no longer lame excuses to keep this from "consumer grade" OpenGL.

蓝咒 2024-12-06 05:18:23

java3D 不支持 3d 视觉 API,但它可以与任何直接 x 程序一起使用

java3D does not support the 3d vision api but it may work with any direct x program

土豪我们做朋友吧 2024-12-06 05:18:23

这可能已经过时了,但我有 Java3D 64 的二进制 DirectX 库。它是 j3dcore-d3d.dll 。
如果有人需要,请给我留言。

来自 readme.txt 文件:

======

README

Java3D DirectX 9.0 Renderer for 64bits

一月,2010

Hi

配套的 j3dcore-d3d.dll 是一个 Java3D 渲染器
适用于 64 位 Microsoft DirectX D3D。这正是使用
相同的 32 位源代码,但使用 Visual 编译
适用于 Windows 64 位的 studio 2005。

它已在 Windows XP Pro 上进行了测试。 64位版本,
Vista 64 和 Windows-7 64。在 nVidia 和 ATI 驱动程序中。

用法

将 j3dcore-d3d.dll 放入包含 j3dcore-ogl.dll 的同一文件夹中。

依赖性

将其与 64 位 JRE 一起使用。
它需要适用于 Windows AMD 64 的 Java3D,可从以下位置获取
https://java3d.dev.java.net/binary-builds.html

它还需要 DirectX 驱动程序更新
你可以从 http:\www.microsoft.com\directx 获取它
DirectX Web 设置的当前完整链接:
http://www.microsoft.com/downloads/details.aspx ?familyid=2DA43D38-DB71-4...

最后一个链接指向一个非常小的 DirectX 运行时 Web 更新程序。

免责声明

这仅用于测试目的。使用它的风险由您自行承担。
Sun、Oracle 或任何其他公司均未认可或支持此内容。

This is may outdated, but I have the binary DirectX libs for Java3D 64. It is the j3dcore-d3d.dll .
If someone needs it, send a message to me.

From readme.txt file :

======

README

Java3D DirectX 9.0 Renderer for 64bits

January, 2010

Hi

The companion j3dcore-d3d.dll is a Java3D renderer
for Microsoft DirectX D3D in 64bit. This uses exactly
same source code from 32bits, but compiled with Visual
studio 2005 for Windows 64bits.

It was tested with Windows XP Pro. 64bit Edition,
Vista 64 and Windows-7 64. In both nVidia and ATI drivers.

Usage

Drop the j3dcore-d3d.dll in the same folder you have j3dcore-ogl.dll.

Dependency

Use it with a 64bit JRE.
It requires Java3D for Windows AMD 64, available at
https://java3d.dev.java.net/binary-builds.html

It also needs a DirectX driver update
You can get it http:\www.microsoft.com\directx
Current full link for DirectX Web Setup :
http://www.microsoft.com/downloads/details.aspx?familyid=2DA43D38-DB71-4...

This last link points to a very small web updater for DirectX runtime.

Disclaimer

This is for testing purposes only. Use it at your own risk.
This IS NOT endorsed or supported by Sun, Oracle or any other company.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文