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

Вопрос для профи - карта высот

Тема в разделе "RealSoft3D", создана пользователем Seminarist, 2 апр 2014.

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

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    По роду деятельности столкнулся с вопросом: как сделать карту высот.
    Чтоб было понятно: 1 - модель, -> 2 - карта высот, -> 3 - барельеф (то что получаем в материале).
    Решение есть в виде Stereographic Suite и плагина для Blendera/Maxa, но: 1 - хочется получить результат в Realsoft "без посредников" :), 2 - приходится увеличивать количество полигонов на порядки (т.е. дальнейшее редактирование становится невозможным).
    Я уверен, что с помощью Post Image Effects это в один клик делается, но слабое знание VSL ставит меня тупик. Кроме рентгеновского изображения ничего не получается :).
    Кто знает помогите, плз. Очень надо.
     

    Вложения:

    • 3319975.jpg
      3319975.jpg
      Размер файла:
      11 КБ
      Просмотров:
      756
    • 3319976.jpg
      3319976.jpg
      Размер файла:
      45,6 КБ
      Просмотров:
      933
    • 3319977.jpg
      3319977.jpg
      Размер файла:
      14,7 КБ
      Просмотров:
      474
  2. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Выкладываю тестовую сцену, карту высот и видео. В качестве примера куб (6 граней) в режиме сабдивной поверхности. http://us.ua/1384158/
     
  3. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    Плохо объяснил...
    Про Colormap написано в мануале, там все понятно.
    Есть моделька (рисунок 1). Нужно получить карту высот (картинку 2) при рендере этой модельки в виде растрового изображения в черно белых тонах для того, чтобы этот растр вставить в другую программу, которая на станке мне вырежет по этому ратстру барельеф, например, из латуни (рисунок 3).
    Поэтому я и говорил про постобработку. Не могу разобраться, какие каналы на входе и выходе должны быть. Хотя бы примерчик маленький, там разберусь...
    Спасибо.
     
  4. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Тут есть нюанс, по сути дела ты хочешь получить дистанцию от каждой видимой точки поверхности модели до камеры. Но для барельефа это не лучший вариант потому, что например ствол танка явно должен выходить за плоскость барельефа и тогда это скорее будет скульптура. Мне кажется. что для барельефа удобнее использовать изображение полученное при рендеринге обычного АО. Для сравнения картинки с визуализацией первого варианта (дистанции от поверхности до камеры) и вариант с АО. http://us.ua/1384718/ тут сцена с шейдером для 1 варианта.
     

    Вложения:

    • 3320330.jpg
      3320330.jpg
      Размер файла:
      28,2 КБ
      Просмотров:
      1.972
    • 3320331.jpg
      3320331.jpg
      Размер файла:
      46,7 КБ
      Просмотров:
      1.710
  5. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    На первый взгляд, да, вариант с АО выглядит привлекательнее - границы более четкие, видно больше элементов, но... программа считает иначе :) Я взял твои картинки, и вот что получилось. 1 - hm, 2 - ao. Это если посмотреть рыбине снизу в брюхо :) Разница очевидна. Но на поверхности рельефа растр с АО несомненно выигрывает. Так, что буду комбинировать.

    Блин!... файл не могу открыть - программа вылетает. У меня стоит v.6 х 64, можно ли как-нибудь адаптировать файлик.

    СПАСИБО!
     

    Вложения:

    • 3320460.jpg
      3320460.jpg
      Размер файла:
      417 КБ
      Просмотров:
      487
    • 3320461.jpg
      3320461.jpg
      Размер файла:
      419,9 КБ
      Просмотров:
      495
  6. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
  7. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    Еще раз ОГОМНОЕ СПАСИБО. То, что надо. От ЧПУ-шников низкий поклон.
    И если не затруднит, за что каждый node отвечает, а то я как мартышка и очко: тыркаю параметры - картинка меняется. Хотелось бы, чтобы этот процесс осознанным был, т.к., если рендерить с ракурса и с перспективой нужный эффект улетучивается, и необходимо что-то где-то подкрутить и в какую сторону непонятно.
    Спасибо.
     
  8. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Создаётся глобальная переменная - FLOAT Var115 типа (Float)
    В шейдере поверхности:
    1п. - в переменную копируется значение дистанции от поверхности до камеры Var115=Copy(Distance);
    2п. - учитывая, что средняя величина дистанции значительно больше чем величина дельты между максимальной и минимальной дистанцией (яркий пример дельта дистанции на чешуе) следующие 2 действия просто растягивают дельту, как именно это исполнить это уже на вкус конкретного пользователя;
    3п. - далее Var115=Curve(Var115) кривая инвертирует значение и немного его корректирует по диапазону;
    4п. - после этого в шейдере финальной обработки копирую значение из "обработанной" переменной в канал яркости.

    Для точного отображения результата значение Flashlight камеры устанавливаю в 0, то есть убираю подсветку сцены по умолчанию.

    Естественно. что в зависимости от конкретной модели и её размера нужно подобрать минимальную дистанцию от камеры до модели, чтобы меньше замарачиваться с вычислениями описанными в пункте 2п.

    Вроде всё описал :)
     
  9. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    Парадокс: когда читаешь разжёванное и смотришь на картинку - вроде всё понятно, а как начинаешь сам лепить, то оказывается руки-то произрастают совсем из непривычного (или неприличного) места :)))
    Ещё раз спасибо.
     
  10. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Вопрос оказался интересным :) и поэтому я на выходных ещё немножко покопался.... Результат тут http://us.ua/1386900/
    Идея в том, что бы выставлять модель в 1,5 единиц дистанции от камеры (параметр Focus в свойствах камеры), таким образом что бы дельта дистанции всегда была меньше 1.
    Тогда используя оператор modulo by 1 отсекаем бесполезную целую часть значения Distance и уже работаем только с ней.
    Для примера специально взял модель сильно разнесённую в пространстве.
     

    Вложения:

    • 3321865.jpg
      3321865.jpg
      Размер файла:
      59 КБ
      Просмотров:
      784
  11. Максим Илюхин 128942

    Максим Илюхин 128942 Пользователь сайта

    С нами с:
    30.03.2011
    Сообщения:
    12
    Симпатии:
    0
    Баллы:
    2
    Подскажите ,а данный шейдер для макса подходит? Тоже ищу способ получения карты высот, устраивает с расстоянием до камеры. Как его установить?
     
  12. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Этот шейдер написан в редакторе визуального программирования материалов самого пакета Realsoft 3D, и сохранён в его же формате, поэтому буквально загрузить его в другой 3D пакет нельзя. Но сам принцип вполне универсальный.
     
  13. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    Чегой-то у меня хиромантия какая-то получилась :)))))
     

    Вложения:

    • 3323740.jpg
      3323740.jpg
      Размер файла:
      364,7 КБ
      Просмотров:
      537
  14. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Обрати внимание на значение Flashlight, это внешний свет, выставь его в 0
     
  15. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Можешь вместо модели подставить болванку похожую по форме и размерам и выложи сцену. (камеру не забудь)
     
  16. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    А как файл-то выложить?!
     
  17. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    http://us.ua/1389783/
    Только если в 0, тогда еще эротичнее получается :)
     
  18. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Нужно было модель поставить как раз на расстояние указанное в Focus. Пробуй.
    http://us.ua/1389799/
     

    Вложения:

    • 3323840.jpg
      3323840.jpg
      Размер файла:
      13,3 КБ
      Просмотров:
      602
  19. Seminarist

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

    С нами с:
    08.06.2009
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    5
    Чего-то я не соображу как это технически делается.
    Есть моделька, я создаю камеру, включаю трекинг, выбираю нужный ракурс и .... начинаю тупо зажав shift+ctrl мышой "ловить момент". И что-то мне подсказывает, что это ни фига не правильно. Я понимаю, можно задать расстояние между объектами, тогда 1,5 (значение фокуса) это какие единицы? Метры?
     
  20. __yra

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

    С нами с:
    20.10.2005
    Сообщения:
    79
    Симпатии:
    0
    Баллы:
    7
    Я делаю так: выставляю модель под нужным углом, потом создаю камеру (по умолчанию создаваемая камера всегда совпадает с текущим просмотровым окном), захожу в свойства камеры и выставляю нужное значение, переключаюсь на вид с боку, что бы увидеть взаимоположение модели и камеры, если не совпадает с фокусом камеры я придвигаю или отодвигаю камеру за направляющую Z(синего цвета) она совпадает с осью камеры, перехожу в окно вида из камеры и включаю "таргет", а после этого зуммирую камеру до нужного вида.
     
Модераторы: Moderator.

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