2016-10-04 5 views
0

Я пытаюсь собрать демонстрационную демонстрационную версию с помощью iOS GLKit для рендеринга карты розничного магазина с использованием OpenGL с использованием исходных файлов САПР. Я смог визуализировать стены и проходы в 2D, а затем программно добавить искусственную глубину для создания серии кубов. Все это выглядит отлично, если смотреть сверху вниз, но я заметил, что когда я включил пол (с z-значением, которое значительно ниже проходов и стен, некоторые из этих объектов фактически оказываются под полом:OpenGL: удаленные объекты, появляющиеся поверх близких объектов

aisles below the floor

... однако если повернуть модель вы можете увидеть, что ничего на самом деле ниже пола, и некоторые из проходов оказывают снаружи стены:

enter image description here

вы можете просмотреть код на StoreMapGLKitViewController.m, все это кажется мне довольно простым, b ut Я уверен, что я делаю ошибку OpenGL rookie.

+0

Вот видео из странной подрезки выпуска https://www.youtube.com/watch?v=1Vls6gwJvFQ –

ответ

0

Завершает, что буфер глубины не корректировался, поэтому проверка глубины ничего не делала. Добавление кода ниже исправлено.

GLKView *view = (GLKView *)self.view; 
view.drawableDepthFormat = GLKViewDrawableDepthFormat24; 
0

Итак, когда вы возитесь со значениями Z и z = 0 для всех вещей, я бы предположил, что вы все равно сможете увидеть некоторые из своих стен и проходов, но они также будут болтаться внизу немного. Пока вы не заботитесь об этом (его демо, правильно), тогда это должно быть хорошо, теперь я хотел бы тогда.

+0

Да, это хорошо, но я не должен быть в состоянии видеть проходы на верхней части стена снаружи. –

 Смежные вопросы

  • Нет связанных вопросов^_^