1982년에 Lucasfilm Ltd. 의 연구원인 윌리엄 리브즈(William T. Reeves) 는 영화 스타트랙 2: 칸의 분노(Star Trek II: The Wrath of Khan)를 작업했습니다. 영화의 대부분은 제네시스 장치 주변에서 전개됩니다. 제네시스 장치는 황량하고 생명이 없는 행성의 물질을 재구성하고 식민지를 위한 거주지를 생성할 능력이 있는 일종의 어뢰입니다. 과정 도중 행성은 불의 잔물결로 뒤덮이고 행성은 “지구처럼 만들어집니다".
컴퓨터 그래픽에서 매우 일반적이고 유용한 기술인 입자 시스템(particle system)은 이러한 특정 효과를 발휘하면서 새로운 용어로 만들어졌습니다.
“입자 시스템은 작은 입자들이 뭉쳐 불명확한 물체를 형성하는 집합체입니다. 시간이 지나면서 입자들은 시스템으로 형성되고 시스템 내부에서 이동 또는 변형되며 결국 사라집니다.”—윌리엄 리브즈,"입자 시스템—불명확한 형체의 클레스 모델링 기술,"(A Technique for Modeling a Class of Fuzzy Objects); ACM Transactions on Graphics 2:2 (1983년 4월), 92.
1980년 초기 이후 입자 시스템은 불, 연기, 폭포, 안개, 잔디, 거품 등과 같은 불규칙한 형태의 다양한 자연 현상을 모델링하는 무수히 많은 비디오 게임, 애니메이션, 디지털 예술 작품에 사용되었습니다.
본 절에서는 입자 시스템을 프로그래밍을 구현하기 위한 전략을 집중적으로 살펴 보겠습니다. 코드를 어떻게 구성할까요? 개별 입자와 전체시스템과 관련된 정보는 각각 어디에 저장해야 할까요? 살펴볼 예제는 입자 시스템과 연관된 데이터를 관리하는 것에 중점을 둡니다. 예제는 입자의 단순한 모양들을 이용하고 가장 기본적인 행동들만(중력과 같은) 적용합니다. 그러나 입자를 구현하고 행동을 계산하기 위해 이러한 프레임워크를 이용하고 좀 더 흥미로운 방법으로 구축함으로써 다양한 효과를 얻을 수 있습니다.
위에 기술된 인용문처럼 입자 시스템은 단순한 객체들의 집합입니다. 튕기는 공을 구현하는 무버(Movers)의 배열과 같이 객체들의 집합을 프로그래밍하는 것에 대해서 전에 다뤄봤습니다. 그러나 입자 시스템에 대해 집합은 훨씬 더 복잡합니다. 집합은 크기가 다양합니다. 때론 입자가 없을 수도 있으며 때때로 열 개 또는 만 개가 있을 수 있습니다.  집합을 구성하는 입자가 아니라 집합 자체에 행동과 속성이 있습니다. 목적은 다음과 같은 프로그램을 작성하는 것입니다.
var ps = new ParticleSystem();

draw = function() {
    background(255, 255, 255);
    ps.run();
};
해당 코드에서는 아무런 단일 입자도 참조되지 않았습니다. 그러나 결국에는 스크린은 곳곳을 날아다니는 입자들로 가득찰 것입니다. 이제 여러 객체 유형을 갖는 프로그램과 객체들의 다른 집합을 기록하는 객체를 만들어 볼 것입니다. 이를 이용하여 강력한 입자 시스템을 생성하며 다른 면에서도 강력한 프로그램을 만들어 볼 수 있습니다.
입자 시스템을 프로그램하는 방법을 배워볼 때 두 개의 심화된 객체 지향적 프로그래밍 기술인 상속성(inheritance)다형성(polymorphism)을 이용할 것입니다. 지금까지 봤던 예제는 항상 "무버(movers)" 또는 “진자(oscillators)”와 같은 단일 유형의 객체의 배열이었습니다. 상속성 (그리고 다형성)을 이용하여 서로 다른 유형의 객체들을 포함하는 단일 배열을 저장하는 편리한 방법을 배울 것입니다. 이렇게 하면 입자 시스템은 단일 유형의 입자 시스템일 필요가 없습니다.
본 섹션에서는 입자 시스템의 가장 전형적인 사용을 살펴 보겠습니다. 그러나 본 단원에서의 입자는 특정한 방법으로 보이거나 행동한다는 사실이 상상을 제한해서는 안 됩니다. 여기서 볼 입자 시스템이 빛이 나고 앞으로 날아가며 중력으로 떨어진다고 해서 모든 시스템이 그러한 특성들을 반드시 가져야 하는 것은 아닙니다. 여기에서는 실제로 많은 요소의 시스템을 기록하는 방법에 중점을 두겠습니다. 이러한 요소들을 무엇을 수행하고 어떻게 보이는지는 여러분에게 달려 있습니다.