MAXScript Extensions > MAXScript Extensions for Particle Flow > Particle Flow Classes > Operators > Material and Mapping >

# Mapping_Object : Helper

    Mapping_Object- superclass: helper; super-superclass:node -19:0 - classID:#(1395943177, 515064320)

Value > MAXWrapper > Node > Helper >Mapping_Object

| Particle Flow - Quick Navigation

Description:

The Mapping_Object operator assigns mapping to particles by taking mapping values from reference object(s). For every particle, the Mapping Object operator finds the closest point on reference geometry, and takes the mapping values and material ID from this point, then assigns these values to the particle.

If a particle enters the event with mapping already assigned, you can blend the mapping values to avoid a jump in color. Blending can occur either by time or by distance from the reference geometry.

The Mapping_Object operator was first added to 3ds Max as part of the Creativity Extension to 3ds Max 2009 and became an integral part of 3ds Max 2010. It was previously available in the Particle Flow Tools Box #1.

Constructor:

    Mapping_Object...

Properties:

    <Mapping_Object>.Mapping_Type : integer

Get/set the selection index of the Type drop-down list.

Possible values are:

0 - Once On Every Entry (default)

1 - Continuous

    <Mapping_Object>.Acquire_SubMaterial_Index (Acquire_Sub_Material_Index) : boolean

Get/set the state of the Acquire Sub-Material Index option.

When set to true, the Mapping Object operator assigns the material ID from the nearest face to each particle. If the current event or a previous event has a material operator that uses the reference surface material, this option matches particle coloring to the reference surface. This allows you to blend particles to the reference surface for Multi/Sub-Object materials.

    <Mapping_Object>.Uniform_Color_Per_Particle : boolean

Get/set the state of the Uniform Color Per Particle option.

## Mapping From Objects:

    <Mapping_Object>.Mapping_From_Objects : node array

Get/set the node array specifying the geometry objects to acquire mapping from.

    <Mapping_Object>.Static_Objects: boolean

Get/setthe state of the Static Objects option. When set to true, the operator can assume that the geometry objects are not animated in any way and can acquire the geometry data just once.

    <Mapping_Object>.Animated_Surface : boolean

Get/set the state of the Animated Surface option. When set to true, the operator will evaluate the geometry of all objects on every frame to take surface deformations from modifiers or sub-object animation into account. It will only be used if the .Static_Objects property is set to false.

## Mapping Channels:

    <Mapping_Object>.Acquire_From_Mapping_Channels : boolean array

Get/set the array of Booleans corresponding to the state of the 32 mapping channel buttons.

    <Mapping_Object>.Use_Vertex_Color : boolean

Get/set the state of the Vertex Color option.

## Mapping Variation:

    <Mapping_Object>.U_Variation : percent

Get/set the U Variation percent value.

    <Mapping_Object>.V_Variation : percent

Get/set the V Variation percent value.

    <Mapping_Object>.W_Variation : percent

Get/set the W Variation percent value.

These controls add variation to the mapping values assigned. The variation value is a percentage of the standard 0.0-1.0 mapping range. For example, if U Variation value is 20%, then the U mapping assigned to a particle can vary by up to 0.2 from the reference geometry mapping U value.

    <Mapping_Object>.Exclude_Tiling : boolean

Get/set the state of the Exclude Tiling option.

When set to False, variations set by U/V/W Variation can cause mapping values to go below 0.0 or above 1.0. With non-tiling textures, this can cause a visual jump in coloring.

When set to True, mapping values are clamped the 0.0-1.0 range. If the original mapping value is below 1.0, then adding the variation won’t make it larger than 1.0. If the original mapping is above 0.0, adding the variation won’t make it smaller than 0.0.

## Blend Mapping:

By default, the acquired mapping values are assigned to a particle as soon as it enters the event. If particles have been assigned mapping values in a previous event, a visual color jump can result. Use Blend Mapping By Time or Blend Mapping By Distance to cause particles to smoothly blend between previous mapping and mapping assigned by the Mapping Object operator in the current event:

    <Mapping_Object>.Blend_Mapping_By_Time : boolean

Get/set the state of the Blend Mapping By Time option.

When set to true, particles will blend smoothly between previous and current mapping by time.

    <Mapping_Object>.Blend_Type : integer

Get/set the selection of the Type drop-down list.

Possible values are:

0 - Absolute Time- All particles will finish the blending process by the time they reach the frame specified by the .Blend_Time propery (called "Finish At Time" in the UI).

1 - Particle Age- All particles will finish the blending process by the time they reach the age specified by the .Blend_Time propery (called "Finish At Age" in the UI).

2 - Event Duration (default) - All particles will finish the blending process after they spend a specific period of time in the current event, as specified by the .Blend_Time propery (called "Finish At Time" in the UI).

3 - Limited Change Rate - Limits the rate at which a particle can change its mapping. The .Blend_Time (Turnaround Time) property defines the time interval required to change the mapping value from its previous value to the current value. The larger the Turnaround Time, the longer it will take for a particle to change to the current mapping.

    <Mapping_Object>.Blend_Time : integer

Get/set the Blend Time value (its label will change in the UI depending on the .Blend_Type value.

    <Mapping_Object>.Blend_Mapping_By_Distance : boolean

Get/set the state of the Blend Mapping By Distance option.

When set to True, it causes particles to smoothly blend between previous and current mapping based on distance from the reference geometry. At every frame, the distance to the closest surface point is calculated. As a particle approaches the reference surface, the blending process occurs. The blending is finished when a particle reaches the .Finish_Distance value in relation to the reference surface. Use this option if particles are directed toward the surface upon entry into the event, as with a Find Target operator.

    <Mapping_Object>.Finish_Distance : worldUnits

Get/set the Finish Distance value.

    <Mapping_Object>.Show_Map_In_Viewport : boolean

Get/set the state of the Show Map In Viewport option.

When set to True, map coloring will be shown in the viewport.

## Uniqueness:

    <Mapping_Object>.Random_Seed : integer

Get/set the random seed value.

## Mapping_Object Interfaces:

The following Interfaces are exposed by the Mapping_Object Class:

Interface: action

Interface: operator

Interface: PViewItem

#### See Also

- Particle Flow Classes