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
check the class
I not use VRay so I'll wrote something like this...
...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)
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()
)
Tools and Scripts for Autodesk 3dsMax