Help With History

I have an object with 4 color sets. I delete all the history.
I put a polyColorMod node on two of em, and then blend 1 pair together into a new color set, and blend the other pair into a 6th color set. I then take the two blended sets, and blend them together, so my original 4 are condensed into 1 (7 colorsets total).

so i have something like this:

colorSet 1a - grayscale mask
colorSet 1b - color
polyColorMod on colorSet 1b
colorSet 2a - grayscale mask
colorSet 2b - color
polyColorMod on colorSet 2b
blendColorSet on colorSet 1a x colorSet 1b > blendedColorSet1
blendColorSet on colorSet 2a x colorSet 2b > blendedColorSet2
blendColorSet on blendedColorSet1 + blendedColorSet2 > blendedColorSet3

and my history looks sorta like:

intermediateShape > polyColorMod1 > polyColorMod2 > blendColorSet1 > blendColorSet2 > blendColorSet3 > polyShape > shadingGroup[1-n]

now, if I were to make any changes to any of the color sets, they would start showing up after my elaborate setup as polyColorPerVertex nodes - i don't want any new history so i make tweaks to the vertex color sets on the intermediateShape. This works really great, however, I have some stumbling blocks.

One, when I try to alter the shape of the geometry, merge verts or split faces, I want to do this on the intermediate shape. But if the number of faces changes then the shading groups get out of whack downstream. So i tried assigning my shaders on the intermediateShape and removing the shaders from the destination shape, but then I lose the display of vertex colors mixed with the shaders.

So long story short, how I can create a simple history graph that allows for normal modeling operations (shader assignment, face splitting, vertex welding, UV tweaking, etc.) and send that into an elaborate system of nodes to operate on the vertex color sets?

Any help appreciated, thanks.

QUOTE(rgkovach @ 07/29/08, 06:55 AM) [snapback]288985[/snapback]
So long story short, how I can create a simple history graph that allows for normal modeling operations (shader assignment, face splitting, vertex welding, UV tweaking, etc.) and send that into an elaborate system of nodes to operate on the vertex color sets?

Nothing it allreeady works thatway. just be sure to remeber to tell maya to update the need for showing the vertex colors.

Also please note shader assignement IS not passed up the history chain. The naming is just tagged in way that makes it seem like it is. So each node down the stream just assign colors groups that then are shaded as is. And all shader assignemnts are unique to each shape. that does not maen they cant be shared tough.

So no heres no way to get this work normally they way you want because its not nomally working that way.

QUOTE
i don't want any new history so i make tweaks to the vertex color sets on the intermediateShape.

Why wuld it matter any way?

The reason I want tweaks made to the color sets or geometry upstream from an intermediate shape is because I am using the power of the polyColorMod nodes to quickly and in real-time make modifications to the lighting of my environment.

In other words, I'm creating a rudimentary, photoshop-like layering system of vertex color sets, whereby I can adjust HSV for each layer.

So If you're familiar with photoshop, I have a layer filled with color, a mask associated with that layer to contain the color, and an HSV adjustment layer for that layer.

In Maya, I create a grayscale vertex color set for my light's spill, a color set to contain the color for that light, put a modify node on the color set, and multipy the two sets together.

Now I have control over the HSV of the light and I can go back in the history to the intermediate shape and paint on either color set to affect the color of the light or the shape of it's spill. This is very cool, because downstream the shape is set to display the blended color set, so while i'm painting on the grayscale color set upstream I see the end result updating in realtime downstream.

So a super simple example...I make a wide, flat box (a ground) and a sphere. give em some divisions so they can capture some good vertex lighting. Do a occlusion bake from mental ray into one color set. Create a second color set and a single point light. Bake that light into the new color set. Both so far should be grayscale. Now create two more color sets and fill them with pure red (255,0,0). Put a polyColorMod on each of these red color sets. Now take the occlusion color set and one of the red set and blend them using multiply. This creates a new color set to hold the blend. Take the point light set and the second red set and blend them using multiply. We get a new set. Now take both of the new sets and blend them using additive.

Now find the polyColorMods in your history and play with the HSV attributes. So now, goto the intermediate shape, display it, select the Red color set associated with the occlusion set and paint on it with the vertex color paint tool.

But if I make any changes to the color sets on the actual shape, these changes take place after the color sets are blended and modified, essentially flattening your layers.

The reason I would rather make changes to the geo upstream is simply to keep the flow of data from the color sets separate from the rest of the chain. I don't have a real good reason for this, other than I don't want my channel box GUI polluted with construction nodes.

I am super curious how to share shader information across multiple objects, I have tried figuring this out on my own and I've had no luck.