
С 1999 года, используя C ++, OpenGL, GLUT и CMAKE
Дэвид Макаллистер Версия 3.0.0 18 апреля 2022 г.
Размещен на https://github.com/davemc0/particle.git. (Ранее размещено в течение 15 лет по адресу: http://www.particlesystems.org.)
Документация здесь.
Изменение журнала здесь.
Будущая работа здесь.
API System Particle API послужил ресурсом для создания всевозможных спецэффектов на основе системы частиц, в основном для игр и другой интерактивной 3D-графики. Версия 2.2 использовалась в проектах более 600 разработчиков. Я отказался от технического обслуживания библиотеки в 2009 году, когда моя жизнь переключилась на трассировку лучей, но я фактически не принимал библиотеку публично, поэтому она в значительной степени вымерла.
Я недавно пересмотрел API и добавил много улучшений. Наиболее важным является режим встроенного действия . Действия теперь реализованы в встроенных функциях, которые применяются к одной частице. Приложение владеет петлей над частицами, позволяя одному проходу над частицей для выполнения всех действий. Производительность массово быстрее из -за этого по трем основным причинам:
Несколько других примечательных обновлений:
Строительство Partlelib может быть выполнено с использованием только этого кода, Cmake и компилятора C ++. У него нет внешних зависимостей.
Тем не менее, примеры и демонстрации также зависят от DMCTools: https://github.com/davemc0/dmctools.git
У DMCTools есть моя коллекция графических инструментов - класс матрицы, материалы изображения, 3D -векторный класс, случайные числа, таймер, 3D -загрузчик и т. Д. Это необходимо только для демонстрации PSPray и Parbench, а не API или примером демонстрации. DMCTools - авторское право на меня, и, возможно, других.
Чтобы построить все, что вам также понадобится:
Я устанавливаю переменные среды для Glut_home и Glew_home в Windows. Это не должно быть необходимо на Linux или Mac.
В главном каталоге сделайте что -то вроде:
mkdir build
cd build
cmake .. -G "Visual Studio 16 2019" -A x64
cd ..
Затем вы можете построить из командной строки:
cmake --build build/ --config Release
или запустить сборку/частицы. SLN в Visual Studio.
Пример систем частиц на основе OpenGL и GLUT, используемый для визуализации фонтана
Дважды щелкните, чтобы начать программу.
Нажмите «f», чтобы сделать его полноэкранным.
Щелкните правой кнопкой мыши в окне, чтобы вспомнить меню. Комплекты клавиатуры перечислены в меню.
Если вы не трогаете его, это будет случайным образом пройти через демонстрации. Это должно обеспечить часы семейного веселья. Если вам станет скучно, нажмите «пространство», чтобы вызвать взрыв. Нажмите «M», чтобы сделать прохладное размытие движения. Нажмите «S», чтобы сортировать частицы обратно в фронт для более правильного, но медленного рендеринга. Нажмите «P», чтобы изменить то, что каждая частица отображается как.

Этот работает все те же демо -эффекты, что и на игровой площадке, но она не делает никакой графики. Он не использует OpenGL или GLUT.
Если демонстрации не будут работать для вас, я был бы рад попытаться помочь. Пожалуйста, включите как можно больше деталей о своей системе и характере проблемы.
Если у вас есть какие -либо вопросы, вклады или предложения кода используют проблемы GitHub или свяжитесь со мной.
