2

故事:

我一直在谷歌上搜索使用视频卡加速(无软件渲染)在网络上显示计算机图形的某种方式。我知道可以为IE编写 activeX 模块,但这不是一个完整的解决方案,因为它会吸引大量用户(firefox + macOS 粉丝)。这是我所想的更多的例子:

浏览器链接顶部的硬件加速示例


查询:

我最近发现您可以使用JOGL从浏览器将 opengl 调用与 java 绑定。所以我想知道一些事情:

A) JOGL是我故事的最佳解决方案吗?

B)我可以从 JOGL 查询 opengl 扩展吗?

C)我如何从 JOGL 加载纹理?


评论:

如果您在浏览器中使用过 JOGL,请告诉我您从中遇到的问题/经验。

4

7 回答 7

3

我在一个主要的桌面应用程序上使用了 JOGL,它是成功的。它基本上和 OpenGL 一样快。我不能通过网络谈论任何事情——我怀疑你最好的选择是使用 WebStart 编写一个 JOGL 小程序。查看一些 JOGL 示例。

JOGl 是 OpenGL 上的一个非常薄的包装器。如果您了解 OpenGL,则可以使用 JOGL。如果你不了解 OpenGL,学习 JOGl 和学习 OpenGL 是一样的(不是一件容易的事)。几乎所有你可以在 OpenGL 中做的事情都可以在 JOGL 中做。

我们在 Linux 上遇到了硬件加速问题(谁没有),并且一些 Linux 配置会使我们的 JOGL 应用程序崩溃(不一定是其他应用程序)。这是一个已知问题,无论您做什么,都可能在 Linux 上遇到 3D 问题。

我还知道其他人在桌面上成功使用了 JME 和 LWJGL。

于 2008-12-05T22:07:02.757 回答
2

您在问题中没有提到“小程序”。尝试搜索“jogl applet”或“lwjgl applet”。我对 LWJGL 比 JOGL 更满意,但它们都应该满足您的需求。您可能还对 Java Web Start 感兴趣。尝试使用LWJGL的 Java Web Start 和基于 Applet 的示例的演示,以及JOGL小程序的演示。

于 2008-10-30T16:08:41.180 回答
1

让我担心的是,这个论坛不被 Jogl 程序员使用。NASA WorldWind 中有一个庞大而活跃的 Jogl 社区 - 一个非常简洁的基于 JOGL 的应用程序。已经有许多衍生品和定制,包括 JOGL 中的整个虚拟斯洛文尼亚。

于 2009-09-22T06:38:06.157 回答
0

我已经将 JOGL 用于带有 GLUT 工具包的桌面应用程序,并且效果很好(我还在 C/C++ 和 Python 中使用了 OpenGL 绑定)我无法评论在小程序中运行 JOGL 应用程序...

当您询问如何查询 OpenGL 扩展时,我不确定您的意思,JOGL 只是 Java API 中的 OpenGL 绑定,因此任何 OpenGL 知识都将映射到 JOGL。如果您没有使用过 OpenGL 绑定,那么我建议您阅读红皮书:http ://www.opengl.org/documentation/red_book/

于 2008-10-30T15:59:55.127 回答
0

A)我相信 Java3D 可以在可用的情况下使用 DirectX 或 OpenGL/JOGL,或者回退到软件渲染。它提供了一个面向场景图的 API,有时更容易编程。

BC) JOGL 是一个非常薄但功能齐全的 OpenGL 及其扩展包装器。(几乎)你可以用 C/C++ 中的 OpenGL 做的所有事情,你可以用 JOGL 以完全相同的方式做。

于 2008-10-30T16:41:26.307 回答
0

您可以在Parleys上观看有关使用 Java 中的 openGL 的有趣演示。

演讲题目是“高性能 Java3D 和 2D 图形应用程序”

于 2008-11-27T08:25:54.850 回答
0

A) 是 B) 是的,使用 GLBase.isExtensionAvailable() 和 GLBase.isFunctionAvailable() C) 使用类 Texture 和 TextureIO。您可以在这里找到新鲜的小程序演示。

请不要使用 Java3D,它已经过时并且不再积极维护。Ardor3D 有一个出色的 JOGL 2.0 渲染器(我写的 ;))。JMonkeyEngine 2 支持 JOGL 1.1.1a,如 Xith3D 和 3DzzD。

编辑:在写这篇评论几年后,我在 Harvey 的帮助下复活了 Java3D,如果你仍然想使用它,请查看我的教程。

于 2011-10-19T21:32:41.333 回答