Often when dealing with complex effects it’s necessary to split those into smaller parts. Isn’t only better to render specific elements separately but also working with particular portion is a straight way to get work done more quickly.  

Script below let you quickly turn off/on Particle Flow systems:

for o in objects where classOf o == PF_Source do

(

o.Enable_Particles = not o.Enable_Particles

)

 

This can be pretty usefull, when you want just quick turn off/on all particle flow systems. But what if you want manage not all PFlow systems at the time?

Exceptions

Problem was how to mark some PFlow system wich I don’t wanna work with and use this everytime when turning off/on specifically branch. My solution was to use 3dsmax user defined Object Properties (Right click –> Object Properties –> User Defined).  

You can add this manually or by script below:

 – Add PFlow State Exception to SELECTED PFLOW systems

 for o in $ where classOf o == PF_Source do

(

setUserProp o “pf_State_Except” True

print (“Exception Added: ” + o.name)

)

 

Now our main MacroScript will look like:

macroScript pFlowstate category:”deko.lt” toolTip:”Turn On/Off PFlow” buttonText:”PFlow On/Off” Icon:#(“Particles”,6)

(

global pf_state=true

on isChecked return not pf_state

on execute do 

(

for o in objects where classOf o == PF_Source and getUserProp o “pf_State_Except” == undefined do

(

o.Enable_Particles = pf_state

)

pf_state = not pf_state

)

)

*Tip: Try to add this as toolbar button, it can be checked, so you can always know what state is

 

http://www.deko.lt/lab/mxs/PFlowState_1_2.zip

In above archive there is also 3 additional macroscript to ADD exception, CLEAR exception and List/Select marked PFlow systems as exceptions. Just Drag&Drop those macros to 3dsmax and add to toolbar, menu or hotkey from deko.lt category.

 

 

2 Responses to “mxs: PFlow State”

  1. deko, Reply

    Alternately you can try pFlow Control script by John Random:
    http://4rand.com/stuff/script-pflow-control/

  2. JohnnyRandom, Reply

    Ha! That is pretty slick, good thinking outside the box. Gives me an idea :-)

Leave a Reply