-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
z-buffer #6
Comments
Добрый день, собственно, это и есть проблема округления. On 15-12-22 03:51:39, Bogdan wrote:
|
Доброго времени суток!
Хочу сказать спасибо за ваши статьи на хабре о компьютерной графике - это то, что нужно таким новичкам, как я.
И, как полагается, у меня возникли некоторые вопросы по статье №3, и, когда у вас появится свободное время, прошу ответить.
В комментариях вы привели пример картинки с "дырками", когда mr. guyfawkes спросил у вас насчет хака
Вы указали, что это ошибка с округлениями, и добавили на репозиторий конструктор копирования для Vec3i с округлением.
В чем моя проблема: 1.png в прикрепленных
Вроде бы очень похоже на вашу картинку с "дырками". НО, я использую double представление точки, т.е. все коодинаты:
т.е. как видите, округлений особо нет(и да, я понимаю, что это медленне по сравнению с int)
Поскольку у меня координаты типа [-1.0, 1.0], то и прохожусь я по по координатам с помощью такого костыля:
где m_delta - некое магическое число(шаг), которое для 1.png установлено в 0.001
если уменьшить шаг, то количество дырок уменьшается, но не пропадает(2.png - шаг установлен в 0.00035). Сами понимаете, что производительность падает при таком решении(у меня, для сравнения, 0.26105 сек для первого изображения, и 1.71324 сек для второго)
Нужна ваша конструктивная критика моих решений.
вот код метода рисования треугольника: github
The text was updated successfully, but these errors were encountered: