Linerenderer на холсте не показывает должным образом - PullRequest
2 голосов
/ 25 апреля 2019

Я сейчас работаю над игрой и столкнулся со следующей проблемой:

Я хочу нарисовать некоторые результаты в виде графика поверх моего Canvas, и до сих пор я узнал, чтомой Canvas должен быть в Screenspace-Camera, чтобы это работало, так как LineRenderer - это 3D-объект, в противном случае он будет перекрыт Screenspace-Overlay.

И я действительно заставил его работать с этим,выглядит следующим образом: LineRenderer in front of canvas

Но проблема, с которой я столкнулся, заключается в том, что если я увеличу размер экрана, например, растягивая GameView или увеличивая его, линия исчезнет, ​​даже еслихотя он имеет отрицательный z по сравнению со всеми моими элементами пользовательского интерфейса и поэтому появляется перед ними в EditorView:

Screenshot of full editor window

Если я пытаюсь это исправитьприменяя большее отрицательное значение z по отношению к размеру экрана, линии искажаются по мере того, как они все ближе и ближе к камере, и изменение их выравнивания от вида к оси z также не помогло.

WЭто делает еще более запутанным то, что это происходит с линиями, которые сначала рисуются ниже (меньшее значение y), то есть линия внизу моего графика исчезает раньше.Я действительно не знаю, почему это происходит.Любая помощь будет оценена.

1 Ответ

1 голос
/ 25 апреля 2019

Для 3D-объектов, смешанных с элементами пользовательского интерфейса, я рекомендую использовать отдельную камеру с большей глубиной, чем камера, рисующая стандартные элементы пользовательского интерфейса. Таким образом, ваши 3D-объекты всегда будут отображаться поверх элементов пользовательского интерфейса, и вам не придется беспокоиться о позициях Z.

...