Pull to refresh

Comments 8

Немного про макаронины и большие силы. Я от физики вообще и от ее компьютерного моделирования в частности весьма далек. Но мне вот сейчас в голову пара мыслей пришла.
1) Возможно количество циклов пересчета коллизий должно коррелировать со скоростью движения и допустим близостью и скоростью движения ближайших объектов?
2) Может стоит использовать какие-то эвристики для предсказания коллизий?

Идеи, наверняка, не очень оригинальные, так как лежат на поверхности. Но всё же…
А что вы об этом думаете?
Для параллельного вычисления больше подходят простые операции, равно применяемые к каждому из моделируемых объектов.

Если добавить эвристику на стороне GPU, она будет потреблять вычислительные такты, и её добавление должно будет окупаться. Но окупаться оно не будет, потому что если каким-то образом для медленных частиц снизить объём вычислений, то всегда найдётся одна быстрая частица, требующая всего объёма вычислений. И получится, что 1023 ядра ждут одно, которое обрабатывает эту одну частицу, и время выполенения операции над одной частицей не будет меньше, чем над всеми.
Пробовал работать с вычислительными шейдерами в юнити, но почему-то не получилось отправить на видеокарту буфер с массивом структур, в каждой из которых был ещё один массив данных. Видимо для таких задач нужно использовать CUDA.
CUDA — это просто другое API. Методы передачи данных в видеопамять похожи. Если у вас были массивы в структурах, значит там был не сам массив, а четырёхбайтный адрес. То есть, следовало записать данные массивов в буффер тоже.
Хм, спасибо за ответ. Тогда буду разбираться, как передавать значения.
На анимированной картинке волосы, которые совершенно не спутываются, например, от статического электричества.
Это выглядит так, будто это не волосы, а шторы из нитей.
Волосы в модели друг с другом не взаимодействуют. Это для простоты, чтобы не объяснять слишком много.
Sign up to leave a comment.

Articles