Javafx 8 javafx中的obj文件加载程序提供了一个透明网格
我试图用javafx编写一个obj加载程序,但是尽管在场景构造函数中启用了deptTest,结果还是透明的Javafx 8 javafx中的obj文件加载程序提供了一个透明网格,javafx-8,Javafx 8,我试图用javafx编写一个obj加载程序,但是尽管在场景构造函数中启用了deptTest,结果还是透明的 public View() throws Exception { meshView = createSimplex(); Group axisGroup = buildAxes(); createBoundBoxAndSetBounds( meshView); Group group = new Group();
public View() throws Exception {
meshView = createSimplex();
Group axisGroup = buildAxes();
createBoundBoxAndSetBounds( meshView);
Group group = new Group();
group.getTransforms().addAll(rotateZ, rotateY, rotateX);
group.setDepthTest(DepthTest.ENABLE);
scene = new Scene(group, 640, 480,true,SceneAntialiasing.BALANCED);
float w = abs(maxy - miny);
float alpha = (0.5f / (w / (float) scene.getHeight()));
PerspectiveCamera camera = new PerspectiveCamera(true);
camera.setNearClip(0.1);
camera.setFarClip(5000.0);
camera.setTranslateZ(-1000);
scene.setCamera(camera);
group.getChildren().addAll(meshView);
handleMouseEvents();
}
装载结果:
有什么问题吗?对我来说,这似乎是
cullFace
属性设置为错误的值。。。尝试将其设置为BACK
,如果它是FRONT
,反之亦然,或者简单地禁用用于测试的消隐,并将其设置为NONE
(这会降低绘图操作的效率)…我将消隐设置为NONE,现在全是黑色OK,现在可以工作了,我将消隐设置为NONE并添加了光源。我认为这是因为在obj文件中没有法线来帮助确定正面和背面。谢谢你的帮助