Notifications
Clear all

[Closed] Show soft selection on unselected mesh?

I was wondering if anyone knows a good way to get Max to display the soft selection shaded vertices and/or faces for a mesh, even if that mesh is not currently selected?

34 Replies

probably the only way is copy vertex soft selection channel to any another map channel and set this channel as “Vertex Channel Display”

help if i bothered to read it correctly If I had to I would probably do it as denis suggests as a modifier.

Okay, I’m able to get the vertex weight values and set the vertex color values easily enough, but not quite sure what I need to do in order to convert the weight value (0.0 to 1.0) to an RGB color value…

the thing is that soft selection channel is a vertex channel (not a map channel). only map channel can be used as vertex color display. except… yes. soft selection.
but max handles it specially.

so we have to copy float values of soft-selection channel to a map (point3) channel and colorize a float weight. as i remember there is a formula that converts soft-weight to red-to-blue gradient. (not exactly correct but it’s a half way of HUE in the HSV color representation)

MCG

no. it’s not a half. but very easy to see – just check red.h and blue.h

i’ve never tried that but what if:

red * soft_weight + blue * (1 - soft_weight)

you could load a 1 pixel color gradient bitmap and use the 0-1 as a color “lookup”

Thanks Denis, that does the trick!

fn vertColorFromSoftSel obj = (
	polyop.setVDataChannelSupport obj 1 true

	for v = 1 to obj.numVerts do (
		local w = polyOp.getVDataValue obj 1 v
		local c = (red * w) + (blue * (1 - w))

		polyop.setVertColor obj 0 v	c
	)
)
Page 1 / 4