JavaFX 3D - 场景相机问题、子场景错误和网格视图不可见

JavaFX 3D - Scene Camera Issues, SubScene Errors, and MeshViews not Visible

我会尽量简短,同时提供足够的信息,以便有人可以帮助我指明正确的方向。我正在尝试将 3D 场景添加到中心或将包含一组网格视图的边框窗格,这些网格视图是我使用已经过其他人很好测试的 obj 加载器从 obj 文件中读取的(因此我相信它可以工作)。我将逐步给出我的总结,并提供一张图片来展示我的进步和问题。 我从空白的边框开始: 接下来,我从一本书中举了一个例子,它添加了我创建三个基元并将它们添加到场景中并对其进行了更改,以便将其添加到我的边框的中心部分。我创建了一个绑定到 File/Open 操作的方法,当我单击 File/Open 时,它会调用该方法并创建基元并将它们添加到边框的中心: 接下来,我尝试使用以下几行将摄像机添加到作为初始应用程序启动方法的一部分创建的主场景: (第29到33行在之前的图片中被注释掉了) 但是,这会导致以下问题,即边框投影到三维空间中: 然后我尝试在 borderpane 的中心使用 SubScene,但一直收到很多 nullpointerexception 类型的错误,而且信息太模糊,我无法用它来弄清楚它不满意的地方。 在尝试解决这个问题时,我正在处理的另一个更重要的问题是,从 obj 文件读取一组网格视图并将它们添加到中心的最终版本不起作用。代码读取 obj 文件并从中导入网格视图。我已经在控制台打印出读取的网格视图数量,它与测试文件中的内容相匹配,所以我确信我正在正确使用它,并且这个加载器已被其他人大量使用,因此已经过测试。但是当我尝试更改并使用它来将网格视图添加到中心时,我只得到一个空白的中心屏幕和一个控制台打印输出,显示它读取了文件并且读取了正确数量的网格视图。我一直没能找到 debug/figure 解决这个问题的好方法。所以也可以使用一些建议。 感谢您的任何帮助,您可以提供。

而不是
Scene scene = new Scene(borderPane,sceneWidth,sceneHeight);

添加这个

Scene scene = new Scene(borderPane,sceneWidth,sceneHeight,true, SceneAntialiasing.BALANCED);

最后两个参数是 = depthBuffer 和 antialiasing