Button state based on current renderer

Is there any way to write this more efficiently?
I commented out what I thought would logically make sense and work but it doesn't.

Help would be greatly appreciated.
Thanks

rollout rltest "test"
(
	button btnGORender "Go Render" enabled:(classof renderes.production == classof Vray())
 
	on rltest open do
	(
		curRen = renderers.production  -- Render Check
		theRenderer = Vray()
 
		if (classof curren == classof theRenderer) do -- Vray Renderer
		(
			btnGORender.enabled = true
		)
	)
 
)
createDialog rltest
 
 
--button btnGORender "Go Render" enabled:(classof renderes.production == classof Vray())

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Anubis's picture

check the class

I not use VRay so I'll wrote something like this...

button btnGORender "Go Render" enabled:off
 
on rltest open do
(
	re = renderers.current as string
	btnGORender.enabled = (
		matchPattern re pattern:"v_ray*" or \
		matchPattern re pattern:"VRay*"
	)
)

...but you can test in the Listener what this return:
classOf renderers.current

and then just say something like:
btnGORender.enabled = (classOf renderers.current == XXX)

where XXX is the class of VR renderer.

my recent MAXScripts RSS (archive here)

miauu's picture

For RTTAssist iI use this

For RTTAssist iI use this function to check wich is the active renderer:

(
        function ActiveRenderer =
        (
            local renderer = renderers.current
            local rendererClass = classof renderer
            if rendererClass == Default_Scanline_Renderer then
            (
                activeRender = "scanline"
            )
            else
            (   
                if (rendererClass == mental_ray_renderer) then
                (
                    activeRender = "mRay"
                )
                else
                    activeRender = "Unknown Renderer Type"
            )
            print activeRender
            return activeRender
        )
       
        ActiveRenderer()
    )

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.