2

伙计们,我在使用 jmonkeyengine 时遇到了麻烦。在 jme3 的论坛中,我无法就我的问题获得任何有效的帮助。实际上没有人说我的问题是什么。因为我是 lwjgl 和 jme3 的新手,我也不知道会发生什么。简单地说,我在 jmonkey 上创建了一个 basicGame,它是第一个模板作为示例。然后我创建了它的小程序或 webstart 发行版。当我运行它时,它会在 jme3 和 lwjgl 之间引发异常。它说:

Exception in thread “LWJGL Renderer Thread” java.lang.IllegalStateException: No loader registered for type “fnt”
    at com.jme3.asset.ImplHandler.aquireLoader(ImplHandler.java:199)
    at com.jme3.asset.DesktopAssetManager.loadAsset(DesktopAssetManager.java:266)
    at com.jme3.asset.DesktopAssetManager.loadFont(DesktopAssetManager.java:365)
    at com.jme3.app.SimpleApplication.loadGuiFont(SimpleApplication.java:178)
    at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:186)
    at com.jme3.system.lwjgl.LwjglAbstractDisplay.initInThread(LwjglAbstractDisplay.java:130)
    at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:207)
    at java.lang.Thread.run(Unknown Source)

以及jme3中BasicGame模板的代码:

/**
 * test
 *
 * @author normenhansen
 */
public class Main extends SimpleApplication {

    public static void main(String[] args) {

        Main app = new Main();
        app.start();
    }

    @Override
    public void simpleInitApp() {
        Box b = new Box(Vector3f.ZERO, 1, 1, 1);
        Geometry geom = new Geometry("Box", b);

        Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
        mat.setColor("Color", ColorRGBA.Blue);
        geom.setMaterial(mat);

        rootNode.attachChild(geom);
    }

    @Override
    public void simpleUpdate(float tpf) {
        //TODO: add update code
    }

    @Override
    public void simpleRender(RenderManager rm) {
        //TODO: add render code
    }
}

笔记:

- BasicGame 项目已在 Linux 或 Windows 上构建

- 使用原版JMonkeyEngine SDK

- 一个例子是在http://appletgame.comeze.com/(只需点击'run-applet.html')

- 网页上的文件权限为所有文件的 755。

有没有人知道我为什么会收到这个错误以及可以做些什么?

4

0 回答 0