ScriptSpot

Script

Quick Passes

By masquerade · Credited author: Arda Kutlu · 2008-04-10

Version
3.05 Beta
Version requirement
2008 and above
Other software required
Vray is not required but supported. (Above 1.5sp)
Date updated
2010-12-30
Votes
121
Download
Download
Description

 

Easy rendering of commonly used render passes for compositing.

Quick Passes support Default Scanline, Mental Ray Quicksilver and Vray renderers and Materials.


Quick Passes can render:

- Black-White mattes for selected objects or for reflections over selected objects with any supported renderer, with the options of considering current Displacement Maps, Material Opacities, and Object Opacities.

-Ambient Occlusion of the scene with any supported Renderer, with the options of wireframed AO for selected Objects (For Mr only) and considering current Displacement Bump, opacity (Vray only) maps.

-Reflections on selected objects with any of supported Renderer with the options of considering current Displacement and Bump maps. If there is no light in the scene (default lights) selecting only one geometry object is enough. If there are lights in the scene you have to add them also to the selection. Selected lights not necessarily have to be turned on. You can also blur the reflections with the given spread and sampling values. And turn on or off current Environment Map.

-Shadows on selected objects with any ofsupported Renderer. At least one light and one geometry objectmustselected.Selected lights not necessarily have to beturned on or their cast shadowoptions checked.

-ZDepth with any supported Renderer. (except Quicksilver Renderer). You can select auto and manual scene dimensions. If you select auto, at least one object should be selected. Any geometrical or non geometrical object(s) can be selected. If it is geometrical it considers nearest and farthest vertexes. If there are multiple objects in the scene, select two objects (nearest and farthest) for best results.

 


 

Quick Passes dont change your scene settings or materials. Ok, it actually changes them but, puts everything back afterwards. Special Thanks to Ivan Tepavicharov for letting me use his Idea of getting and recalling materials. All Get and Recall functions of Quick Passes based on Ivan's idea.

Just run the script, select the pass you want to render, override the renderer if you want, select the necessary objects and/or lights, hit render.


For matte render you must select at least one geometry object

For AO render you dont have to select anything (if you check Wireframed AO, and usin MR renderer, selected objects will be wireframed.

For Reflection rendering you must select at least one geometry object and one light. If there isnt any light in the scene, only selecting one object is enough

For Shadow rendering you must select at least one geometry object and one light. Selected light dont have to be casting shadows or turned on. In any case light will be turned on and its current shadow type will be used.

It will render the scene using current common properties of the scene.

Feel free use, distribute, alter and impove it. I appreciate if you let me know about your opinions, bug reports, requests or improvements.


Version History

------------------------

3.05 Beta

-Fix for the 400 mb Dynamic Memory limitation of Vray

3.04 Beta

-BugFix: Re-enabling forgotten "face matte" function with improvements. It is not limited with editable poly and edit poly modifiers. You dont have to be in the Face selection mode. Supports multiple objects. Just select faces in each object that  you want to be rendered

-BugFix: Light support fixes in shadow and reflection passes.

-BugFix: While rendering ZDepth with Auto Dimension feature on, it no longer leaves unnecessary Edit Mesh modifiers on top of the selected objects.

3.0 Beta

- Added ZDepth Pass. With this option, you can quickly render Zdepth passes while keeping opacity and cutout maps, as well as displacement maps. You can enter the far and near plane manually, or use auto mode to make the script calculate the distances automatically according to the selection.

Thanks to Eren Saritas for the idea and technique used in ZDepth pass.

- Added Quicksilver Renderer support. It is a partial support, since due to the limitations of QS renderer, it is limited with basic AO and Matte Passes.

- Vray AO pass method is changed. Now it uses Dirt Map technique instead of Skylighting, which makes it possible to keep Opacity and Cutout maps.

2.5

-One version for both Max 2008 and 2009, no idea with 2010, so if anyone try that out on 2010, I would appreciate information about that.

-Added Sub-Object function to the Matte Pass. Now it can render mattes of selected faces.

-Know issue: Matte Sub-Object function currently support only Editable Poly objects and edit poly modifiers. Selections made with editable_meshes, edit mesh modifiers, poly and mesh select modifiers will be ignored.

2.16

- Bugfix - qp now overrides network render option when it is off in qp and on in render options.

- Bugfix - If an object is invisible  to camera, it now stays same after rendering AO with "AO on selected objects" option checked.

- Bugfix - if render elements are on now it renders AO pass as it should.

- Bugfixes regarding to the save file option. 

2.15

-Several Bug Fixes with save options.

-Added new option to AO Pass. Now it is capable of rendering AO passes only on selected objects.

2.13

-matte pass support for AfterBurn

-Daylight System Support

2.12

-Added support for Vray Camera. Exposure control, Vignetting and White Balance issues handled (Thanks to birket)

-Regarding to reflection passes, Now it considers the scenes FG, Caustics, GI and Exposure Control settings (if the renderer is not overrided) (Thanks to Iain Banks) 

2.1

-Bug Fix => now returns back environment map and exposure control settings (Thanks to Iain Banks)

-Added Reflection Matte option to the Matte section, which allowsrendering black and white mattes of reflections of other objects onselected objects. (Thanks to birket for the idea)

-Added an UNTESTED version of the script for the compatibility with Max 2009 and Vray Sp2

-When rendering with current renderer, and current renderer is Mental Ray, every pass uses the present antialiasing settings

2.0

-New UI

-Support for Mental Ray, Scanline and Vray for each pass.

-Network render option

-Override Renderer Option

-Wireframed AO

-Options of Preserving Bump, Displacement and Opacity Maps.

1.0

-First Release

 

 

Additional Info

This is a Macroscript. After you run the script, you can find the script under customize => customize user interface - category: Tik Works, and can assign it to a hotkey, menu or quad menu

Tags: ambient occlusion, Matte, pass, quick, AO, Reflection, Shadow, ZDepth, keep displacement, keep bump, keep opacity, Quicksilver

Comments (81)

mental ray quality

rendergiz · 2016-10-17

Nice and promissing script. But working with mental ray, the image precision is very low. Seems that your script changes the quality to 0.25 for every pass except the reflection. Can you tell, where to change this?
thanks in advance!

3dmax farsi · 2016-08-28

I'll have a play, looks pretty cool.

thx.

Funky goings on in Max 2016

asymptote · 2016-03-18

I know this hasn't been updated in a while, and I'm not sure if it's me or the script, but I'm getting random crashes and it renders in Progressive mode rather than Adaptive in 2016 sp3 with Vray 3.20.03.
I've recently switched from 2015 and pretty lost without this script, hope there's a chance of an update.

mask

Unchuck · 2016-08-17

search here for RenderMask from Illusionbox, much better ;)

Cheers Unchuck

asymptote · 2016-08-17

I'll have a play, looks pretty cool.

thx.

Grad and puts back

solaFides · 2015-07-21

Can you explain the "Quick Passes dont change your scene settings or materials. Ok, it actually changes them but, puts everything back afterwards." comment. How does it do this, with scene states or are these changes coded?

Double Sided Textures

marctingle · 2014-09-24

Amazing script. Works a treat for ambient Occlusion. Will there be any plans to allow the rendered to work with double sided textures?

Cheers!

Make Tut

Nicholas87 · 2014-08-14

I hope Arda Kutlu'll make tutorial for this plugin , thanks so much

Sophisticated Script

DavidAnatolie · 2014-08-11

just tried it out, works perfectly fine with Max 2014. Very easy to use, and thanks for making it free :)

Excellent script

vyle · 2014-02-07

And works great under max 2014.
Thanks so much.
D

fecsoares · 2014-01-20

This script is sooo incredible. Would you make a 2013 version? What about finish polishing the v3 BETA? Looks very promising! Thanks in advance.

2012 max (64) & vray - OK

Custom · 2013-04-23

Thank you very much! 3.05 works well for Z-Depth.

2013

seyah sam · 2012-12-05

A 2013 version would be most helpful!

Regarding Selecting lights and object for Shadow

schien · 2012-11-30

I was wondering if anyone can help me with the shadow part, I keep getting this error “—Unknown property: “castShadows”, is it because the type of light has to be photometric/standard and not setting lights? or it is a different problem? Please help and advise. Thank you.

doesnt work for me

weird · 2012-10-08

What do to do launch it? I place it in maxroot>scripts and than from program menu: maxscript>runscript... pick downloaded file.. and nothing.

max design x64 2012

masquerade · 2012-11-20

[QUOTE]

Additional Info:

This is a Macroscript. After you run the script, you can find the
script under customize => customize user interface - category: Tik
Works, and can assign it to a hotkey, menu or quad menu

[QUOTE]

Please a suggestion

chakib · 2012-08-19

Can you add support for the Hair & Fur ( for example in mr prim mode i have All in black :S )

Camera clipping planes

runst · 2012-05-07

The script doesn't read (manual) camera clipping planes, would be nice fix!!
Max 2012 - mental ray

2013

apside · 2012-05-02

Is it possible a version for max 2013?

2012 AO only work !!!

kaosrik · 2012-05-01

update please for 2012

Thanks for the memory fix

chakib · 2012-03-08

It works like a charm now !!!
One of the most useful scripts thank you so much !

2012 max

adibh31 · 2012-03-06

can i get that plugin for 2012 also

Dynamic memory turns to 400

chakib · 2011-12-29

Please can you fix this :(

masquerade · 2012-01-15

just change the time output in your default render settings. Like you do normally if you dont use the script. Then use the script and it will recognize the time interval you defined in the render settings.

It would be silly if there were no multi-frame options..

Thank you !

chakib · 2012-01-16

But please fix the 400mb dynamic memory limit :(

Suggestion

chakib · 2011-12-09

Please can you add an option to make passes for an entire animation ?

Thanks!

silverbeat · 2011-10-12

Thanks for that script - exactly what I need: quick Matte renders.

Bug with matte cutoutmap for A&D material

Rockin · 2011-08-15

There's a little bug in line 649 (v3.04beta) that prevents the script form using cutout maps. Currently, the line is "if cutout_map_on == on then" but it should be "if n.cutout_map_on == on then" (notice the n.).

Other than that, the script is wonderful and very helpful, thank you!

masquerade · 2011-08-16

yes Rockin, you are right. Thank you for pointing that out, I somehow missed that.

Billabong · 2011-08-07

Ive tried all of the releases and everyone of them changes me memory to 400 and wont render large scenes

This is in 2012 and Vray

I just tried in 2011 and it does it as well

masquerade · 2011-08-07

Thanks for letting me know about that. I will look into that in the next version. Probably the problem is that it uses the default allocation limit. I have to let the script recognize the current value and use it as well.

Billabong · 2011-08-09

Looking forward to the release. I use this on a daily basis now, so I really hope you find time to fix this one quick.

Thank you so much man

Billabong · 2011-08-07

Think I may have found another bug. When using the AO Pass, it changes my dynamic memory from 8096 to 400 and auto.

any thoughts?

-B

masquerade · 2011-07-28

Please try the latest version. I believe I fixed that.

Billabong · 2011-07-28

Thank you Masquerade. I just downloaded your latest Beta and the shadows seem to be working correctly. Once again, thank you for such a great script.

-B

error

Billabong · 2011-07-26

I just downloaded and tried to use Tik_Quick_Passes_v2.15(VRAY SP2).mcr for the shadows and I got this error. Any suggestions?

-B

Attachments

mas 2012

nuosyo · 2011-07-19

also works with max 2012?

masquerade · 2011-07-20

I didnt try it on 2012 yet. if anyone did, it would be awesome to share their experience.

begon · 2011-05-17

Very need render and save all frame on animated camera!

best script ever

visualz · 2011-05-16

this sucker is my all time "gotta have it" and i use it daily. if you composite, do not pass this baby up!

//gD

Great script but I found a problem...

vbn · 2011-04-07

Great script! A real time saver.
But I think it has some more room for improvement. I found a problem with it. When I render an AO pass with Vray and the scene includes xrefs, the xrefs don't have AO material. Can you please fix this? Thanks.

masquerade · 2011-04-11

Actually I am aware of that. To include Xrefs, I believe the only way is to merge xrefs to the scene, change their materials, render it and afterwards making them xrefs again (deleting the objects and putting the initial xref is the only possible workaround I guess)

I have never worked with xrefs before, so I have little knowledge about it both about scripting and using them as a scene element. For now, you have to merge them to the scene before using the script. If anyone has a source script which I can use as example, I can work on it.

vbn · 2011-04-11

Ok, thanks for the suggestion!

Truly amazing

akisey · 2011-01-20

This script is a godsend!
Now with the z-depth feature, adding DOF and Distant fog has never been easier.

I'd like to thank the developer and suggest everyone to try this script out. By far one of the most useful tools available here.

QuickPasses Version 3.0 Beta

masquerade · 2010-12-30

I made some upgrades including Quicksilver Renderer support, Vray optimization and Zdept Pass. I would appreciate any bug report.

bublik · 2010-10-24

I liked this script. thank you

birket · 2010-07-02

Thanks for your reply. A pity. What are you using these days? I will do further testing.

masquerade · 2010-07-02

To tell the truth, I moved to Maya, not entirely but mostly. I prefer mental ray. I find it more suitable for animated scenes.

birket · 2010-06-03

I am trying to create a reflection matte for a glazed window. I select the glass and one light in the scene (a Vray plane light) and render.

There is a chair in front of the glass window that partially obscures it from the point of view of the camera. Shouldn't the reflection matte therefore be partially obscured by the chair? At the moment, I get a reflection matte as though the chair (or any other occluding object) isn't there, so I therefore need to also render an ordinary matte for the glass and combine this with the reflection matte to get *only* the reflection matte.

masquerade · 2010-06-10

Hi,

Since version 2008, I havent done anything about Vray support because I dont use it anymore. As far as I remember, I didnt add Vray sun to the acceptable lights or maybe maxscript connection of that object could be changed in later versions.

About the problem with not-obscuring-chair, that actually sounds pretty odd.. Did you try the same thing on a simpler scene? In order to lower the list of possible problems, could you confirm that if it is a scene specific problem?

birket · 2010-06-03

Hi
I haven't used this for a while, but I have a project where it would be useful, but I am getting an error message. I am using Max2009 64bit with Vray 1.50.SP4a on an XP64 system.

When I click 'Render', I get the following message:-

-- Unknown property: "on" in $VRayIES:VRayIES01 @ [3.440024,3.3063923,3.075525]

Could it be the fact that I am using VRay IES lights in the scene?

masquerade · 2010-01-18

If you have a huge amount of materials, I guess its normal. Because quickrender first collects every objects material data first, and after it finishes rendering replaces the original materials. Choosing the preserve opacity, preserve displacement and preserve bump options also increase that time.

miloman · 2009-12-29

Hi there, nice script. it renders as it should, however when pressing the render button it hangs for a good five minutes - i'm using 3ds max 2010 with mental ray. Is this simply down to how many materials you have in the scene?

masquerade · 2009-12-28

k2000,

it is most probably a vray sp4 issue. I didnt test it neither with 2010 nor with vraysp4. There is a major possibility that some maxscript connections changed with sp4 and/or max 2010. I have to take a look with 2010 and sp4 whenever I have the chance, but nowadays I am a bit overloaded.

Did you try to take the same pass with different materials? standard materials maybe? Sorry for the any trouble it may have caused. I will take a look at when I have the chance to work with both softwares. I could use a sample scene, feel free contact me via e-mail.

k2000 · 2009-12-28

+1
the same issue for me (max design 2010 vray sp4)
cannot render shadows.

...Submitted by AdamHoej on Tue, 2009-01-13 12:24.
I have a problem regarding the Shadows.
When ever i press Render at the shadows the following error pops out:
-- Unknown property: "basematerial" in VRayMtlWrapper:VRayMtlWrapper...

Maxscript highlights the line 1478:
Sha_vray_mat.basematerial=a.material

k2000 · 2009-12-22

Hi there.
Does this script works well for everyone?
I have some issues when running the script on my workstation with Max Design 2010 + vraysp4. The workstation really freezes when performing a render. It takes 4 times more time to render AO pass rather then original image...
Any ideas?

Thanks.

Ankebut · 2009-12-21

Thank you very much.

greetings to turkey :)

masquerade · 2009-12-21

Hi Ankebut,

 

Thanks. It is possible to render animated scenes. Quick passes just uses your global render settings. if you select a range instead of a single frame from there (just like rendering multiple frames which you normally do) quickpasses also take account of that. Dont forget to check "save file" from quickpasses menu and set a path for the rendered passes from there. I added these to prevent accidentally writing over main renders which is defined in the render settings.

Cheers

Ankebut · 2009-12-20

Hello Arda

nice script! How can I render matte passes from an animated object? As far as I can see it is not possible with your cool script...

thx

masquerade · 2009-12-16

birket,

if there isnt any error message, then probably you checked "do not retrieve current settings".

Unless you check this box, the script makes necessary changes to  render the pass, and hold the current settings in arrays. Afterwards it replaces original settings back. But if something goes wrong during the process -like an unsupported material- it couldnt finish the process and dont replace the original settings.

maybe if you explain the situation in a more specific way, I can help you more.

 

birket · 2009-12-07

Haven't used this for a while, but decided to give it another try. I'm using Max2009 64bit and Vray 1.5 SP4.

After using the script, all my scene's vray render settings are put back to the defaults! A pain. Could anyone check this?

masquerade · 2009-07-05

Thank you RPGSI, I am glad that you use it.

 

As for the preserve material opacity for AO pass, unfortunately it is not that easy as it should be.

Thats because the script started as a very simple script, then I added tens of features. It became somehow messy and unorganized. The best thing I should do is to re-write the script while making it expandable and flexible.

 

Anyway, I have also been thinking to add that option, but since no one asked for it (till now) I didnt take the risk getting lost 2000 lines.

Since you ask it, I will try to do that when I have some time.

regards

 

RPGSI · 2009-07-04

HELLO THERE !

tHANk you deeply so much for your script ..

Its a most here at the Studio !
And works greathly with Max 2010!

::::::

Anyway !

CAN WE PLZ "humbly" request A Extra FEATURE ?

:::

- We need in the - Ambient Occlusion - an Option to - "preserve material transparency" ...

So we can render ambient occlusion but the transparency is still there ...

:::::::::

I mean should not be dificult for you at all as you already achieved this in the Matte pass !

We just need that option for the Ambient Occlusion also !

As far we know and searched for - there is no script in the world that does that ..
- Ambient occlusion with transparency automaticaly...

If ya able to achieve this would be a MOST !

::::

THANK YOU DEEPLY SO MUCH!


RPGSI STUDIO Admin

masquerade · 2009-06-26

I added Sub-Object support to the Matte section. It is now possible to render mattes of current selections.

For now, it only supports Editable Poly objects and Edit_Poly modifiers, any other selection methods will be ignored. Also for now, it is not possible to select other matte options (include Displacements and opacities) while this option is selected. I can consider to include them as well as Editable_mesh object and Edit_Mesh modifier support regarding to the responses.

 Just check "Matte of Selected Objects" from matte section, and select the faces of your object.

esa sangkala · 2009-01-26

genius.. this is what i need, ill test for a few week.. thanks for sharing bro..

thanks,unfortunately, I dont

masquerade · 2009-01-15

thanks,

unfortunately, I dont have the chance to test it on 2009 versions (and Vray sp2 also), so It is hard to locate the problem. If I had a chance I will work on it on a 2009 version.  

AdamHoej · 2009-01-13

I have a problem regarding the Shadows.
When ever i press Render at the shadows the following error pops out:

-- Unknown property: "basematerial" in VRayMtlWrapper:VRayMtlWrapper

I use 3ds max 2009 Design, and vRay 1.50 SP2

Really nice script otherwise!

masquerade · 2008-11-21

Brave, I sent you a PM related to the subject.

masquerade · 2008-10-02

Ah thats a bit different. You want to make the selected objects reflect only the environment. All other objects will be black. What I am trying to implement right now is a matte render which shows only the object reflections over selected objects.

If you reach me via e-mail we can discuss it further and maybe I can customize the script for your needs.

birket · 2008-10-02

I think thats right. Basically, I think it would be useful to render *only* the reflections of other objects - we usually replace the environmental reflections in post production (of a glass building facade for example).

The way we do this at the moment is to make the chosen objects 100% reflective (black diffuse, white in the reflection, black in the refraction) and all the other ojects 100% black. We then make the environment 100% white. At render time, we just have a black and white image (though we must manually 'paint out' the white of the surrounding environment that isn't the reflected environment)

masquerade · 2008-10-02

Thats a good Idea birket. If I understand it correctly you want to render a matte pass to seperate object reflections and environment reflections, right? So both making all object reflections on selected objects white and everything else black, or making all objects' reflections black and environment reflections white should work for you.

Let me know If I understood something wrong.

Ill try to implement it to matte section as soon as I can.

Thanks.

birket · 2008-10-02

Thanks for that. I'll give it some testing.

Another very (VERY) useful feature would be to be able to render a 'reflection matte'. i.e. where an object reflects the environment, it shows white. Where an object reflects another object, it shows black. In this way, *just* the reflections can easily be isolated in post production without resorting to screen layers etc that can knock out any dark areas of reflection and result in poor antialiasing of the reflective component.

Is this something that you could implement?

Admin · 2008-10-01

Just jumping in here.

The VRay parameter is actually "moblur_dmc_minSamples" (DMC instead of QMC)

So the line in your script becomes:


VrayRR.moblur_qmc_minSamples=renderers.current.moblur_dmc_minSamples

FYI, masquerade I've attached a text file with all the VRay renderer properties.

Christopher Grant
ScriptSpot.com

Attachments

masquerade · 2008-10-02

Thanks Chris. That was really helpful.

I didnt try but I think both "qmc" s should be replaced with dmc. So I think the line should be


VrayRR.moblur_dmc_minSamples=renderers.current.moblur_dmc_minSamples

Thanks again for the list.

 

 

 

birket · 2008-10-01

I get the following "unknown property" error:

VrayRR.moblur_qmc_minSamples=renderers.current.moblur_qmc_minSamples

However, I am using Max 2009 64bit with vray 1.5 sp2. Any ideas? Sounds very useful

masquerade · 2008-10-01

I unfortunately have no chance to try it with max 2009 or Vray sp2 cause I dont own them. If I have the chance, I will look for that.

The line which throws the error is motion blur subdivision samples of Vray.

there could be some changes on motion blur sampling in Vray 1.5 sp2. Because until that line the script checks for camera properties and depth of field properties of the current Vray renderer (if the current renderer is Vray) If there was a problem related with initializing of Vray it would throw an error with a previous line.

you can try this,

-Assign Vray renderer as the render engine

-open maxscript listener

-write "show renderers.current" and press "Shift+Enter" to execute

-look for the lines starting with moblur.(I also appreciate if you can post me this list)

-check if there is the line ".moblur_qmc_minSamples : integer"

 if that line exists, I dont have any idea how to fix it right now.

if that line doesnt exist, look for a similar one. It may contain also subdivision or subdiv.

-replace the "VrayRR.moblur_qmc_minSamples=renderers.current.moblur_qmc_minSamples" line with "VrayRR.moblur_qmc_minSamples=renderers."The new property"

You can also delete the whole line for good, but that means your passes' motion blur wont match with the scene's if you change the subdivision levels from default.

hope this helps.

MarTroYx · 2008-09-28

Yes it does work, but I'm not absolutely sure that it will find the vray renderer with this line thought... maybe you could findstring every element of the RendererClass for the "vray" string, just to make sure it not "vray_1_70" or something like that.

Martin

masquerade · 2008-09-28

yes you are right.. Ill test that out.

MarTroYx · 2008-09-25

Hi! I haven't tested your script yet but I think this line cause an error on system without vray installed ...

local vr=RendererClass.classes[(findItem RendererClass.classes vray)]()

Martin

masquerade · 2008-09-25

oh gee.. thanks. I actually missed that one. Thanks for pointing me out.

masquerade · 2008-09-28

replaced the line with

local vr=try(RendererClass.classes[(findItem RendererClass.classes vray)]())catch()

now it works

thanks again