ScriptSpot is a diverse online community of artists and developers who come together to find and share scripts that empower their creativity with 3ds Max. Our users come from all parts of the world and work in everything from visual effects to gaming, architecture, students or hobbyists.
thanks, I already have it but I want to make something different.
I have used Lightwave for a long time and I want to have something like its layer management (like smoothing groups panel in max)
here is an example with 5 matid, I want to make rows of 10 ids...
Thanks barigazy,
but arrays are nightmare for me, so bitarrays....
can you explain what I'm doing wrong : I want to show material ID 10
--------------------------
obj = $
$.selectByMaterial 10
Faces2show = #{}
Faces2show = polyop.getFaceSelection $ as array <--- there is a problem here
(
local hiddenFaces = polyop.getHiddenFaces obj
if not hiddenFaces.isEmpty do
(
facesToHide = hiddenFaces-Faces2show
with redraw off
(
polyop.unHideAllFaces obj
polyop.setHiddenFaces obj facesToHide
)
)
)
Comments
semi-pro solution ;)
http://www.scriptspot.com/3ds-max/scripts/hide-unhide-mtlid-faces
bga
I find a solution for my
I find a solution for my tool...
easy for 2 materials id, but I don't know how to optimize for 20...
modPanel.setCurrentObject $.baseObject
fn Fmask AAA =
(
OBJ.selectByMaterial AAA
polyList = polyop.getFaceSelection OBJ
OBJ.Hide #Face
)
OBJ = $
OBJ.unHideAll #Face
rollout ROLL "MAT iD"
(
checkbutton b01 "01" pos:[1,11] width:40 height:20 unchecked:true
checkbutton b02 "02" pos:[41,11] width:40 height:20 unchecked:true
on b01 changed state do
if state == on then Fmask 1
else (
OBJ.unHideALL #Face
if ROLL.b02.state == on then
(
OBJ.selectByMaterial 2
polyList = polyop.getFaceSelection OBJ
OBJ.Hide #Face
)
)
on b02 changed state do
if state == on then Fmask 2
else (
OBJ.unHideALL #Face
if ROLL.b01.state == on then
(
OBJ.selectByMaterial 1
polyList = polyop.getFaceSelection OBJ
OBJ.Hide #Face
)
)
)
createdialog ROLL
Hidden Polys Manager :)
Hidden Polys Manager :)
Tools and Scripts for Autodesk 3dsMax
thanks, I already have it but
thanks, I already have it but I want to make something different.
I have used Lightwave for a long time and I want to have something like its layer management (like smoothing groups panel in max)
here is an example with 5 matid, I want to make rows of 10 ids...
Hi Kostadin, You always have
Hi Kostadin,
You always have the Joker in a sleeve :)
Cheers!
bga
solution
This is a simple trick how to do it.
Now how to use it
E X A M P L E:
Then run this line
bga
Thanks barigazy, but arrays
Thanks barigazy,
but arrays are nightmare for me, so bitarrays....
can you explain what I'm doing wrong : I want to show material ID 10
--------------------------
obj = $
$.selectByMaterial 10
Faces2show = #{}
Faces2show = polyop.getFaceSelection $ as array <--- there is a problem here
(
local hiddenFaces = polyop.getHiddenFaces obj
if not hiddenFaces.isEmpty do
(
facesToHide = hiddenFaces-Faces2show
with redraw off
(
polyop.unHideAllFaces obj
polyop.setHiddenFaces obj facesToHide
)
)
)
Are you try Kostadin script
Are you try Kostadin script that suggested earlier
bga
yes, but as I said to him I
yes, but as I said to him I wanted to do something different. :-)