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

Редактирование нормалей объекта.

Тема в разделе "Общие вопросы", создана пользователем Василий Пономарев 63681, 17 май 2011.

Модераторы: Артер
  1. Василий Пономарев 63681

    Василий Пономарев 63681 Знаток

    С нами с:
    08.02.2008
    Сообщения:
    173
    Симпатии:
    1
    Баллы:
    38
    САБЖ
    Хочу редактировать нормали объекта как мне вздумается. Знаю, что есть vодификатор Edit Normals, итам можно руками крутить как угодно, но эффекта нет от этого, модификатор словно игнорируется.
    Проверить это легко - после Edit Normals кладем обычный Edit poly и экструдим полики по нормалям - никаких изменений, что есть Edit Normal, что нет...

    Пробовал скриптом решить проблему:
    Код:
    obj = plane ()
    convertToMesh obj
    for v = obj.numVerts to 1 by -1 do
    (
    	getNormal obj v
    	setNormal obj v [1,0,0] -- set user normal direction
    )
    update obj
    эффекта тоже никакого!

    Как можно решить данную проблему?
    Всем заранее спасибо ))
     
  2. lis-220

    lis-220 Мастер

    С нами с:
    22.12.2008
    Сообщения:
    86
    Симпатии:
    2
    Баллы:
    131
    а что именно должно получиться?
    ведь edit normal это не изменение положение в пространстве ,а направление векторов этих полигонов.
    и видно эти изменения будет только при рендере.
    Вроде так.
     

    Вложения:

    • 2308862.jpg
      2308862.jpg
      Размер файла:
      519,5 КБ
      Просмотров:
      94
    • 2308863.jpg
      2308863.jpg
      Размер файла:
      550 КБ
      Просмотров:
      103
  3. Василий Пономарев 63681

    Василий Пономарев 63681 Знаток

    С нами с:
    08.02.2008
    Сообщения:
    173
    Симпатии:
    1
    Баллы:
    38
    Что именно должно получиться: мне нужно эмитить партиклы (или флюиды) с поверхности по направлению нормалей этой поверхности.
    По умолчанию нормали всегда перпендикулярны полигону - я хочу отклонить это направление, изменить нормали, ориентации полигона самого это вообще никак не касается. Однако эффект наблюдается только на шейдинге (как показано на твоем примере). В качестве проверки, есть ли эффект на геометрическом уровне, я делаю экструд по нормалям - наблюдается полное игнорирование редактирования нормалей....
    собсно, вот в чем вопрос )
     
  4. McArin

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

    С нами с:
    15.04.2006
    Сообщения:
    80
    Симпатии:
    1
    Баллы:
    7
    Все правильно. так оно и не получится.
    Модификатор Edit normal редактирует нормали вершин. именно они учитываются при рендере сглаженных поверхностей.
    а когда речь идет о выдавливании полигонов или генерации частиц программа работает с перпендикулярами к полигонам, что в геометрической терминологии тоже называется нормалью.

    выход здесь только один. создавать сглаженную высокоплигональную модель имитера. MeshSmooth или turbosmooth наверно помогут, но тормозить скорее всего будет беспощадно.
     
Модераторы: Артер

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