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

Это не нормально!

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

Модераторы: Moderator.
  1. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Продолжаем мучать скелеты.
    Пытаюсь делать правильно. Начинаю с-нуля.
    1) Гружу из obj-файла весь скелет. Получаю около 3-х десятков объектов, соответствующих основным группам костей.
    2) Выделяю все объекты и пытаюсь перелючить их с рендеринга полигонов на "гладкие треугольники".
    Машина уходит в глубокий своп... Это кстати при том, что предварительно я уменьшил значение Undo до 3.

    Вывести машину из ступора удается лишь через 10-15 минут. Путем "срубания" Риала...

    Все это не нормально! Такого нет в других пакетах!

    Будучи подкованным теоретически, пытаюсь реализовать еще один сценарий. Перевести сабдивы в трисеты (ну кто же мог подумать, что по умолчанию R3D будет устанавливать наиболее сложный сценарий интерпретации геометрии!?).
    Вот так сразу эту конверсию и не найти даже. Я обнаружил ее в меню Tools.

    Прежде чем дойти до нижеописанного успешного конвертирования, я повторил вышеописанный неудачный сценарий со свопом еще раза 3 (пробуя различные варианты). Впечатление такое: один неосторожный чих и Риал загоняет машину в глубокий своп, из которого нет нормального выхода.

    Перевел. Получил между прочим, всех объектов в двойном экземпляре! И пока Риал не опомнился, удалил сабдивы. Оставшиеся трисеты сгладил. Надо сказать, это дело прошло достаточно быстро и легко. НО(!) теперь скелет хоть и выглядит прекрасно, но во вьюпорте ворочается медленней чем в Синьке по крайней мере. Ладно. Рендерим.

    Кидаем самый быстрый пресет. Рендеринг занимает около 40 секунд.

    Дима, это не нормально, когда для получения просто адекватного поведения пакета, у того нужно без конца крутить настройки. Я понимаю, у вас уже глаз замыленный, ну тогда не стойте горой за любимую программу там где это и не нужно. Долбите разработчиков, если судьба пакета вам не безразлична. С менеджментом памяти, похоже, у Риала беда... потому они и уменьшили количество undo.... Чуе кiт, чье сало зъiв!
    В общем, это не нормально, когда для того чтобы ОНО стояло и не падало, нужно прилагать специальные усилия.

    Какое тут нафиг обучение! Потратишь деньги и время и научишься делать примитивные вещи. Тогда как в других пакетах примитивные вещи постигаются самостоятельно, а уже учебное время тратится на продуктивное совершенствование мастерства, а не на борьбу с пакетом.
     
  2. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Убрал Volume-ы. Выиграл секунд 7... но все равно очень медленно.
     
  3. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    FSV141 - вот полностью с тобой согласился бы, если бы столкнулся с такими проблемами впервые взявшись за пакет.
    Но так как подобного рода проблему впервые я увидел в 5 версии, после работы в 4,5 где такого не было, я подумал,
    что что-то не так со мной или машиной. начал копать и выяснил, что тормоза были связаны с видеодрайверами.
    Проверь на нескольких разных машинах, если есть возможность, потому как у меня на обоих машинах скелет крутится
    во вьюпорте нормально ( так же как в майке и максе ).
     
  4. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Ну то что скелет во вьюпорте крутится медленней я даже не учитываю. Сам в свое время тестировал видеокарты в разных пакетах. Знаю, что по-разному они используют видеокарты/драйвера и т.д. и т.п. Это не принципиально.
    А вот уход в глухой своп напрягает. Со временем конечно научишься обходить такие моменты, а пока.... Ладно, не фатально. Продолжаем возиться с R3D.
     
  5. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    "..А вот уход в глухой своп напрягает.." - так вот именно про это я и писал, сам в 5 версии в такое упёрся, переводил полигоны в сабдивы и машина в дауне, пока драйвера не поменял.
     
  6. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    Сергей, я очень надеюсь, что вот эта картиночка приведет к пониманию и чуть добавить осознанности к твоим действиям в RS.

    Для начала надо посмотреть на результаты рендера. Как мы видим, они практически одинаковы. Теперь смотрим наверх. SDS для придания формы потребовалось всего 6-ть файсов, а полигональной целых 384-ре. При том, что по варианту 1 (SDS) приближаться к к объекту сколько угодно близко - за счет отсутствия тесселяции поверхность всегда будет оставаться гладкой. С полигональной моделью этого не выйдет - при большем увеличении мы сразу увидим артифакты. Для борьбы с этим полигональную модель перед рендером сглаживают (иногда несколько раз делая Smooth).

    Теперь посмотрим порядок действий FSV141. Он берет уже сглаженную полигональную модель (был сделан Smooth в другом редакторе ) и назначает ее как SDS. Что в результате? А то, что система (RS) понимая эту поверхность как SDS, сглаживает ее еще раз! Переводя на понятный язык, в результате мы имеем рендер миллиардов полигонов! Взвалив такую ношу на плечи RS, наш пользователь FSV141 еще не перестает удивляться (а иногда и возмущаться) - почему это система так долго возиться, когда другие пакеты делают это быстрее:)
    Обо все этом написано в мануале. Достаточно было прочитать пару страниц и глядишь бы не было недельного обсуждения совершенно тривиальных вещей.
    Очень надеюсь, подобное объяснение с картинками все таки приведет к пониманию.

    Теперь, что делать со скелетом.
    1. Если есть возможность найти исходники модели. То что было до сглаживания в Max.

    2. Если п.1 не получается то использовать восстановленную модель (варианту 2)

    3. Если так же проблема п.2 то то перевести модель в RS из SDS в Triset. Кстати, если быть внимательным, то в инструменте "To SDS" есть кнопочка Del. orig. Она как раз позволяет избегать дублирования (по умолчанию она выключена).
    4. Как быть с OpenGL:) Тут все просто:) Базовые настройки рассчитаны на качетсвенное отображения SDS модели при минимальном количестве топологии. Раз уж так получилось, что у нас топология очень плотная значит нам нужно понизить качество визуализации OpenGL для данной модели. Достаточно установить Wire>Shaded Quality в 1-ку (по умолчанию стоит 5-ть). В нашем случаи качество отображения не уменьшиться (сетка и так очень плотная) но скорость возрастет в разы:)
    Так же без потери качества на финальном рендере мы можем для SDS установить Redering Quality в 1 (по умолчанию стоит 2-ка). А так же в настойках рендера установить качество геометрии как LOW (опять же за счет очень плотной топологии мы не потеряем в визуальнойм качестве, но выйграем по времени)

    5. Ну и на последок. Всегда учить мат. часть:)
     

    Вложения:

    • 1018539.jpg
      1018539.jpg
      Размер файла:
      53,1 КБ
      Просмотров:
      86
  7. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Дима, я вам в очередной раз благодарен за терпение и ваш труд по разъяснению мне... элементарных вещей, но в данном случае он (труд) оказался напрасным. Мне очень жаль ваших сил и времени потраченных впустую. Я не ерничаю. Неужели вы думаете, что я не знаю элементарных вещей про сабдивы??? Ну да ладно...

    А вот это:
    Попало точно в цель! Спасибо. И дело тут не в том, что я про эти фокусы не знаю. Знаю. И когда-то давно в R3D 4.5 даже использовал. Но в других пакетах (например в Синеме) прямого аналога нет. Вот и не привык пользоваться, а потому мысль о этих настройках в голову не приходит... Раньше не приходила. Теперь наверное будет посещать регулярно ;)

    Про картинку разговор особый. Ничего нового я на ней не разглядел. Даже и не понял, зачем вы мне ее показываете. То что в памяти Реалсофта для SDS-модели храниться лишь 6 граней да еще горсть служебной информации я понимаю. Но OpenGL-ю по-любому придется отрисовать 384 полигона хоть в случае с "честной" полигональной моделью, хоть с SDS-моделью. Разве что если пользователь выключит гладкое отображение SDS, тогда конечно, будут рисоваться 6 граней.
    И рендеру придется разбить 6 граней SDS-модели по соответствующему алгоритму (тут вы наверное могли бы добавить, что алгоритм этот такой же как у Pixar RenderMan) в 384 полигона.
    Так что вы хотели сказать, приведя эту картинку??? Я честно не понял.
     
  8. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Попробовал. Для всех объектов включил качество OpenGL - 1 (качество кривых, плотность сетки и качество затенения). Как я и предполагал, - практически ничего не изменилось. Думаю, это работает лишь для NURBS (качсетво кривых) и SDS - тех случаев, когда пакет может изменить параметры тесселяции. Для трисетов (и любых других "честных" полигональных моделей) это не работает.
    Субъективно не помогло и включение дисплейных списков OpenGL и плоской модели затенения.
     
  9. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    Отключи синхронизацию при обновлении в OpenGL.

    Про картинку без комментариев. Нет так нет:)
     
  10. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    В догонку предлагаю сравнить эти два скелетика и найти отличия.
    Одна модель имеет размер чуть больше 3MB, другая 173MВ.
     

    Вложения:

    • 1020884.jpg
      1020884.jpg
      Размер файла:
      87 КБ
      Просмотров:
      87
  11. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    Вот еще один тест. С одной стороны SDS, c другой полигоны.
     

    Вложения:

    • 1021069.jpg
      1021069.jpg
      Размер файла:
      72 КБ
      Просмотров:
      88
  12. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Однако, полигоны слева :)
     
  13. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    :) Я хотел услышать еще обоснованное мнение Сергея.
    Я очень надеюсь, что он все же увидит причинно-следственные связи свих "проблем" по этим двум картинкам.
     
  14. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Да нет никаких проблем кроме одной: с большими моделями Реалсофт работает очень нестабильно. Все остальные мои соображения я написал в ветке: "Две проблемы камеры вьюпорта".
     
  15. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    Что считать критерием "большой модели"?
     
  16. FSV141

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

    С нами с:
    17.06.2008
    Сообщения:
    119
    Симпатии:
    0
    Баллы:
    11
    Скажем, более миллиона полигонов.
     
  17. ODA

    ODA Знаток

    С нами с:
    13.01.2006
    Сообщения:
    176
    Симпатии:
    0
    Баллы:
    26
    Сергей, RealSoft как раз и предназначается для больших и очень больших проектов:). Т.е все его многообразие геометрических типов объектов (в т.ч и SDS) подразумевает только одно - иметь возможность малой кровью обсчитывать большой объем информации. Более того, чем больше выходное разрешение тем больше будет выигрыш по времени по сравнению с пакетами, использующие полигоны (например, Мах, Маya и подобные). Поэтому, там где у Realsoft 1 000 000 "полигонов" в других пакет потребуется в тысячи раз больше (для достижения такого же уровня качества). Попробуй в любом "полигональном" пакете поработать с моделью в 500 000 000 полигонов. Посмотри, что получится:). А для RS это далеко не предел:)
     
Модераторы: Moderator.

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