不满意LinkError Libgdx Desktop

 2023-01-21    304  

问题描述

我正在遇到桌面上的libgdx问题.尝试启动应用程序时,我一直在遇到以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.badlogic.gdx.utils.BufferUtils.newDisposableByteBuffer(I)Ljava/nio/ByteBuffer;
at com.badlogic.gdx.utils.BufferUtils.newDisposableByteBuffer(Native Method)
at com.badlogic.gdx.utils.BufferUtils.newUnsafeByteBuffer(BufferUtils.java:288)
at com.badlogic.gdx.graphics.glutils.VertexArray.<init>(VertexArray.java:62)
at com.badlogic.gdx.graphics.glutils.VertexArray.<init>(VertexArray.java:53)
at com.badlogic.gdx.graphics.Mesh.<init>(Mesh.java:148)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:173)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:142)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:121)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:115)

我在项目中添加了以下库:

不满意LinkError Libgdx Desktop

  • gdx.jar
  • gdx-sources.jar
  • gdx-natives.jar
  • gdx-backend-lwjgl.jar
  • gdx-backend-lwjgl-natives.jar

我想念什么吗?

我已经搜索了高低,但是我发现的一切都是为Android搜索的,并告诉我将.so libs从ARM文件夹中添加到我的项目中,但是对于Wintel Platform上的桌面项目来说,这对我没有意义.

推荐答案

我建议您使用这个gui .它应该为您提供所有平台的有效设置.您也可以使用最新的夜间构建,并检查问题是否仍在发生.问题可能是本地库不匹配其他罐子.

另一个问题可能是您实例化了SpriteBatch(或内部使用SpriteBatch的其他内容)过早(在StackTrace中看起来有点像这样).例如静态上这样的:

private static SpriteBatch batch = new SpriteBatch();

这是行不通的,因为LibGDX目前尚未正确设置.相反,在游戏的create/show中创建此类内容.

其他推荐答案

使用以下主方法主体启动对象:

static public void main(String[] args) throws Exception {
//      SkeletonViewer.args = args; 

    String os = System.getProperty("os.name"); 
    float dpiScale = 1;

    if (os.contains("Windows")) {
        dpiScale = Toolkit.getDefaultToolkit().
                getScreenResolution() / 96f;
    }

    if (os.contains("OS X")) {
        Object object = Toolkit.getDefaultToolkit().getDesktopProperty(
                "apple.awt.contentScaleFactor");
        if (object instanceof Float && ((Float) object).intValue() >= 2) {
            dpiScale = 2;
        }
    }

    if (dpiScale >= 2.0f) {
        uiScale = 2;
    }

    LwjglApplicationConfiguration.disableAudio = true;

    LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
    config.width = (int) (800 * uiScale);
    config.height = (int) (600 * uiScale);
    config.title = "Skeleton Viewer";
    config.allowSoftwareMode = true;
    config.samples = 2;

    new LwjglApplication(new SampleApplication(), config); 
}

以上所述是小编给大家介绍的不满意LinkError Libgdx Desktop,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/26207.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。