JavaFX 8 Z缓冲区问题
本文介绍了JavaFX 8 Z缓冲区问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的问题是JavaFX 3D中的Z-Buffer,它似乎不能在我的机器上按预期工作。
我了解以下问题: Overlapping shapes 和 ...Z Order... 但是,我确实启用了Z缓冲区,并且节点仍然按照它们添加到场景图的顺序进行渲染。
可能我缺少某些依赖项或其他什么?
我正在发布代码,希望有人能帮助我。我正在创建一个在椭圆路径上围绕另一个节点移动节点的过渡。
提前感谢您!
}
顺便说一下,这是我的第一篇帖子:)
推荐答案
如果使用矩形检查您提供的link上的代码,则深度缓冲区工作正常。
将矩形更改为使用3D框也有效。
问题是如何定义其中一个框与另一个框相关的旋转,因此,我没有像您那样使用RotateTransition
或SequentialTransition
的SequentialTransition
,而是对红色框应用了Rotate
变换,并在蓝色框的中心设置了轴,并使用AnimationTimer
修改了旋转角度以创建"环绕"效果。
您甚至可以在大盒子(从8u60开始)上使用透明度来查看其下面的小盒子。
盒子前面:
蓝框后面:
编辑
如果您查看nearClip
的Camera JavaDoc:
指定到的近剪裁平面的眼睛的距离 这个相机在眼睛的坐标空间。 不会绘制比Near Clip更靠近眼睛的对象。 Near Clip被指定为大于零的值。价值小于 大于或等于零被视为非常小的正数。
(粗体是我的)。
所以您的代码的问题在于该行:
只需更改为:
它将按您的预期工作。
这篇关于JavaFX 8 Z缓冲区问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!