2016-06-24 3 views
3

Я создаю игру VR, где я хотел бы нарисовать целевую сетку везде, где пользователь ищет. Сетка нарисована в мировом пространстве и размещена на той же глубине, что и объект, на который смотрит пользователь. (Я использую трассировку линии, чтобы найти целевую поверхность и переместить сетку на требуемую глубину).Виджеты UE4 UMG через окружающую среду: сетка прицела VR

Я использую виджет UMG для рисования сетки в мировом пространстве.

Моя проблема заключается в том, что сетка будет периодически зажиматься по всему миру. В Unity я мог настроить свой материальный шейдер, чтобы нарисовать сетку над всем остальным (независимо от относительной глубины). Тем не менее, я изо всех сил пытаюсь воспроизвести то же поведение в UE4. Я читал онлайн, что вы можете установить «Disable Depth Test» на полупрозрачные материалы, но поскольку мой материальный домен «Пользовательский интерфейс», я не считаю, что это вариант.

Как мне добиться желаемого результата?

ответ

0

Вместо использования UMG: рендеринг квадрата с текстурой сетки, затем установка «Disable Depth Test» дает правильный результат.

1

Если я правильно понял, вы хотите, чтобы сетка была непосредственно перед объектом, который вы ищете?

Я бы создал актера под названием «ретикула» или что-то подобное, и внутри я бы добавил ваш виджет UMG, а также коробку или капсулу для столкновения (капсула была бы более гладкой). Я бы столкнулся со всей геометрией, чтобы ретикула попала в место трассировки, но столкнулась с объектом, не допуская обрезания.

Вы можете отключить столкновение для пешек, если сетка начинает ограничивать движение для ботов или игрока. Надеюсь, это поможет :)

+0

Спасибо, Майкл. Это классная идея; Я не думал об использовании коллайдера. («Легкий» способ сделать это - поставить сетку на 98% от глубины трассировки линии, но есть некоторые граничные случаи, когда они все еще зажимаются: например, на очень косых поверхностях. Решение коллайдера позволяет избежать этого). Я также думал о том, чтобы полностью отбросить UMG и просто сделать плоскость с текстурой: https://answers.unrealengine.com/questions/63316/oculus-rift-hud-solution.html –