Большой ModelVisual3D перестает отображаться

Я пытаюсь разобрать довольно значительный (количество треугольников и промежуток по Viewport3D) ModelVisual3D, который исчезает, если последний треугольник (в MeshGeometry3D модели) покидает экран, несмотря на то, что другие части модели все еще находятся на экране. Конкретный проблемный треугольник обведен красным на изображении ниже. Я говорю, что это большая модель, но при правильном рендеринге частота кадров не снижается. Однако есть около 150 зеленых арок, все в одной сетке. Интересно, что с синей линией такой проблемы нет.

Я могу обойти эту проблему, разбив модель на более мелкие части. Но это не идеально.

Вещи, которые не работают:

  • Установка Viewport3D.ClipToBounds на false.
  • Изменение FarPlaneDistance или NearPlaneDistance

Возможно, стоит отметить, что это размещается в WinForms.

введите здесь описание изображения

РЕДАКТИРОВАТЬ: я беру это обратно, проблема все еще существует, даже если я разбиваю модель, только в меньшем масштабе (последний треугольник каждой модели должен оставаться на экране).


person MikeH    schedule 27.10.2017    source источник


Ответы (1)


Я исправил это, но я не понимаю, почему это работает.

Похоже, что-то из-за того, что расстояние между точками вокруг углов было слишком маленьким, вызывало проблему. Я уменьшил интервал до 0,1 единицы, и это, кажется, работает.

Если кто-то знает причину, по которой это может быть проблемой, я хотел бы услышать это.

person MikeH    schedule 27.10.2017