A per object attribute lets you set the attribute value for all particles of the object collectively with a single value. For instance, the per object color attribute lets you set a single color for all the particles in the object.
A per particle attribute lets you set the value of the attribute individually for each particle of the object. For example, the per particle rgbPP attribute lets you set a unique color for each particle. Though there is only one rgbPP attribute in a particle object, the attribute holds the value for each particle’s color value. The attribute holds the values in an array. An array is similar to a list. Arrays are appropriate for storing data which must be accessed in an unpredictable order, in contrast to lists which are best when accessed sequentially.
Although per particle attributes are best for creating complex effects, you can’t keyframe them. You can keyframe per object attributes. In this lesson, you add a per particle color attribute so you can give different particles different colors.