Java 爪哇的格伦?

Java 爪哇的格伦?,java,opengl,jna,Java,Opengl,Jna,我正在使用JNA将opengl32.DLL导入Java,由于GLEnum,我遇到了一个问题。因为我不知道OpenGL的来源,所以我不知道GLEnum是什么。它是枚举、int还是什么?如何在Java中弥补它?正如评论中已经提到的那样,GLEnum是一个int,通常不在“数字形式”中使用,而是在常量上使用。对于每个gl功能,GLEnum都有其他含义 您可以通过分析C/C++或任何其他本地语言OpenGL绑定或阅读OpenGL规范(我想我也看到了十六进制值)来找到数值 说到这里,我强烈建议使用预定义的

我正在使用JNA将
opengl32.DLL
导入Java,由于
GLEnum
,我遇到了一个问题。因为我不知道OpenGL的来源,所以我不知道GLEnum是什么。它是枚举、int还是什么?如何在Java中弥补它?

正如评论中已经提到的那样,GLEnum是一个int,通常不在“数字形式”中使用,而是在常量上使用。对于每个gl功能,GLEnum都有其他含义

您可以通过分析C/C++或任何其他本地语言OpenGL绑定或阅读OpenGL规范(我想我也看到了十六进制值)来找到数值


说到这里,我强烈建议使用预定义的Java OpenGL绑定。避免构建路径中的第三方JAR是没有赢家的。这就是java的工作方式。

我强烈建议您使用LWJGL这样的包装器,而不是直接使用JNA访问OpenGL。出于几个原因,我不喜欢使用它们。我希望所有东西都放在一个jar中,没有“附加本地程序”,还有一些东西,比如jar中的物理。枚举通常由
int
表示,如果没有明确定义,您需要查看头或编译一些测试源来确定它们的值<代码>枚举从零开始,除非另有明确分配,然后对后续每个未分配的标签递增计数。@user2306911:“我不喜欢使用它们”,然后必须重新实现它。这意味着你需要学习OpenGL是如何工作的。如果你甚至不知道GLenum的类型是什么,你对OpenGL的了解就根本不足以做到这一点。@Nicol Bolas我知道如何使用OpenGL,我只是把它实现到Java中,我不知道用什么来代替它,因为我无法通过DLL读取GLenum的类型。我实际上在查看它,它被定义为int,所以我可以通过它传递每个枚举值的int值。