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

Maya Ocean -> Heigh map. Это возможно?

Тема в разделе "Maya", создана пользователем Konstantin Antipov, 25 май 2009.

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

    Konstantin Antipov Пользователь сайта

    С нами с:
    24.02.2009
    Сообщения:
    29
    Симпатии:
    0
    Баллы:
    2
    Добрый день!
    Вопрос больше теоритический:
    необходимо получить карты высот (порядка 100), затайленные с четрех сторон.
    Карты высот должны описывать океан, т.е. снять карты высот с поведения майской воды.

    Как это можно сделать?

    Если можно сделать в другом пакете, подскажите пожалуйста.

    Спасибо!
     
  2. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Или отснять Z-канал.
    Или MEL-команда типа `colorAtPoint -u $x -v $z oceanShader1`, с ее помощью пробежать по разным $x, $y и сохранить результат в BMP.
    На счет затайлить - самое простое, что приходит в голову - задать ширину по краю, в котором происходит уреднение по весу (вес рассчитывается как удаление от края по отношению к ширине усреднения) с аналогичной шириной по противоположному краю растра. Не уверен, что будет совсем не видно, но можно поподбирать разную ширину усреднения.
     
  3. Konstantin Antipov

    Konstantin Antipov Пользователь сайта

    С нами с:
    24.02.2009
    Сообщения:
    29
    Симпатии:
    0
    Баллы:
    2
    Про Z канал не подумал, верно.

    На счет затайлить не понял =) Мне надо не затайлить получившиеся height map в шопе, а именно получить затайленные в maya, ведь они иммитирует поведение волны
     
  4. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Самое простое - затайлить через какой-нибудь AE. (отснять на несколько пикселей больше, чем надо, потом в AE обрезать и наложить сдвинутое на разрешение по одной координате и по другой. Наложение - через мягкую маску).

    Через MEL (как я написал) - тоже возможно, но геморой (в MEL нельзя сохранять в файл по-байтно, придется сохранять в свой формат, а потом конвертить отдельной утилитой, написанной на другом языке).

    Можно еще приконнектить выход displacement шейдера к цвету (через утилиту setrange), а потом замешать со сдвинутым шейдером. Это наверное самый интересный способ, но тоже геморойный, так как океановский шейдер просто так не сдвинуть (можно через матрицы worldtoeye и eyetoworld, подключив их к трансформ-ноде, которая находится в пространстве камеры и приконстрейнена к ноде в мировом пространстве - нужно не хило морщить мозг).

    Кстати, коннектить displacement к цвету SurfaceShader - это можно использовать вместо отснятия Z-канала, но потом - тайлить в афтере или фьюжене или где-нибудь еще (но не в фотошопе, если нужна сиквенция).
     
  5. alex_alv

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

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

    Это тоже не самый простой способ, но тоже интересный :)
     
Модераторы: Dark™, Skif

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