1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Треугольники или прямоугольники??

Тема в разделе "Maya", создана пользователем hermione, 16 мар 2008.

Модераторы: Dark™, Skif
  1. hermione

    hermione Активный участник

    С нами с:
    05.10.2005
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    5
    В чем лучше оформлять полигоны? В прямоугольниках, или в треугольниках? В каких случаях нужно использовать треугольники, а в каких прямоугольники? Например: если у меня бюджет 8000 полигонов , то значит ли это что это то же самое что бюджет 4000 прямоугольника, или 8000 треугольников?
     
  2. Миша Ершов

    Миша Ершов Мастер

    С нами с:
    02.11.2003
    Сообщения:
    1.415
    Симпатии:
    2
    Баллы:
    325
    прямоугольник - это фигура, имеющая прямые углы. Полигон может являться прямоугольником только в частных случаях. Полигон может иметь сколько угодно углов, теоретически от трёх до бесконечности, и может быть поделен на треугольники (кол-во треугольников = кол-во вершин - 2). А количество треугольных полигонов (треугольников) в одной моделе является постоянным. Поэтому бюджет _всегда_ указывают в треугольных полигонах.
     
  3. hermione

    hermione Активный участник

    С нами с:
    05.10.2005
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    5
    Опечятка: конечно, имелось в виду четырехугольники.

    Именно это я и хотела уточнить. Т.е. если бюджет, например 8000, то я могу построить либо на 8000 треугольниках либо на 4000 четырехугольниках.
    Правильно?
     
  4. Миша Ершов

    Миша Ершов Мастер

    С нами с:
    02.11.2003
    Сообщения:
    1.415
    Симпатии:
    2
    Баллы:
    325
    Ага :)
     
  5. hermione

    hermione Активный участник

    С нами с:
    05.10.2005
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    5
    еще не могу понять, при моделировании в каких случаях нужно строить треугольниками, а вкаких четырехугольниками?
     
  6. Миша Ершов

    Миша Ершов Мастер

    С нами с:
    02.11.2003
    Сообщения:
    1.415
    Симпатии:
    2
    Баллы:
    325
    Моделировать удобнее всего четырехугольниками. Разбивать их на треугольники нужно только в единственном случае - когда нужно явно определить направление разделения.
     
  7. hermione

    hermione Активный участник

    С нами с:
    05.10.2005
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    5
    Спасибо за ответ :)
     
  8. Леонид Васильевич

    Леонид Васильевич Активный участник

    С нами с:
    05.03.2007
    Сообщения:
    100
    Симпатии:
    0
    Баллы:
    11
    Миша Ершов
    когда нужно явно определить направление разделения.

    Не могли бы вы на пальцах (картинках) объяснить, что за "направление разделения"?

    А то я сейчас нахожусь в растерянности, пытаюсь замоделить заз-965, и хоть ты тресни, выходит так, что надо вставить треугольник!
    То есть, получается, что треугольники можно в некоторых местах вставлять?
    Имеет ли значение где этот треугольник буде стоять, на виду или нет?
     
  9. Skif vip

    Skif Administrator Команда форума

    С нами с:
    26.03.2004
    Сообщения:
    6.827
    Симпатии:
    417
    Баллы:
    2.787
    ой... чтож.. немного поправлю Михаила, хоть он и давно давал этот ответ. треугольники допустимы там где они не мешают, например при сглаживании, или текстурировании... НО желательно их вообще не делать...
    треугольники допустимы и даже желательны в лоу поли моделировании тоесть для игр и архитектурном моделировании, в персонажах и авто они не желательны.
     
  10. Леонид Васильевич

    Леонид Васильевич Активный участник

    С нами с:
    05.03.2007
    Сообщения:
    100
    Симпатии:
    0
    Баллы:
    11
    Skif
    в персонажах и авто они не желательны

    А почему? :) Мне не совсем понятно, почему так? Если можно, поясните.
     
  11. Skif vip

    Skif Administrator Команда форума

    С нами с:
    26.03.2004
    Сообщения:
    6.827
    Симпатии:
    417
    Баллы:
    2.787
    все просто... при сглаживании, создании ЮВ разверток в местах с треугольниками появляются часто артефакты...
     
  12. Slavenin

    Slavenin Активный участник

    С нами с:
    22.06.2008
    Сообщения:
    264
    Симпатии:
    0
    Баллы:
    16
    Примет прост, сделайте 2 простых полигональных куба, с одним сделайте триангуляцию, сделайте смус обоих и впечатлитесь результатами. Я конечно могу ошибаться, но любая хай поли модель получается путем смуса из лоу/мидполи модели, поэтому так важно чтобы полигоны имели четырехугольную форму, причем чем более прямоугольной она будет - тем лучше.
     
  13. Dark™ vip

    Dark™ Administrator Команда форума

    С нами с:
    28.10.2001
    Сообщения:
    3.110
    Симпатии:
    217
    Баллы:
    1.520
    Менталовская аппроксимация дисплейса не выносит треугольники надо добавить.
     
  14. Skif vip

    Skif Administrator Команда форума

    С нами с:
    26.03.2004
    Сообщения:
    6.827
    Симпатии:
    417
    Баллы:
    2.787
    очень спорное утверждение... наоборот.. чем более равномерной будет сетка тем лучше... тоесть поли делать лучше квадратными.
     
  15. alex_alv

    alex_alv Активный участник

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Тоже долго не мог понять, почему надо делать четырехугольники. Для себя понял проблему так: для моделинга удобнее и проще использовать четырехугольники. Для рендеринга теоретически лучше - треугольники.

    Четурехугольники (быстрее писать "квадраты") делают сетку более красивой, что делает возможной работу множества полезных в моделировании алгоритмов (от вставления edge loop до смуса). В квадрате, например, алгоритму edge loop легко понять направление разбиения. В треугольнике этот алгоритм невозможен. Именно поэтому, при моделировании треугольников нужно избегать. Но если при этом, сетка все равно не выглядит красиво ("изопармисто" - сам придумал слово), то большая часть этих алгоритмов работать все равно будет неправильно, и тогда уже все равно - треугольники ли кавдраты.

    С точки зрения рендеринга, в общем случае квадрат отрендерить невозможно по двум причинам: планарность и UV. Непланарный квадрат невозможно отрендерить, потому что он неоднозначно определяет себя в пространстве. Иными словами, его можно разбить на два треугольника двумя разными способами. И эти два способа дадут абсолютно разную геометрию на выходе. Треугольник же определяется в пространстве всегда однозначно, так как три любые точки в пространстве всегда лежат в одной плоскости. Если они при этом не лежат на одной прямой, то они однозначно задают едиственную плоскость в пространстве. Именно поэтому, при рендеринге любая геометрия сначала триангулируется (квадрат не всегда возможно однозначно визуализировать, а треугольник - всегда однозначен).
    На тему UV. Даже если квадрат планарен, но его диагонали пересекаются не в середине самих диагоналей (либо в пространстве, либо в UV раскладке), то на нем нельзя однозначным образом определить UV-координаты. В треугольнике - всегда можно. Если попытаться порендерить квадрат с неправильными диагоналями (см. выше), то расположение текстуры на нем непредсказуемо и зависит от того, каким именно способом рендер разобъет этот квадрат на два треугольника. Треугольник в этом смысле всегда однозначен и предсказуем. Я с этой проблемой сталкивался даже при простых UV (когда углы квадрата имеют UV: (0;0), (0;1), (1;0) и (1;1)).

    На счет ментал рея. Могу ошибаться, но на сколько я помню, он легко работает и с квадратами и с треугольниками. Единственное, геометрия либо вся должна быть из треугольников, либо вся из квадратов. Если есть и то и другое, то будут глюки.

    Вывод. Навреное, можно работать и с тем и с другим. И у треугольников и у квадратов есть и плюсы и минусы. Если их понимаешь (и если понимаешь, что будешь делать с геометрией потом), то можно использовать и то и другое. Если не понимаешь, то наверное нельзя использовать ни то, ни другое :)
     
  16. Dark™ vip

    Dark™ Administrator Команда форума

    С нами с:
    28.10.2001
    Сообщения:
    3.110
    Симпатии:
    217
    Баллы:
    1.520
    Почему же именно должна? Триангуляция неизбежна для любого полигона, что для вывода на рендер, что на вьюпорт. Поэтому и не должно волновать понятие "Для рендеринга теоретически лучше - треугольники". Весь вопрос упирается в понятие усложненной топологии модели, неоднородности.
     
  17. alex_alv

    alex_alv Активный участник

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Процитированная фраза "геометрия либо вся должна быть из треугольников" относилась не к рендерингу, а к Approximation Editors ментал рея (просто выше было сказано, что эти Approximation Editors не работают с треугольниками). Эти Approximation Editors работают с геометрией еще до ее триангуляции, и они могут работать либо только с квадратами, либо только с треугольниками. Смешанная геометрия не подходит для них (если я правильно помню, и если с тех пор ничего не поменялось). А уже после их работы, геометрия триангулируется и рендерится.

    А когда я говорил про рендеринг, что там лучше треугольники, я говорил, о том, что только треугольники могут порендериться однозначно и предсказуемо (с точки зрения UV и с точки зрения однозначности геометрии). Квадраты не всегда однозначно определены в пространстве и не всегда на них однозначно определены UV-координаты. Соответственно, при использовании квадратов, на рендере будет не всегда получаться то, что хочется, а будет получаться то, что получится.
     
  18. alex_alv

    alex_alv Активный участник

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Про то, что квадраты могут быть непланарными и в этом случае они принципиально не могут быть однозначно определены в пространстве (а значит и не могут быть однозначно порендерены), я думаю, это понятно.

    На счет неопределенности UV у квадратов - вот скриншот планарного четырехугольника.

    Это - обычный плейн с обычной UV-раскладкой. Токльо одна вершина перемещена по одной координате. (UV я не трогал)
    По картинке надеюсь понятно, что если бы при визуализации триангуляция прошла бы по другой диагонали, текстура легла бы совсем по-другому.
    Соответственно, предсказать, как текстура будет лежать на таком фэйсе при рендере - НЕВОЗМОЖНО.
    Более того, при анимации (например, при перемещении камеры), рендер может принять решение триангулировать данный фэйс по-другому. Это приведет к тому, что текстура может просто начать скакать по фэйсу.
    С треугольниками такие ситуации исключены
    (тоже самое можно сказать и про планарность: непланарных треугольников не существует)
     

    Вложения:

    • 1256197.jpg
      1256197.jpg
      Размер файла:
      29,1 КБ
      Просмотров:
      184
  19. Dark™ vip

    Dark™ Administrator Команда форума

    С нами с:
    28.10.2001
    Сообщения:
    3.110
    Симпатии:
    217
    Баллы:
    1.520
    Это все ясно и некоторые может даже скажут спасибо за такой обзор =), но речь сейчас не идет о полной триангуляции. Конечно логично, что mr Approximation хорошо работает с однородной треугольной топологией. Но я выше не про этот случай писал. Неоднородные изменения в структуре, по-моему, всегда приводят к косякам в процедурах, основанных на интерполяции - те же, например, сабдивы. Насчет картинки: таких случаев надо избегать хорошей разверткой, после этого заметных проблем не должно возникать.

    Имхо, направление триангуляции всегда постоянно, если ее не изменять вручную.
     
  20. alex_alv

    alex_alv Активный участник

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    На счет направления триангуляции - согласен, но я нигде в документации не видел, чтобы это было явно написано. А раз не написано, значит нельзя это утверждать наверняка. Более того, скорее всего, решение о направлении триангуляции скорее всего принимается на основе углов фэйса. А если ситуация почти симметричная, но от направления триангуляции сильно зависит, например, UV? Тогда - случай скакания текстуры при анимации.

    На счет таких случаев, еще раз скажу, что у этого фэйса UV я не трогал. Они очень даже хорошие. Попробуйте замэпить такую трапецию "хорошо" - т. е. так, чтобы текстура шашечек легла тоже по трпеции. Не выйдет (если не разбивать на более мелкие фэйсы). Проблема не в UV, а в форме самого фэйса. Такой фэйс невозможно однозначно замэпить никаким способом (кроме может быть планарной проекции, но это - не то, что требуется в данном случае). Это принципиально.

    А на счет избегания таких фэйсов - это не возможно. Подобное искажение есть везде. Может быть не такое сильное (я так сильно исказил, чтобы было четко видно проблему). Под эту проблему попадают все фэйсы, у которых попарно противоположные эйджи не равны друг другу (я имею в виду только планарные четырех-угольники).
    Т. е. нормально мэпятся только: прямоугольники, параллелограммы, равнобокие трапеции. Все остальные четырехугольники невозможно замэпить правильно. Больше чем уверен, что эти "все остальные" имеются в любой геометрии (стандартные плейн, сфера, куб - не в счет).

    Предлагаю дальше не спорить (хотя мы даже и не спорим, так как не противоречим друг другу). Просто тема четырех-угольников / треугольников мне самому очень долго была непонятна и вот я решил высказать все, что сам понял для себя.
     
Модераторы: Dark™, Skif

Поделиться этой страницей