Search
Write a publication
Pull to refresh
154
0
Александр Бусаров @MrShoor

Пользователь

Send message
Ну в реалтайме память выделять — это самоубиство. Конечно же что-то типа пула. Поскольку частицы рождаются и умерают в процессе полета, некоторые раньше, некоторые позже, то посреди массива частиц образуются уже мертвые частицы. Я пробегаю по массиву, и оживляю частицы. Такой вот пул. Ну а если не хватает «трупов» частиц, то выделяю дополнительно кусок памяти, равный 20% от размера текущего массива частиц.
Ну в уравнении движения этой составляющей и не будет. Просто вектор начальной скорости задается с некоторым разбросом, и у каждой частицы своя начальная скорость.
Да, программу на VB писал не я, а сам заказчик. И нужно было добавить визуализатор. VB я знаю только на уровне синтаксиса, а Delphi очень хорошо, кроме того я знал COM и соединить Delphi и VB для меня большого труда не представляло. Поэтому именно такой выбор.
CPU версии (первые два блина из статьи) проводились на AMD Athlon 64 x2 3800 (2.0ГГц на ядро). Видеокарта если мне не изменяет память — была такая же как и сейчас, GF250.
GPU верисия писалась и тестировалась уже на AMD Athlon II X4 630 (2.8ГГц на ядро), и на той же видеокарточке GF250.
Не было цели провести точные рассчеты производительности, было лишь требование, чтобы оно работало комфортно на современном железе. Ведь ПО нужно было не для продажи в офисы, но и суперкомпьютер собирать для этих целей было бы глупо. Так что пусть растет FPS от апгрейдров, я не против.
midomi подсказывает что это The Ventures — Hawaii Five-O
Сам модуль с частицами написан на Delphi. Работа с модулем шла из программы, написанной на vb.net через COM. Грязнее вышло прежде всего из-за компрессии видео. В окне оно смотрится значительно чище. К сожалению видео записывал не я. Конечно 100% реализма получить не удалось, но то что уже вышло — уже удовлетворяет заказчика. Я бы лично еще хотел сюда добавить решение с гидравлическими ударами. Их хорошо заметно на втором ролике на красных фонтанах, когда струя резко меняет свою мощность. По падающей воде происходит гидравлический удар от набирающей силы струи, получается довольно красивый эффект, и много много мелких капель вокруг.
Парабола для GPU — это ломаная линия, а это несколько вершин. Ломаную линию точно так же пришлось бы рассчитывать в реалтайме. Так что я думаю что не проще
12 ...
49

Information

Rating
Does not participate
Location
La Jolla, California, США
Date of birth
Registered
Activity