
1999 년부터 C ++, OpenGL, Glut 및 Cmake를 사용합니다
David McAllister 버전 3.0.0 2022 년 4 월 18 일
https://github.com/davemc0/particle.git에서 주최합니다. (이전에 15 년 동안 주최 : http://www.particlesystems.org.)
문서가 여기에 있습니다.
변경 로그가 여기 있습니다.
미래의 작업이 여기 있습니다.
입자 시스템 API는 모든 종류의 흥미로운 입자 시스템 기반 특수 효과 (주로 게임 및 기타 대화식 3D 그래픽을위한 자원으로 사용되었습니다. 버전 2.2는 600 명 이상의 개발자가 프로젝트에 사용되었습니다. 2009 년 내 인생이 Ray Tracing으로 전환했을 때 도서관의 유지 관리를 중단했지만 도서관을 공개적으로 효과적으로 호스팅하지 않았으므로 크게 죽었습니다.
최근에 API를 다시 방문하고 많은 개선 사항을 추가했습니다. 가장 중요한 것은 인라인 작업 모드 입니다. 동작은 이제 하나의 입자에 적용되는 인라인 함수로 구현됩니다. 응용 프로그램은 입자에 대한 루프를 소유하여 입자를 통한 단일 통과가 모든 동작을 수행 할 수 있도록합니다. 세 가지 주요 이유로 인해 성능이 크게 빠릅니다.
몇 가지 다른 주목할만한 업데이트 :
이 코드, CMake 및 C ++ 컴파일러 만 사용하여 Particlelib을 구축 할 수 있습니다. 외부 의존성이 없습니다.
그러나 예제와 데모는 또한 dmctools에 따라 다릅니다 : https://github.com/davemc0/dmctools.git
DMCTools에는 매트릭스 클래스, 이미지 스테일, 3D 벡터 클래스, 랜덤 숫자, 타이머, 3D 모델 로더 등 그래픽 도구 모음이 있습니다. API 또는 예제 데모가 아닌 PSPRAY 및 PARBENCH 데모에만 필요합니다. DMCTools는 저와 다른 사람들에 의해 저작권입니다.
필요한 모든 것을 구축하려면 다음에도 필요합니다.
Windows에서 GLUT_HOME 및 GLEW_HOME의 환경 변수를 설정했습니다. Linux 또는 Mac에서는 필요하지 않습니다.
기본 디렉토리에서 다음과 같은 작업을 수행하십시오.
mkdir build
cd build
cmake .. -G "Visual Studio 16 2019" -A x64
cd ..
그런 다음 명령 줄에서 빌드 할 수 있습니다.
cmake --build build/ --config Release
또는 Visual Studio에서 Build/Particlesolution.sln을 시작합니다.
분수를 렌더링하는 데 사용되는 입자 시스템의 OpenGL 및 Glut 기반의 예
두 번 클릭하여 프로그램을 시작하십시오.
'f'를 눌러 전체 화면을 만들 수 있습니다.
창을 마우스 오른쪽 버튼으로 클릭하여 메뉴를 팝업하십시오. 키보드 바로 가기는 메뉴에 나열되어 있습니다.
만지면 만지면 무작위로 데모를 통과합니다. 이것은 몇 시간의 가족의 재미를 제공해야합니다. 지루해지면 '공간'을 눌러 폭발을 일으킨다. 'm'을 눌러 멋진 모션 블러를 만들어냅니다. 더 정확하지만 느린 렌더링을 위해 입자를 뒤로 정렬하려면 'S'를 눌러 입자를 뒤로 정렬하십시오. 'P'를 눌러 각 입자가 렌더링되는 것을 변경하십시오.

이것은 놀이터와 동일한 데모 효과를 모두 실행하지만 그래픽을 수행하지는 않습니다. OpenGL 또는 GLUT를 사용하지 않습니다.
데모가 당신에게 효과가 없다면, 나는 기꺼이 도와 드리겠습니다. 시스템과 문제의 성격에 대해 가능한 한 자세한 내용을 포함시켜주십시오.
궁금한 점이 있으면 코드 기여 또는 제안서가 GitHub 문제를 사용하거나 저에게 연락하십시오.
