select all emission surfaces

is there a way to select all the surfaces in a scene with emission?

You can rightclick on one and select a matching diffuse value or a particular texture map, I would love to isolate all the emission surfaces at once for a number of reasons, turning them all off one many would no doubt find handy, or increasing the value

for me it is simply so I can add emission in Octane.

iray shaders translate over to Octane render pretty well unlike 3 Delight but not the emission.

at least not in OrDs 2 maybe 3 reads them but am not updating my plugin for just that if it even exists.

Comments

  • evilded777evilded777 Posts: 2,465

    The only solution I know of for this, and a great all around tool, is V3Digitimes Iray Light Manager Pro

  • Richard HaseltineRichard Haseltine Posts: 102,379

    Not if they have different values (there's an option in the right-click menu to select all surfaces with a value of..., which then lets you pick any parameter, but I don't think you can select "non-black". It should be scriptable.

  • Richard HaseltineRichard Haseltine Posts: 102,379
    function selectEmissives( item ) {	// Given a node, get its list of surfaces and select all with non-zero Emiisive colour		// Get the object, return if there isn't one	var geom = item.getObject();	if ( ! geom ) {		print ( "No mesh" );		return;	}		// get the current shape of the object, return if there isn't one	var shape = geom.getCurrentShape();	if ( ! shape ) {		print ( "No shape" );		return;	}		// get the list of surfaces on the current shape	var surfList = shape.getAllMaterials();		// variables we will need 	var emissProp, emissColVal , emissCol;	// go through the surfaces looking for glow	for ( var n = 0 ; n < surfList.length ; n++ ) {		// Find the emissive colour property, if there isn't oenb skip to the next surface		emissProp = surfList[ n ].findPropertyByLabel( "Emission Color" );		if ( ! emissProp ) {			print ( "No emission here" );			continue;		}				// Get the value of the Emissive Colour, return if nothing found		emissColVal = emissProp.getFloatColorValue();		if ( ! emissColVal ) {			print( "No value" );		}				// turn that into a regular colour		emissCol = emissColVal.getColor();		//if it's not black, select the surface		if ( emissCol.red != 0 || emissCol.green != 0 || emissCol.blue != 0 ) {			print ( "Select" );			surfList[ n ].select( true );		}	}}var item = Scene.getPrimarySelection();selectEmissives( item );

    At a quick test thiss eems to work, except I had to deselect and select the object to refresh the surface list. Extending it to work on multiple selected object is left as an exercise for the reader.

  • WendyLuvsCatzWendyLuvsCatz Posts: 38,513

    I guess I save this as a dsa, thank you, not quite sure how to use it but will give it a whirl yes

  • Richard HaseltineRichard Haseltine Posts: 102,379

    Yes, save as a .dsa file and double-click to run (or, if it works, make it a Custom Action by right-click so you can get it from the Scripts menu). It should select all surfaces with a non-black Emission Colour, though in my case (using a test prop) I had to deselect and reselect the item to see the surfaces list change.

  • cm152335cm152335 Posts: 421
    edited July 2018

    manual
    "expand all" -"select all" object in scene (scene tab) 
    go to "SURFACE" tab
    "select all" again
    on parameters top
    type "emiss" on search, make your changes 
    now type "lumi" on search, made your changes

     


     

    Post edited by cm152335 on
  • WendyLuvsCatzWendyLuvsCatz Posts: 38,513
    cm152335 said:

    manual
    "expand all" -"select all" object in scene (scene tab) 
    go to "SURFACE" tab
    "select all" again
    on parameters top
    type "emiss" on search, make your changes 
    now type "lumi" on search, made your changes

     


     

    good to know too, for those scenes that actually let me do it yes

    sadly lots of scenes lately freeze up selecting all surfaces as I often do to remove all bump and displacemet maps so they will fit on my card

  • WendyLuvsCatzWendyLuvsCatz Posts: 38,513
    edited July 2018

    sadly again with Richard's script I hit the same bug where I cannot select all the surfaces of all the objects in my scenes

    I used to be able to but the last few Betas of DS I cannot

    DS just freezes

     

    wondering if Octane actually is the cause of my bug as seen on video,

    that blue mouse pointer circle spins for hours and hours if I let it have to kill DS in Task manager

    Post edited by WendyLuvsCatz on
  • Richard HaseltineRichard Haseltine Posts: 102,379

    Well, my script as it stands works on only one selected item. If you just want to zero everything then the suggestion from cm152335 is the simplest way to do it, mine was selecting all surfaces with active emission (well, non-black colour) for further adjustment.

  • WendyLuvsCatzWendyLuvsCatz Posts: 38,513

    the real issue sadly is Octane render DS

    I think it causes too many issues including the ability to select every surface in the first place

    thanks for the help, its just the price I have to pay for choosing a nonstandard integrated render plugin.

    at least iray materials work much better than 3Delight ones with it, that is something and of course HD morphs work with it, not grouped instances well not the 2.25 version at least.

Sign In or Register to comment.