0
我使用JMonkeyEngine Eclipse和我無法加載模型。JMonkeyEngine不加載模型
@Override
public void simpleInitApp() {
Spatial monkey = assetManager.loadModel("Monkey.obj"); //<---line 34
Material mat_default = new Material(
assetManager, "Common/MatDefs/Misc/ShowNormals.j3md");
monkey.setMaterial(mat_default);
rootNode.attachChild(monkey);
}
我本來在「資產」文件夾中的文件,但是經過一番研究,我發現,assetManager訪問的主要項目目錄,我想,也許它不能訪問的資產文件夾,從而代替我暫時搬到Monkey.obj到主目錄。
的錯誤我得到這個樣子的:
Jan 09, 2015 1:10:14 PM com.jme3.system.JmeDesktopSystem initialize
INFO: Running on jMonkeyEngine 3.0.0 RC2
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: Lwjgl 2.9.0 context running on thread LWJGL Renderer Thread
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: Adapter: nvd3dumx,nvwgf2umx,nvwgf2umx
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: Driver Version: 9.18.13.4709
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: Vendor: NVIDIA Corporation
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: OpenGL Version: 4.5.0 NVIDIA 347.09
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: Renderer: GeForce GTX 770/PCIe/SSE2
Jan 09, 2015 1:10:14 PM com.jme3.system.lwjgl.LwjglContext printContextInitInfo
INFO: GLSL Ver: 4.50 NVIDIA
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio Device: OpenAL Soft
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio Vendor: OpenAL Community
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio Renderer: OpenAL Soft
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio Version: 1.1 ALSOFT 1.15.1
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: AudioRenderer supports 64 channels
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio effect extension version: 1.0
Jan 09, 2015 1:10:14 PM com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread
INFO: Audio max auxilary sends: 4
Jan 09, 2015 1:10:14 PM com.jme3.app.Application handleError
SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
com.jme3.asset.AssetNotFoundException: Monkey.obj
at com.jme3.asset.DesktopAssetManager.loadAsset(DesktopAssetManager.java:283)
at com.jme3.asset.DesktopAssetManager.loadModel(DesktopAssetManager.java:374)
at com.jme3.asset.DesktopAssetManager.loadModel(DesktopAssetManager.java:378)
at MainGame.Main.simpleInitApp(Main.java:34)
at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:226)
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)
我是否正確使用assetManager?
因此,我創建了資產的文件夾內的文件夾模式和移動.OBJ到該文件夾,但想你的方法,它仍然沒有奏效。我甚至嘗試過用不同的obj(因爲我實際上發現我使用的obj被破壞了)。出於好奇,您是在JMonkeyEngine SDK還是在其他IDE中工作?此外,我看到你加載的文件.blend,可以JME負荷.blend文件,就像.obj文件,因爲這將是非常有益的! – MagnusCaligo 2015-01-10 13:15:35
@MagnusCaligo不,我沒有使用JME SDK。我想使用Java 8與我當前不支持的項目。我使用NetBeans 8.0。是的,JME可以加載攪拌器文件(有一些限制 - 檢查doco)。不幸的是,很難知道你的問題是什麼。我想你已經遵循http://hub.jmonkeyengine.org/wiki/doku.php/jme3:advanced:asset_manager的建議?你能否確認你已經完成了'無法找到資源?'的步驟? – sprinter 2015-01-10 22:49:19
我跟着你的鏈接,它讓我把.obj轉換成.j3o,但是這仍然不起作用。接下來我要嘗試的是測試SDK中的程序,看它是否在那裏工作。 – MagnusCaligo 2015-01-11 05:17:59