首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LWJGL挂起本机glfwInit调用

LWJGL挂起本机glfwInit调用
EN

Stack Overflow用户
提问于 2020-08-13 00:24:35
回答 1查看 157关注 0票数 2

我最初在https://gamedev.stackexchange.com/questions/185066/lwjgl-glfw-hangs-on-native-glfwinit-call上发布了这个问题,但是我也会在这里问这个问题,以获得更多的扩展,特别是因为我不确定我的问题是特定于游戏开发的,因为这是一个Java本机调用的问题。

在过去的几个月里,我一直致力于创建我自己的游戏引擎,以便在LWJGL中使用各个部分,特别是来自开发者ThinMatrix的正确的代码,以便在构建它时尽可能多地学习。直到最近,当我从IntelliJ启动引擎进行测试时,才出现了奇怪的行为:

  • 在每次单击run大约6-10次之后,所有后续的运行都会突然花费大约60秒的时间才能显示该窗口。
  • 每当我重新启动我的电脑,这个挂起的重置,我有另一个6-10运行之前,它每次挂起。
  • 我将问题定位到glfwInit,更具体地说,是在调用本机方法时: @NativeType("int")公共静态布尔值glfwInit() { long __functionAddress = Functions.Init;返回invokeI(__functionAddress) != 0;//右}
  • 我还注意到,只有当我尝试使用STBTrueType库在引擎中实现文本支持时,这个问题才会开始。在那之前一切都很好。我试着删除TrueType代码,但它没有修复它。

以下是我尝试过的事情清单:

  • 清除我的临时文件夹,以防出现错误或损坏的文件。
  • 重新编译和重建整个LWJGL jars两次。
  • 从GLFW源构建glfw.dll,并将本机jars中的glfw.dll替换为前者。
  • 重新安装Java并实际升级JDK版本(从13.0.2升级到14.0.2)
  • 即使我怀疑它不起作用。
  • 更新我的NVIDIA驱动程序,并重新安装它们。

我很困惑它可能是什么,如果您认为有必要的话,我非常乐意共享代码、线程转储或调试信息。使用最新的“错误”代码的这里是Github存储库 (引号中的错误,因为我不太确定代码是问题所在)。

非常感谢您的指导。

请告诉我,如果在StackOverflow而不是这里问这个更好。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-14 21:39:53

所以我修正了这个问题,结果发现它与编程、STBTrueType或库本身都没有任何关系。问题就像指出的那样,在在这篇StackOverflow文章中,这种挂起行为是由于一个错误的驱动程序,或者,在我的情况下,我的键盘USB插入了“错误的”USB端口。在我移动计算机的同时,我开始处理引擎中的文本,因此我错误地将这个问题与TrueType库链接在一起。如果你有同样的问题,看看上面提到的帖子,或者如果不起作用,找一个可能会造成干扰的外围设备。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63386345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档