Lele's Vray Tools

155 votes
V. 1.41ss - SP2
Date Updated: 
Author Name: 
Emanuele Lecchi

A set of tools to aid in the daily VRay work.

Updated to install with Max 2014.

WARNING: there is NO guarantee than any of the tools will work as intended, that they won't break your scenes in dramatic fashion, or skin your cat while you aren't looking.
This update comes purely because i needed the Physcam Autofocus for a personal test, and noticed they didn't install or run.
Having lost the source code for the encrypted parts, all i could do was to patch fix the (very ugly, with hindsight) installer and individual script launchers.
At least the autofocus routines still work in vray 3.0.
Feel free to let me know of issues, but also know that without a complete rewrite (quite unlikely), the fixes won't be forthcoming.

Updated for VRay 1.5 SP2.

The installer from V. 1.4ss - SP2 onward now has an option to automatically add the scripts to a ctrl+shift+alt quadmenu.
Notice it should append the scripts to whatever is already in the quadmenu (nothing, by default).
Please report any odd behavior, or undesired effect: it's a first attempt at the code, and may contain issues.

Anything to Physcam v.1.4: converts max standard cameras and viewports to VRay Physical Cameras, along with FoV animation.V.1.4 corrects a bug with camera views conversion, copies across clipping planes' ranges , and allows for individual camera naming at creation, rather than later by hand.

Matrix-Weighted Exposimeter V. 1.21 : very similar in principle to that of dSLR, it allows for different weighting of each slice/square in which the image is divided, as well as allowing a different range of pixel brightnesses to be chosen for the exposure (akin to real world lens filters).
Entirely customisable for behaviour.Now with auto-white balance and preset manager!

From V. 1.16 it supports exposure / White Balance animation through the script.
Please note this is not meant to be a frame by frame tool: doing so will result in flickering (like for standard dSLRs) and will likey lead to max crashes due to maxscript memory heap overload.
Keep previews small, Nth frame at around 1 second, and go in and refine by hand activating "Auto Key" from the max interface and exposing the problematic areas.

The Sample Rate calculator, new with 1.19, is an early attempt at DMC AA optimisation.
It will render a sample pass with whatever DMC AA (ONLY!) settings you have, analise the sample rate, and guestimate a new threshold value (AA noise threshold only) so that the BIAS setting may be met (+- 2.5%).
The BIAS indicates the pixel brightness average in the sample pass (where ~0 is min sampling, and ~1 is max sampling).
V.1.21 fixes the inconsistencies in vray versions when using QMC (now brute force) as a method for exposure GI.

Physcam Auto-Focus:Finds the closest object surface directly in front of the camera, and focuses the VRay Physical Camera to it.
Added DoF Preview rendering (near-realtime) for Physical Cameras which have been created with the Physcam Converter Script (so physical cameras parented to, and overlapping perfectly, a standard one) .
The function works only under Max2008, due to the fact that previos viewport grabbing methods would refresh the framebuffer before grabbing, losing the DoF effect. Implementation for earlier versions is possible and under study.
A drawback of the new grabbing method, though, is that you'll have to have the current viewport (the one selected just before pressing the script button, any viewport will do.) free of dialog boxes and such, as the grab will read from video memory and grab those as well.
For this reason, the script now pops up in the BOTTOM RIGHT CORNER of your screen, away from what's normally the camera view.

Please note that the preview is NOT accurate as to the Physcam. It's just meant as a visual queue to understand where the camera has focused.

VRay Realtime Sky V.1.01: Allows realtime update of the VRay sky in viewport, through any change of sun position or parameter. Changes the Sun intensity for DISPLAY ONLY, not at rendertime, to allow for sky visibility without a Physical camera exposure. IMPORTANT NOTE: it's strongly suggested to keep the Background Texture Size at something like 256 in the vieport driver preferences to obtain optimal realtime performance. If updates seem sluggish, slow, or impossible, that's what you want to change.
Updated the to refresh the viewport as soon as it's activated, and changed the viewport-only multiplier to 0.02 to better reflect the default Physcam camera exposure for the new Vray Sun and Sky models.

VRay rendertime infos 1.2: Shows some useful settings while vray is rendering, to allow for easy troubleshooting of scenes that seem to render for "too long", without interrupting the rendering phase Now with material interpolation min/max settings.Added in some GI options (don't render final image, GI modes and so on)

VRay Light Monkey V0.3 : allows for mass change of vray light's properties, for selected or all, in very quick fashion.Updated for 1.5 Final-sp1

VRay stuff collector V.1.1: Collects VRay specific objects and maps (proxies, VRay HDRI maps and so on) along with the max file and normal maps into a folder Now with support for IES profiles

Physcam parameters cloner: allows for quick copy/paste operations on VRay Physical Cameras

Physcam Presets Deck: Similar to the one above, but with a neat 12-slots deck which is session persistant and immediate in its usage

PPT/LC calculator: Expresses sample sizes in pixels (rather than normalised image ratio) and subdivs as shading rates (rather than absolute numbers)


Additional Info: 

Unpack the rar file into a temp folder, and RUN (it's not an i-drop package. use "maxscript->run script") main_installer.ms.
Check/uncheck what scripts you want installed, choose to deep-delete old files if you're on max 9 (useless in max 8), and press the install button.
You'll then find them into the "Customize->CustomizeUI->Lele's
VRay Tools" category, and will be able to assign them to a menu, a
button, a quadmenu or a keyboard shortcut.

Remember to save the UI configuration after you've done so, so to preserve the assignments on the next max run.

The scripts are released as donationware: if you like them, and/or use them for a commercial production, make sure you get the "i'm feeling generous" mood going, and drop a symbolic donation at the provided email address on paypal.

Version Requirement: 
3D studio max 8 - 11 (32 or 64 bits), VRay RCx, Final, SP1 and SP2 (32/64 bits)
leles_script_pack_1.5_sp2_max_2014.rar142.78 KB


Comment viewing options

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



This answers (not!) why the converter has those issues.
It was written on rc2, but in the further RCs something must have gone wrong with it, as the tool seems to be in a state of active developement, at a much quicker pace than i can follow with my free-time scripting...

Chaos promised to release its own converter interface pretty soon, so this one is left at the very back of time allotment.
My suggestion is to use it for what it can do, and then simply export by hand whatever channel gets skipped by it.
Of course, should i find time to update it (it's a hell of a lot of code to wade through, for simple a tool it is) you'll know through ScriptSpot.

As to for what any option does, you can simply run "VRimg2Exr.exe" without parameters in a dos window, and it'll output an help page.
It's not in the converter as it's been added after i coded it.
It's best if you ask the question regarding what it does in the chaos forums, as i haven't yet looked into it, and from the look of things, won't be able to do so in a while...



cecofuli's picture

Another question for the

Another question for the vrimg2exr.exe program. What's the -datawindow option?  Why in you exporter not exist?



cecofuli's picture

Hello Lele, i have a

Hello Lele, i have a question for you. In you vrimg converter, why the  VRayZDepth is not recognized? And why the mtlID, RenderID and ObjID is not convert to exr?


anyway, thank's Cool

Renato's picture

Thanks, everything works

Thanks, everything works like a dream. The installer make life so easy!! Keep it up Lele.




Lele's picture


Anything_2_Physcam Rewritten

I rewrote the code for the Physcam Converter (anything_2_physcam) so to better handle animation.
Also strenghtened the script generally, and removed previous hacks which were needed in previous RC versions of Vray.

It now comes with an interface, tooltips and a "quick help" button.
Allows conversion of selected, or all cameras (if none is selected), or of the current view, whatever the type is (orthogonal, perspective or camera view).

It's also able to match FoV animation in a number of fashions: Creating linearly interpolated keys where the original keys were (in which case it will lose any non-linearly interpolated ease that was give to the curves, eg. bezier handles); Using the same controller type a the original camera, but NOT copying over every key parameter (hence the animation may not match exactly, but should be in most cases very close), only time and value; Baking the animation per frame on the Physcam FoV , representing the original FoV animation very precisely, at the expense of some weight on the scene, unnoticeable but for the most massive of conversions.

So far, not one max crash due to the previous issues.

Please provide any feedback (issues or suggestions, preferably...) as to its usage.




DaForce's picture

I have tested here on max8

I have tested here on max8 sp3 and it works exactly as expected. (non animated camera)

Thanks again Lele Cool

Lele's picture

Hello Drake, and thanks for

Hello Drake, and thanks for the pointer.
I am aware of an issue (cascading into another...) with the script which is due to the physcam not liking its target to be fiddled with and producing a max crash.
To solve this i had to code a small hack, which returns the second issue: the animation of the original camera's target gets lost upon conversion.
To fix these, i am waiting for the final release of VRay 1.5, so not to have to do some obscure twiddling to the code to adapt it to a known bug.

This said, there may be some silly bug still hiding here and there, even though aside from the aforementioned one(s) you're the first i hear that gets crashes.
It's been tested well only under RC3+, as of now, but if you feel it may still be the script, please mail me the scene and some infos at "emanuele dot lecchi at gmail dot com" and i'll look into it asap.

Thanks again for the report,



DraKeXXI's picture

MaxCam_2_PhysCam doesn't

MaxCam_2_PhysCam doesn't work on my MAX8 SP3. When trying to convert a max camera, MAX freezes and exit. Am I the only one?

Any chance of getting this issue fixed?. I'd really thank you, Lele.

Comment viewing options

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