Комментарии 8
Немного про макаронины и большие силы. Я от физики вообще и от ее компьютерного моделирования в частности весьма далек. Но мне вот сейчас в голову пара мыслей пришла.
1) Возможно количество циклов пересчета коллизий должно коррелировать со скоростью движения и допустим близостью и скоростью движения ближайших объектов?
2) Может стоит использовать какие-то эвристики для предсказания коллизий?
Идеи, наверняка, не очень оригинальные, так как лежат на поверхности. Но всё же…
А что вы об этом думаете?
1) Возможно количество циклов пересчета коллизий должно коррелировать со скоростью движения и допустим близостью и скоростью движения ближайших объектов?
2) Может стоит использовать какие-то эвристики для предсказания коллизий?
Идеи, наверняка, не очень оригинальные, так как лежат на поверхности. Но всё же…
А что вы об этом думаете?
Для параллельного вычисления больше подходят простые операции, равно применяемые к каждому из моделируемых объектов.
Если добавить эвристику на стороне GPU, она будет потреблять вычислительные такты, и её добавление должно будет окупаться. Но окупаться оно не будет, потому что если каким-то образом для медленных частиц снизить объём вычислений, то всегда найдётся одна быстрая частица, требующая всего объёма вычислений. И получится, что 1023 ядра ждут одно, которое обрабатывает эту одну частицу, и время выполенения операции над одной частицей не будет меньше, чем над всеми.
Если добавить эвристику на стороне GPU, она будет потреблять вычислительные такты, и её добавление должно будет окупаться. Но окупаться оно не будет, потому что если каким-то образом для медленных частиц снизить объём вычислений, то всегда найдётся одна быстрая частица, требующая всего объёма вычислений. И получится, что 1023 ядра ждут одно, которое обрабатывает эту одну частицу, и время выполенения операции над одной частицей не будет меньше, чем над всеми.
Пробовал работать с вычислительными шейдерами в юнити, но почему-то не получилось отправить на видеокарту буфер с массивом структур, в каждой из которых был ещё один массив данных. Видимо для таких задач нужно использовать CUDA.
На анимированной картинке волосы, которые совершенно не спутываются, например, от статического электричества.
Это выглядит так, будто это не волосы, а шторы из нитей.
Это выглядит так, будто это не волосы, а шторы из нитей.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Физическое моделирование на GPU с использованием compute shader в среде Unity3D