Particle flow вопрос
- Автор темы k3b3
- Дата создания
без экспериментов точно не скажу, там разные варианты возможны, но в одном из вариантов мы юзаем Select Obj в режиме партиклес, где выбираем 1-ю систему с шаром, и через Object или Geometry ( не помню точно) получаем позицию и радиус допустим ближайшего партикла ( если он один, то он и будет ближайший), затем всем партиклам 2-й системы задаём эту самую позицию, но умноженную на случайное число и множитель, равный радиусу, тогда они должны распределиться внутри этого шара
Второй вариант сложнее и хитрее, с использованием Amout change, но тут я на глазок ничего сразу обьяснить не могу
Второй вариант сложнее и хитрее, с использованием Amout change, но тут я на глазок ничего сразу обьяснить не могу
Не очень понятно только. Сфера имеет векторные координаты X Y Z.
Как умножить вектор (позицию сферы), чтобы получить частицы в пределах радиуса этой сферы ?
Там даже функции такой нет.
И еще вопрос - как можно в data operator продублировать обычный оператор position object с выпадающим стеком Volume? По сути в этом наверное задача - взять частицу как объект и в ее объеме рождать частицы
Как умножить вектор (позицию сферы), чтобы получить частицы в пределах радиуса этой сферы ?
Там даже функции такой нет.
И еще вопрос - как можно в data operator продублировать обычный оператор position object с выпадающим стеком Volume? По сути в этом наверное задача - взять частицу как объект и в ее объеме рождать частицы
кроме координат, партикл имеет ещё и скейл. Берём позицию и умножаем на рэндомное число в пределах +- радиус и получаем случайные позиции внутри этого радиуса
Но забей, не годится, я сделал этим способом, всё работает но фликует, то есть в каждом кадре случайные позиции вычисляюся заново и частицы вместо того чтобы просто лететь вслед, ещё и беспорядочно мельтешат, я пробовал вычислять эту величину только один раз вначале с помощью New in Event, не вышло, эта тупая скотина вообще перестаёт работать, поэтому можно сделать очень просто - 2 парралельных ивента, в 1-м шар как партикл инстанс, одна частица, во 2-м туча частиц, шар использован как Position Obj, и оператор Speed инстансом в обоих ивентах, они движутся вместе, только исходный шар нужно подогнать под позицую того, который партикл инстанс.
По вопросу - нельзя
Но забей, не годится, я сделал этим способом, всё работает но фликует, то есть в каждом кадре случайные позиции вычисляюся заново и частицы вместо того чтобы просто лететь вслед, ещё и беспорядочно мельтешат, я пробовал вычислять эту величину только один раз вначале с помощью New in Event, не вышло, эта тупая скотина вообще перестаёт работать, поэтому можно сделать очень просто - 2 парралельных ивента, в 1-м шар как партикл инстанс, одна частица, во 2-м туча частиц, шар использован как Position Obj, и оператор Speed инстансом в обоих ивентах, они движутся вместе, только исходный шар нужно подогнать под позицую того, который партикл инстанс.
По вопросу - нельзя
Вот по первому варианту вопрос. Просто из интереса.
Позиция - это же 3 координаты? Ты говоришь берем позицию и умножаем на рэндом число. Т.е вектор умножаем на рэндом - получается просто линия из частиц. Скинь скрин из дата оператора плиз. Есть урок из цикла turbosquid, там показано как залочить частицы. Попробую, может получится.
По 2му варианту - не совсем понял.
Позиция - это же 3 координаты? Ты говоришь берем позицию и умножаем на рэндом число. Т.е вектор умножаем на рэндом - получается просто линия из частиц. Скинь скрин из дата оператора плиз. Есть урок из цикла turbosquid, там показано как залочить частицы. Попробую, может получится.
По 2му варианту - не совсем понял.
По 1му варианту - пока заморочился просто со сферой - геометрией.
В data operator сначала
Object sphere - random surface position (на вход добавляем New in event) - output new (выставляем приоритет выполнения 1 - записываем в канал, чтобы эта позиция расчитана 1 раз в начале эвента и выполнялась каждый кадр)
После object sphere еще ставим Geometry (point position) на вход P ставим output new с нашими записанными данными, НУ И после этого ставим output standart (порядок выполнения 2).
Соответственно работает . Не фликует, но точки на поверхности сферы.
Если мы меняем random surface position на random volume position - вылезает корявая хрень.
Также нужно как-то заменить сферу - геометрию на частицу - геометрию
В data operator сначала
Object sphere - random surface position (на вход добавляем New in event) - output new (выставляем приоритет выполнения 1 - записываем в канал, чтобы эта позиция расчитана 1 раз в начале эвента и выполнялась каждый кадр)
После object sphere еще ставим Geometry (point position) на вход P ставим output new с нашими записанными данными, НУ И после этого ставим output standart (порядок выполнения 2).
Соответственно работает . Не фликует, но точки на поверхности сферы.
Если мы меняем random surface position на random volume position - вылезает корявая хрень.
Также нужно как-то заменить сферу - геометрию на частицу - геометрию
Вложения
-
547 КБ Просмотров: 314
-
513,4 КБ Просмотров: 305