"全屏图形"有点模糊.
无论如何,显然正在努力从Java访问framebuffer:Framebuffer Toolkit.
这个项目的目标是生成一个代码体,它是一个基于轻量级帧缓冲的AWT和Swing对等实现.此代码的目标是消除对X或其他图形层的依赖性,以便可以将图形重定向到帧缓冲区(例如,原始缓冲区,VNC等).此示例实现更喜欢纯Java解决方案,公共扩展点可用于根据需要输入本机资源.
请参阅项目提案:fbtoolkit.
其他回答者似乎假设“Java 中的全屏图形”必然意味着“AWT 的工作实现”。当然,这不一定是真的,因为完全有可能(有些人甚至会说是可取的)在没有 AWT 的情况下使用 Java。
Cairo是一个 2D 图形渲染库,可以从 Java 中使用,也可以在没有 X11 的情况下使用。乍一看,似乎应该可以针对这种情况对其进行配置。您需要将其配置为使用 OpenGL 渲染,并提供合适的非 X11 OpenGL 实现(例如,带有“fbdev”设备驱动程序的 MesaGL)。
SDLJava是流行的 C SDL 游戏开发库的 Java 端口。这也应该能够满足您的要求,尽管自 2005 年以来它似乎没有更新,因此如果您有任何问题,可能不会提供支持。
作为替代方案,您始终可以使用一些相当简单的 C 代码来打开和配置帧缓冲区,然后使用 JNI 将内存映射的帧缓冲区作为直接模式 ByteBuffer 返回,以便您可以直接绘制到它。