2
因此,我一直在尝试使用Java 3D进行游戏,最近我一直在玩外部3D模型导入程序。此时,我可以将模型作为OBJ文件加入程序中,但无论出于何种原因,程序都不会加载相应的材质文件,而且我不知道问题出在我的编码上,还是仅仅是文件不存在没有正确导出。加载对象文件时不会加载材质文件
这是我写的代码:
import com.sun.j3d.utils.universe.*;
import com.sun.j3d.utils.geometry.*;
import javax.media.j3d.*;
import com.sun.j3d.loaders.objectfile.*;
import com.sun.j3d.loaders.Scene;
import java.awt.Color;
import javax.vecmath.*;
public class ModelLoadingTest {
public static void main(String[] args) {
SimpleUniverse universe = new SimpleUniverse();
BranchGroup scene = new BranchGroup();
ObjectFile loader = new ObjectFile(ObjectFile.LOAD_ALL);
loader.setFlags(ObjectFile.RESIZE);
Scene modelScene = null;
try{
modelScene = loader.load("paintedcar.obj");
}
catch(Exception e){
}
DirectionalLight lighting = new DirectionalLight(new Color3f(Color.WHITE), new Vector3f(0f, 0f, -1f));
lighting.setInfluencingBounds(new BoundingSphere(new Point3d(0.0, 0.0, 1.0), 100));
scene.addChild(modelScene.getSceneGroup());
scene.addChild(lighting);
universe.addBranchGraph(scene);
universe.getViewingPlatform().setNominalViewingTransform();
}
}
如果有帮助,我在玛雅作了并导出为波前文件测试模型。