Работая с устаревшим проектом, использующим OpenGL, и адаптируя его к OpenGL ES, я наткнулся на эту проблему. Я должен сам реализовать использование стека матриц и создать какой-то конечный автомат и собственную реализацию glOrtho и glPerspective, но некоторая документация отличается в зависимости от того, какой источник я смотрю.
Документация на веб-сайте Kronos искажена и непригодна для использования , Документация на сайте Microsoft
Другая версия, которая также соответствует формулам на страницах руководства и в некоторых книгах:
Эксперименты с glGelFloatv()
показали, что на Windows glOrtho()
используется первая версия. Возможно ли, что другие платформы используют другую? Было много проблем с матрицей проекций в этой кодовой базе, и попытка замены реализации усугубила то или иное, до такой степени, что у меня сложилось впечатление, что знак действительно меняется при некоторых условиях. Какой вариант я должен следовать? Содержит ли glOrtho некоторые дополнительные логики c помимо умножения существующей матрицы на новую?