Комментарии 20
Когда же я привыкну к всяким страшным головам при открытии хабра)
А по сабжу: спасибо за курс! Жду бонуса)
А по сабжу: спасибо за курс! Жду бонуса)
Огромное спасибо за основы основ!
Надеюсь что это далеко не все, чем вы можете поделиться с сообществом ;) Это не приглашение сразу писать что-то новое, но робкая надежда.
Надеюсь что это далеко не все, чем вы можете поделиться с сообществом ;) Это не приглашение сразу писать что-то новое, но робкая надежда.
В примере на гитхабе в Makefile в CPPFLAGS стоит также добавить -O3, иначе оптимизатор вхолостую работает.
Эх, где вы были, когда я был студентом:)
У меня не странный результат — где-то ошибки округления:
Эх, где вы были, когда я был студентом:)
У меня не странный результат — где-то ошибки округления:
Учу ваш курс на малинке. Сейчас на втором уроке и голову треугольниками рисует довольно быстро. С ужасом представляю, сколько времени будет рендериться чорт :)
Спасибо за курс, кроме графики и математики разберусь немного в C++ и Makefile.
Спасибо за курс, кроме графики и математики разберусь немного в C++ и Makefile.
А можно прятать эти страшные рожи под кат?
Надоело уже видеть их на главной какую неделю.
Надоело уже видеть их на главной какую неделю.
Спасибо огромное за материал!
А можно попросить еще объяснить алгоритм (ну или хотя-бы ссылки в инете на что посмотреть) для вот такой простой задачки 2D (не 3D):
имеем выпуклый 4-х угольник и квадратную текстуру, надо натянуть текстуру на данный 4-х угольник причем с корректными искажениями:
А можно попросить еще объяснить алгоритм (ну или хотя-бы ссылки в инете на что посмотреть) для вот такой простой задачки 2D (не 3D):
имеем выпуклый 4-х угольник и квадратную текстуру, надо натянуть текстуру на данный 4-х угольник причем с корректными искажениями:
Вам нужно рисовать быстро или просто?
лучше просто, убыстрить я потом сам смогу, я думаю :)
Если просто, то проходите по каждому пикселю в текстуре, имеете его (u,v) координаты. Затем делаете билинейную интерполяцию в экранном прямоугольнике (находите две точки на противоположных рёбрах, что соответствуют координате u, две точки на двух других противолежащих, что соответствуют координате v). Считаете пересечение двух отрезков, это экранные коордианты пикселя из текстуры.
Недостаток следующий: на экране вы можете несколько раз закрасить один и тот же пиксель.
Недостаток следующий: на экране вы можете несколько раз закрасить один и тот же пиксель.
Спасибо! Действительно не сложно. До этого что читал — там буфер строят какой-то специальный — видимо как раз чтобы не рисовать несколько раз один пиксель. Попробую реализовать.
Да просто работайте с квадратом, а не с треугольниками и все.
Тот же сканлайн даст вам корректный результат в этом случае.
Косяк из-за того, что два треугольника обрабатываются независимо.
Если же вы будете работать с квадратом и использовать все четыре точки, то результат будет корректный.
Тот же сканлайн даст вам корректный результат в этом случае.
Косяк из-за того, что два треугольника обрабатываются независимо.
Если же вы будете работать с квадратом и использовать все четыре точки, то результат будет корректный.
Скажите, вот такой эффект справа (в углу левого глаза и в углу губ) — это из-за того, что я не считаю тень от головы, или у меня просто где-то косяк?
Скажите, почему вы умножаете на матрицу Mshadow во втором фрагментном шейдере вместо того, чтобы заново считать значение shadow-буфера во втором вершинном шейдере (какой-нибудь varying_shadow) и потом интерполировать во втором фрагментном шейдере? Есть какая-нибудь причина для этого, или просто так было проще?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 6 из 6