代码之家  ›  专栏  ›  技术社区  ›  BlueRaja - Danny Pflughoeft

如何在Java Applet中实现3D?

  •  1
  • BlueRaja - Danny Pflughoeft  · 技术社区  · 13 年前

    我想在Java Applet中渲染一个非常简单的3D场景。我可以自己做所有的数学运算,并将其渲染成位图,但我确信我不是历史上第一个需要在屏幕上绘制几个立方体的人,我想知道这通常是怎么做到的。

    我读过的每一个地方都说过Java3D或LWJGL,但我理解这些依赖于平台相关的代码,需要分别从Java安装,使它们都不适合图形。

    那么这通常是怎么做到的呢?

    5 回复  |  直到 11 年前
        1
  •  1
  •   NullNoname    11 年前

    This old page 列出没有硬件依赖性的3D Java小应用程序的演示/应用程序/库。不幸的是,很少有开源软件,还有一些甚至不能下载。

    我个人建议你尝试一下 Java 1.1 3D renderer by Ken Perlin ,它有可用的源代码,并且可以免费用于学术目的。

    编辑 : jGL 是另一个没有硬件依赖性的Java 3D库。它模仿OpenGL 1.*API。它是根据GNU较小的一般公共许可证(LGPL)授权的。

        2
  •  1
  •   Andrew Thompson    13 年前

    在插件2JRE(1.6.0_10+)中,您可以对嵌入的小程序使用JWS扩展。这一点很重要,因为JWS使确保正确的二进制文件位于运行时类路径上变得更加容易。AFAIU JOGL和Java 3D都为它们的API提供JWS扩展。

    如果您选择这样做,请使小程序添加了可拖动参数,这样最终用户可能会选择是否需要一个(主要是无用的)围绕3D动画的浏览器窗口。

        3
  •  1
  •   Inghard Gjovaag    13 年前

    当我需要在小程序中进行一些3D渲染时,我遇到了类似的问题。我的解决方案是简单地在Java中实现一个3D渲染库。令人担心的是,它的性能会很差,但在i5处理器上,事实证明并非如此。另外一个优点是我能够按照我一直希望的图形方式编写库。然而,它的真正优点是,无论客户机上是否需要安装一些图形库,也不管任何图形卡依赖性,它都可以运行。

    我很乐意将此代码的一个子集分享给任何想查看它的人。

        5
  •  0
  •   Jarek    13 年前

    我不是爪哇人,但2/3年前当我在大学的时候,我也遇到了同样的问题: 我试过慢跑…对于像我这样的Java中的NOOB,我发现配置和使用它太复杂了。

    我用的是Java3D,它很有魅力,当时我唯一的问题是Java3D没有使用所有的图形卡。但是,在我的大学里,它与计算机一起工作。