Notifications
Clear all

[Closed] object emitter for Parray

How to assign an object emitter for Parray via MAXscript?

3 Replies
1 Reply
(@decapitator)
Joined: 11 months ago

Posts: 0

By reading the MaxScript help if you just open it up and search the index for PArray the first thing on the page is:

<PArray>.emitter Node default: undefined
 The object which acts as an emitter.

And if you mean the particle shape scroll down to

<PArray>.particleType Integer default: 0
 
 The type of particle emitted:
 0- Standard Particle (Uses one of several standard particle types, such as triangle, cube, tetra, and so on.)
 1- MetaParticles (Uses Metaball particles. These are particle systems in which the individual particles blend together in blobs or streams.)
 2- Object Fragments (Creates particles out of fragments of an object.)
 3- Instanced Geometry (Generates particles that are instances of either an object, a linked hierarchy of objects, or a group.)

And

<PArray>.instancingObject Node default: undefined
 The object which is instanced.

of course i search help before asking…

may be my question wasn’t correct
I want that my Parray system to stay unchanged during animation
but emitter object should be changed in every frame

Set up a preRenderEval / preRenderFrame callback that changes the property, or – easier – stick a script controller on some object (must be an object that renders so that it gets evaluated, and can’t be on a Custom Attribute block parameter) that changes it.

For example, if you have a scene with PArray01, a bunch of geoSpheres (all with different radius or material or whatever), create, say, a Box and put a Float Script controller on its Length property or so with code such as:


mySpheres = $GeoSphere*
$PArray01.instancingObject = mySpheres[random 1 mySpheres.count]
23.6162

You’ll want to clean that up by making $PArray01 a proper variable (3ds Max r…8+?) and define the objects you want to include in a variable or custom attribute block or scripted plugin or … etc. that saves with the scene and can be manipulated. But the above is the basic core idea.