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

Помогите с Pflow Data Operator

Тема в разделе "3ds max", создана пользователем Nordicheskiy, 30 янв 2016.

  1. Nordicheskiy

    Nordicheskiy Пользователь сайта

    С нами с:
    30.01.2016
    Сообщения:
    10
    Симпатии:
    2
    Баллы:
    4
    В общем, начал изучать Data Operator, есть цель - создать что-то вроде Plexus эффекта. Т.е. нужно, чтобы каждый партикл соединялся с другими, находящимися на определенном расстоянии от него. Пока что получается соединить только пары близлежащих партиклов с помощью субоператора "Closest Particle Index", а вот как найти расстояние от одного партикла до всех остальных - я не понимаю.

    [​IMG]

    [​IMG]
     

    Вложения:

  2. Андрей Бельский

    Андрей Бельский Активный участник

    С нами с:
    20.12.2001
    Сообщения:
    404
    Симпатии:
    22
    Баллы:
    18
    может лучше глянуть в сторно синкин партиклс? Там с єтим намног опроще.
     
  3. Nordicheskiy

    Nordicheskiy Пользователь сайта

    С нами с:
    30.01.2016
    Сообщения:
    10
    Симпатии:
    2
    Баллы:
    4
    Видел этот урок, но хотелось бы повторить в Pflow, т.к. в TP я ноль)
     
  4. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    к сожалению,Пфлоу не работает с массивами и циклами, но чисто теоретически можно так - найдя ближайшую частицу, строим к ней мостик и запоминаем её ID, далее копируем по цепочке Дата Оператор, но с маленьким изменением - на логический триггер оператора Closest Particle... ( треугольник справа вверху) подаём условие, что ID найденной частицы не равен ранее сохранённому ID, и теоретически тогда должна искаться следующая ближайшая частица
    Я пытался сделать нечто подобное, но у меня не получилось, попробуй ты
     
    Nordicheskiy нравится это.
  5. Nordicheskiy

    Nordicheskiy Пользователь сайта

    С нами с:
    30.01.2016
    Сообщения:
    10
    Симпатии:
    2
    Баллы:
    4
    Спасибо за совет, попробую
     
  6. Андрей Бельский

    Андрей Бельский Активный участник

    С нами с:
    20.12.2001
    Сообщения:
    404
    Симпатии:
    22
    Баллы:
    18
    Нужно использовать инструментарий под задачу. У ПФ есть своя ниша, но делать чтото более менее сложное лучше с помощью ТП. Тем более есть три ДВД по ТП которіе дают отличніе базовіе знания, чего не скажешь о дата опреаторе в ПФ. Еслибі разработчки ПФ не уволили из автостола может біть все біло бі намного лучше, но имеем т очто имеем...
     
  7. moreeasy

    moreeasy Знаток

    С нами с:
    10.08.2014
    Сообщения:
    190
    Симпатии:
    47
    Баллы:
    22
    По какой теории?!
    Было четко указано - искать ближайшую частицу в пространстве, ограниченном сферой с таким то радиусом и телесным углом во столько то градусов!?
    Нашли? - Нашли!
    А теперь еще и булевую операцию добавляем триггером:
    ID частицы найденной, соответствует само себе?
    - Если да, то False
    - А если даже и True (в гипотетическом случае несоответствия) то, все равно, все в корзину! Крантик то откроется, но схема сольет все те же координаты ближайшей частицы.
     
    Последнее редактирование: 7 фев 2016
  8. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    возможно. Я-же написал, что у меня эта схема не сработала, и я не стал ковыряться дальше, были идеи сохранять в New и потом считывать, но не стал закручивать себе мозги, учитывая, что в ТР это можно сделать проще
     
  9. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.092
    Симпатии:
    87
    Баллы:
    74
    и кстати, столкнувшись с проблемой "поиска самой себя", я просто сделал две системы, и искал ближайшую из соседней
    И возвращаясь к дискуссии по поводу "универсальной программы" - в той же Гудини или Кси мы получаем массив частиц внутри заданного радиуса, а не одну, как в ПФлоу, и жизнь резко упрощается
     
    Последнее редактирование: 7 фев 2016
  10. Nordicheskiy

    Nordicheskiy Пользователь сайта

    С нами с:
    30.01.2016
    Сообщения:
    10
    Симпатии:
    2
    Баллы:
    4
    Да, так и выходит.
    Для теста пытался сделать 2 дата оператора, в первом нашел ближайшие ID партиклов и соединил их, а во втором взял просто рандомные ID вместо ближайших, но при этом макс просто зависает)
     
  11. moreeasy

    moreeasy Знаток

    С нами с:
    10.08.2014
    Сообщения:
    190
    Симпатии:
    47
    Баллы:
    22
    На мой взгляд, очень даже верная идея! Не могу утверждать (равно как и отрицать), что это единственный путь, но при всей его громоздкости другого пока не нахожу...
    Приношу свои извинения за то, что перечу своим правилам не предоставляя доказательства. Но если честно, я сейчас не в состоянии проштудировать весь алгоритм в data_plexus_test2.max, любезно предоставленный Nordicheskiy.
     

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