В THREE.js при просмотре сетки кубов через внеосевую OrthographicCamera, когда камера поворачивается настолько, что объекты должны перекрывать друг друга, оказывается, что порядок рендеринга объектов не основан на их положении в пространстве. а скорее порядок, в котором они были созданы.
Я попытался установить THREE.WebGLRenderer( { antialias: true, sortObjects: false } );
, но это не решает проблему.
Вот анимированная скрипка, чтобы увидеть этот причудливый эффект Эшера: http://jsfiddle.net/rfbvdmxn/2/
Вот сцена непосредственно перед перекрытием объектов:
Поскольку я продолжаю вращать камеру в том же направлении, и объекты перекрываются, вы можете видеть, что самые задние объекты (с точки зрения камеры) в конечном итоге перекрывают самые передние объекты:
Что здесь происходит и, что более важно, как мне это исправить?