Eclipse에서 JMonkeyEngine을 사용하고 있는데 모델을로드하는 데 문제가 있습니다.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를 메인 디렉토리로 옮긴다.
오류 I는 다음과 같습니다납니다 :
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를 사용하고?
그래서 assets 폴더 내에 Models 폴더를 만들고 .obj를 해당 폴더로 이동했지만 여전히 작동하지 않는 방법을 시도했습니다. 나는 다른 obj로 시도해 보았다. (왜냐하면 실제로 내가 사용하고 있던 obj가 깨 졌기 때문이다.) 호기심에서 벗어나 JMonkeyEngine SDK 또는 다른 IDE에서 작업하고 있습니까? 또한 .blend 파일을로드 한 것을 보았습니다. JME는 .obj 파일을 .obj 파일처럼로드 할 수 있으므로 실제로 도움이됩니다. – MagnusCaligo
@MagnusCaligo 아니오 JME SDK를 사용하지 않습니다. Java 8을 현재 지원되지 않는 프로젝트에서 사용하고 싶었습니다. NetBeans 8.0을 사용합니다. 예 JME는 블렌더 파일을로드 할 수 있습니다 (몇 가지 제한 사항이 있습니다 - doco를 확인하십시오). 불행히도 문제가 무엇인지 알기가 어렵습니다. http://hub.jmonkeyengine.org/wiki/doku.php/jme3:advanced:asset_manager에있는 조언을 따랐다 고 가정합니다. '리소스를 찾을 수 없습니까?'에서 단계를 완료했는지 확인할 수 있습니까? – sprinter
나는 당신의 연결을 따랐다. 그리고 나는 .obj를 .j3o로 변환 시켰지만, 여전히 작동하지는 않았다. 다음으로 시도 할 것은 SDK에서 프로그램이 작동하는지 테스트하는 것입니다. – MagnusCaligo