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

Код Матрицы в Houdini

Тема в разделе "Houdini", создана пользователем Artsega, 2 фев 2013.

Модераторы: виталий антоновас
  1. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Здрасте! А кто сможет подсказать как сделать фирменный дождик из стекающих по монитору катакан?



    Тут сразу 2е проблемы возникают.

    Первая чем генерить сами катаканы. Как вариант, может быть нодой POP Network далее Source. Но как тогда сделать что бы Source испускал нужные мне символы?

    Вторая. Где хранить сами символы. Они ведь должны где то лежать, а потом из нужно доставать и рандомом генерить.

    Houdini мозг просто разрывает, если есть тут спецы подскажите кто бы как сделал?
     
  2. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Вот они уже вниз стекают.

    Но как вместо точек сделать объекты?

    К примеру чайник, сфера и куб что бы падали в случайном порядке?
     

    Вложения:

    • 2989822.jpg
      2989822.jpg
      Размер файла:
      335 КБ
      Просмотров:
      103
  3. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    если просто нужен такой эффект,то есть он в АЕ,стандартный,оч круто смотрится), но если принципиально нужно в Гудини,то вот такой вот можно склепать "бюджетный" вариант.

    1) С помощью ноды Copy копируем наши объекты на точки.Как сделать чтоб они рандомно подавались на копирование? Сделаем switch, который позволяет переключать геометрию,которую нужно подавать на копирование. В ноде Copy создаём стамп, в него пишем этот экспрешн. Суть-random($PT) задаёт некий массив чисел, fit01() говорит в каком диапазоне брать числа,в данном случае от 0 до 2-х. Round() просто округляет все значения,что находятся в скобках.Так,теперь у нас есть переменная содержащая в себе рандомные целые числа от нуля до 2-х.
    2) Теперь в switch пишем вот такой вот экспрешн.Суть такова,что он берёт из copy наш стамп(а мы помним,что там рандомные числа) и подставляет их в себе в это поле.0-первый вход,1-второй вход,2-третий вход.Если у вас будет,например, 4 объекта,то в copy пишем в експрешне не 2,а 3 и получится 4 значения.
    В принципе,любое рандомное копирование объектов по точкам будет содержать вышеприведённую схему(в принципе,не в точности!!)
    ну,вот как-то так.направление я вам дал,дерзайте)
     

    Вложения:

    • 2990277.jpg
      2990277.jpg
      Размер файла:
      238,1 КБ
      Просмотров:
      98
    • 2990278.jpg
      2990278.jpg
      Размер файла:
      249,7 КБ
      Просмотров:
      105
  4. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    нода File считывает нужную вам инфу с диска.Вы может хранить в папке секвенцию геометрических объектов,картинок.А потом рандомно их выдёргивать и копировать на свои точки.
     
  5. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Виталий, всё получилось!!! Сделал как вы сказали, нода switch то что нужно, теперь буду ей тоже пользоваться.

    В AE делать не хочу, сейчас Гудини изучаю. Уже где то год потихоньку изучаю и только сейчас начинаю саму логику и возможности понимать. Но пока немного сложно, все эти связки экспрешенов между нодами сложновато понять, даже после Maya.

    А можно ещё вопрос?

    А как объекты в пыль превращать? Я логотип через File считал и хотел что бы он в такую песочную пыль превращался и что бы ветер его эффектно уносил с такими завитками. Я начал делать как в уроке на оф сайте Sidefx где мультяшный герой бежит, потом его пронизывает американский мяч для регби и герой превращается в пыль.

    Там всё с помощью нод Cookie сделано. Я тоже так пытался но из за сложной геометрии логотипа cookie глючили, какие то дополнительно рваные обрывки геометрии появлялись, как я не пытался всё равно не получилось. В справки потом прочитал что при работе с этой нодой геометрия должна быть выпуклая, и не такая сложная как у меня.

    А как ещё можно твёрдый объект в частицы превратить?
     
  6. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    хм,дело в том,что в том уроке не совсем геометрия в пыль превращалась.там с помощью cookie делалась граница во время разрезания объекта,и уже эта сама граница и выступала эмитером для частиц.просто исчезновение объекта(вот так,напрямую,без композа) мне кажется только cookie и можно сделать.Скиньте сцену,я гляну,может что-то можно придумать,чтоб резалось нормально.Ещё вариант--foreach.ща накидаю.
     
  7. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Ну да, да! Всё правильно, там создавалась граница которая испускала частица! А сама геометрия исчезала с помощью cookie.

    foreach надо посмотреть. Сцену щас скину! Вам ещё раз большое спасибо, так хоть с кем то можно пообщаться на эти темы, а то Гудиньщиков совсем мало.
     
  8. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    такс.исчезновение объекта.
    на картинке ниже общая сетка.теперь по порядку.
    Coockie--там выставляем эти значения,это обозначает,что мы режем геометрию,но оставляем две части в целости.(1)
    там же,в группах ставим галку,чтоб образовывались группы.Нас интересует ain. потом,в ноде delete мы указываем удалять всё,кроме ain.сразу сделайте второй delete только там режим на противоположный.получается,что та половинка,которая подаётся на foreach и будет сейчас уничтожаться.(2)

    цепляем foreach.в свитке for выбираем primitive. обязательно прочтите в хелпе для чего нужен foreach,сильная нода,очень нужная!Этот режим,что мы щас выбрали позволяет работать с каждым примитивом в отдельности.Заходим во внутрь.(3)
    в ноде transform ставим эти настройки.Суть такова--экспрешн в pivot это позволяет выставить пивот для каждого примитива отдельно и он будет всегда в центре полигона.Scale тут понятно,каждый примитив,попадающий в foreach будет скейлиться в ноль относительно СВОЕГО пивота.Fuse просто сливает точки(чтоб лишняя информация не мешалась).
    потом просто сливаем нодой merge два куска. и получается модель исчезает за счёт передвижения бокса.

    Ну,а уж как партиклы прикрутить,тут из того же урока я думаю проблем не будет?

     

    Вложения:

    • 2993952.jpg
      2993952.jpg
      Размер файла:
      294,1 КБ
      Просмотров:
      117
    • 2993953.jpg
      2993953.jpg
      Размер файла:
      55,5 КБ
      Просмотров:
      107
    • 2993954.jpg
      2993954.jpg
      Размер файла:
      64,3 КБ
      Просмотров:
      106
  9. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Ух ты хитро как! Как бы и мне с этими группами разобраться...

    Партиклы прикручу, мне поучится самое то будет!

    Вообщем всё отлично! Но у меня то геомерия не выпуклая!

    Я файлик в аттаче прикреплю, гляньте пожалуйста, его можно заставить исчезнуть?

    http://depositfiles.com/files/h0cz37l90
     
  10. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    второй вариант.
    так же cookie режем объект.оставляем половинки целыми.делаем группы в этой же ноде.потом кидаем subdivide в группе указываем опять ain.теперь полигоны будут биться на мельчайшие части(эту операцию делать не обязательно,объясню ниже)
    потом опять с помощью delete удаляем всё,кроме нужной нам группы,(которая будет сейчас рассыпаться).
    подаём в POP.внутри делаем как на картинке.
    prim center ordered--это значит что частица будет рождаться в центре полигона.
    use first context--это значит за источник будет браться геометрия,поданная на первый вход.
    вкладка Birth.
    $F==1 означает,что все частицы рождаютс я соразу,в первом кадре
    5800 это общее количество частиц,которые буду рождаться.эта цифра должна совпадать с количеством полигонов геометрии,поданной в POP.сколько поликов,столько и частиц будет у нас.
    остальные значения по нулям--это чтоб не эмитились постоянно наши партиклы
    С ноды delete у нас два выхода,один на POP второй на Faset. в этой ноде мы включаем unique points,это позволяет их "расклеить" между собой.и потом отсюда подаём на Primitive,во второй вход которого пихаем выход из POP.схема проста--получается,что движением каждого полигона будет управлять своя частица!(кол-во же у нас совпадает,частицы стоят по центру полигона) а нодой primitive мы как бы связываем частицу с полигоном.потом опять мержим и получается что часть шарика рассыпается на мелкие части.в этом и была суть subdivide в начале(чтоб разбить нужную часть модели на более мелкие части)
     

    Вложения:

    • 2993982.jpg
      2993982.jpg
      Размер файла:
      275,3 КБ
      Просмотров:
      110
    • 2993983.jpg
      2993983.jpg
      Размер файла:
      214,8 КБ
      Просмотров:
      97
    • 2993984.jpg
      2993984.jpg
      Размер файла:
      209,4 КБ
      Просмотров:
      118
    • 2993985.jpg
      2993985.jpg
      Размер файла:
      240 КБ
      Просмотров:
      117
    • 2993986.jpg
      2993986.jpg
      Размер файла:
      78,7 КБ
      Просмотров:
      104
  11. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    продолжение картинок.см ниже.
     

    Вложения:

    • 2993992.jpg
      2993992.jpg
      Размер файла:
      206,1 КБ
      Просмотров:
      113
    • 2993993.jpg
      2993993.jpg
      Размер файла:
      126,4 КБ
      Просмотров:
      109
  12. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    через foreach мне кажется любую геометрию можно прогнать)))
    а вот с группами я бы не стал затягивать--это одна из основных основ в Гудини!
     
  13. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5
    Воот! Я значит на правильном пути!)

    foreach что то знакомое, урок ещё есть где бэт мобиль исчезает, его как раз помоему foreach'ем и сделали. Я пробовал повторить на простом примере у меня получилось, но как именно что работает я так и не осознал. Слишком много вот этих экспрешен связок между нодами.

    А можете суда исходник в студию кинуть, вот этих принт скринов выше, исчезновение шарика? Я хочу покопаться, посмотреть как это работает!

    Вам в очередной раз спасибо, мой уровень знаний теперь чуть подрастёт))
     
  14. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
  15. Artsega

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

    С нами с:
    13.01.2009
    Сообщения:
    56
    Симпатии:
    0
    Баллы:
    5

    Всё, открывается! Эффект прикольный получается! Буду разбираться тогда.

    А в cookie1 зачем столько групп то? Там и AIM и BIN и ещё 4...
     

    Вложения:

    • 2994097.jpg
      2994097.jpg
      Размер файла:
      589,3 КБ
      Просмотров:
      85
  16. виталий антоновас vip

    виталий антоновас Moderator Команда форума

    С нами с:
    02.11.2006
    Сообщения:
    619
    Симпатии:
    67
    Баллы:
    280
    каждая операция заносится в группу.
     

    Вложения:

    • 2994112.jpg
      2994112.jpg
      Размер файла:
      286,4 КБ
      Просмотров:
      121
Модераторы: виталий антоновас

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