我正在创建一个VR游戏,在那里我想在用户正在寻找的任何地方绘制目标十字线。光罩在世界空间中绘制,并且放置在与用户正在观看的对象相同的深度处。 (我使用线迹来定位目标表面并将光罩移动到所需的深度)。
我正在使用UMG小部件在世界空间中绘制光罩。
我的问题是,十字线偶尔会穿过这个世界。在Unity中,我可以设置我的材质着色器,将光罩绘制在其他所有内容上(无论相对深度如何)。但是,我很难在UE4中复制相同的行为。我在网上看到你可以在半透明材料上设置'禁用深度测试',但由于我的材料域是'用户界面',我不相信这是一个选项。
我应该如何实现预期的结果?
答案 0 :(得分:1)
如果我理解正确,你想在你正在寻找的物体之前找到十字线吗?
我会创建一个名为“reticule”的演员或者类似的东西,在我内部我会添加你的UMG小部件,以及用于碰撞的盒子或胶囊(胶囊会更平滑)。我会与所有几何体碰撞,以便标线进入跟踪位置,但与对象发生碰撞,不允许剪切发生。
如果标线开始限制机器人或播放器的移动,您可以禁用棋子的碰撞。希望这会有所帮助:)
答案 1 :(得分:0)
而不是使用UMG:使用光罩纹理渲染四边形,然后设置“禁用深度测试”'给出正确的结果。