Convert to poly

Max scripts

Moderatorer: Super Moderatorer, Admins


Trådstarter
hardrock_ram
Innlegg: 1502
Registrert: ons 07 feb, 2007
Sted: Kristiansand

Convert to poly

Legg innav hardrock_ram » fre 06 sep, 2013

Konverterer alle objekter i en scene til edit_poly, samtidig som instances bevares:

Kode: Velg alt

(
   --Variables:
   selectionArray =#()
   
   --Functions
   fn fnConvert obj convertInstanced objectsToCheck =
   (
      -- convert objects that are not instanced to edit poly:
      if InstanceMgr.GetInstances obj objectsToCheck <= 1 do convertToPoly obj
      
      --Convert objcts that are instances to edit poly, if convertInstanced is true:
      if InstanceMgr.GetInstances obj objectsToCheck > 1 and convertInstanced == true do
      (
         --Objects that are instances of the original object is stored in "&instances"-array:
         InstanceMgr.GetInstances obj &instances
         
         --Original object is converted to poly:
         convertToPoly obj
         
         --objects that are instances of the original object get the original objects baseObject:
         for i = instances do i.baseObject = obj.baseObject
      )
   )
   --Functions END

   rollout rollout_convertToEditPoly "Convert objects to editable poly"
   (
      --User Interface
      button btn_convertAll "Convert all"
      button btn_convertSel "Convert selected"
      checkbox chk_convertInstanced "Convert instanced objects" checked: true
      --User interface END
      
      
      on btn_convertAll pressed do
      (--btn_convertAll START
         undo "Convert to poly" on
         (--Undo START
            
            for i = selection do append selectionArray i
            deSelect objects
            
            for obj = objects where ClassOf obj == Editable_mesh and obj.modifiers.count == 0 do
            (
               fnConvert obj (chk_convertInstanced.checked) objects
            )
            
            select selectionArray
            free selectionArray
            
         )--Undo END
      )--btn_convertAll END
      
      
      on btn_convertSel pressed do
      (--btn_convertSel START
         undo "Convert to poly" on
         (--Undo START
            
            for i = selection do append selectionArray i
            deSelect objects
            
            for obj = selectionArray where ClassOf obj == Editable_mesh and obj.modifiers.count == 0 do
            (
               fnConvert obj (chk_convertInstanced.checked) objects
            )
            
            select selectionArray
            free selectionArray
            
         )--Undo END
      )--btn_convertSel END
      
   )
   createDialog rollout_convertToEditPoly 200 75
)
if your not living on a killing ground, you better make your own

Gå tilbake til «Max scripts»

Hvem er online

Brukere i dette forumet: Ingen registrerte brukere og 0 gjester

cron