Sunday, 21 April 2013

The 3d image shown above was created while at GMJ. To see my entire 3d portfolio and the architectural rendering, simply click on the above image! While today’s fast computers may ensure rendering crashes are
less and less frequent, there are still instances when processing high resolution photorealistic
renders will cause computers to freeze and ultimately crash!

I have certainly experienced in numerous occasions having renders
freeze and crash when there were only few “render buckets” left to complete
the entire image!

Such inconveniences may cause major setbacks with the
final deadline and user’s workflow, especially when the renders are taking a
considerable amount of time to process.

For example, the above panoramic image was rendered at 22.000 x 11.000
pixels,while at GMJ design ltd. As one can imagine, it was a huge challenge to create and render
the above image due to its unusual output pixel size, and the manner in which it was captured (panoramic).

And yes, it crashed several times while the render was being
processed!!

We had decided to render the space in a panoramic style to
save the client time and money by NOT having to create and render countless
camera angles to capture the entire proposed space.

The end product was a full panoramic image rasterized as a JPEG, which the client was then able to view and navigate through, by using a free
software called “ iMove Viewer” .

V

ery recently, a prolific script writer/ Senior Visualiser
and Photographer called David Venables has
created an ingenious and simple script that allows users to set 3Ds max to
automatically save the render periodically while still being processed in
the frame buffer.

Users can also set the location and the frequency of the
renders being saved.

By default, the script automatically finds the autosave path
with the (getdir #autoback) string of code; and saves the file under the name
of "Rend_autosave.tif" as
a TIF file format.

This can be changed manually. For instance, the default path
could be saved in the following location: C:\Users\Public\Pictures

The relevant line of code would be replaced with the
following: “Local Autosavedir = C:\\Users\\Public\\Pictures
+ "Rend_autosave.tif" .

In addition, the script automatically sets the saving frequency to every
2 minutes: (2*60*1000).

This default timer can also be changed by simply typing in a different number you may find more adequate (i.e. replace nr 2)!

Once satisfied with everything, simply save the script by pressing
Ctrl+S.

The Save file dialog should appear. In order for this
script to automatically start as a callback everytime 3Ds Max is lauched, it must be saved as an ms file in the following location:

C:\Program
Files\Autodesk\3ds Max 2012\Scripts\Startup.

Note: If using a different version of Max, simply save the script in the adequate 3ds Max folder (i.e. 3ds Max 2013; etc). Next, close and restart 3Ds Max. Render anything that would
take longer than 2 minutes to test whether the script works or Not.

Finally, go to the designated folder/location to see the
saved image/file; or simply type in the following in the bottom left part of 3ds Max:
display (getLastRenderedImage()) ;
followed by pressing Enter.

The OK text in blue should appear below, along with
the last saved render in the frame buffer.

The beauty of this script is that it will give the user the reassurance/peace of mind that when/if the render crashes it will be saved. This will also enable the user to continue from where the render was last saved; as opposed to starting from scratch again!

Currently the script works mainly with the 3Ds Max frame
buffer, regardless of the rendering engine being deployed.

The panoramic image below was rendered using the Render_autosave script!

If there are any specific features you would like to see implemented in
this script, please contact David Venables through his LinkedIn page HERE or
via email HERE.

I don't suppose one is likely to be able resume the frame buffer render if/when it crashes?!However, users can safely retrieve any of the renders periodically saved automatically, from any location/folder set by the user...as explained earlier!

I change some code here for my personal use I want to share with you because learn many thing from you every time checked this website ! thanks my man

newfeatures1: Save bitmap that include (max file name + max current viewport ) in name 2: adding ability for using vray frame buffer if you want I can add it to a macro to control every thing from an UI

For next step lets add ability to resume render if crashed last time! I think the idea must be as simple as1: check the Max file folder for last tif saved 2: get the bucket size from Renderer3: slice the image to bucket size pieces then resize them to one pixel and get the mid color of that pixel if BLACK then continue from there :) (the main problem here is that we must use top-bottom or left- right in sequence method )

It's a nice idea.... however I think it's likely to crash your render just as much as save it. If a render crashes it's normally because it runs out of RAM more than a software failure, Vray especially rarely crashes max completely.

Using this script you're creating a new image object to save your render which is going to eat into RAM especially with a large render, and there's no Garbage collection so you might be incrementally eating ram (I'd need to check this).

Otherwise there are many ways to render large images, strip rendering with Backburner, or Tile Rendering with Deadline which you can use for free with 2 workstations, and thus even with one machine you can set up your own local render farm and render huge images in tiles and not risk running out of RAM and crashing your render and if it does randomly crash the rendering system will automatically attempt it again.

I've rendered images of 60,000 pixels before and push the memory limit of max to the limit on a daily basis, Tile rendering is the way forward.

You have some valid points. However, auto-saving the renders in the frame buffer periodically NOt only will give you that much needed piece of mind, but also help the user determine where in the frame buffer the "crash" took place.Yes, one can use strip render, tile render, etc...But it still doesn't mean the render will not crash due to lack of Ram, server failure, a rogue object in the scene, etc!I too use Vray extensively...and I tell you: It crashed several times for all the above mentioned...and other reasons.

In fact, very recently this script helped patched up a big shot...when the deadline was due the following morning: literally the render crashed when there were only eight buckets left to complete the full frame.The auto-saved frame buffer also helped me pin poit that, the problem was a rougue object that I had merged in my scene!

Perhaps the way forward is to use this script with backburner for strip renders or tile rendering?!

this function is already on vray frame buffer, just UNCKED RENDER TO MEMORY FRAME BUFFER option, and enable "RENDER TO VRAY RAW IMAGE FILE", this way, every image cluster will be saved directly to your VRIMG file, and if your pc crashes while rendering, you will be able to use the VIEW IMAGE FILE menu and open the image containing last rendered clusters. Recomend to use the AUTOSAVE LIGHTCACHE and IRRADICANCE MAPS options, as well render from TOP to BUTTON.

Translate

Most Recent Visitors

Search in this Blog(..simply type in this space below)

Portfolio= 3D Architectural Visualisation

About Me

A renowned Author, Reviewer, Computer Artist and Technologist,
with years of experience in creating state-of-the-art 3d photomontages, Verified Views, VR, Stereos, Photorealistic Interior and Exterior Visualisations for Architects, Designers, etc.
I also provide live technical support to companies and Viz Artists worldwide.
Much of my work and contributions have been featured in books and magazines such as, 3D World, CG Society, TutsPlus,3D Total, etc.
In addition, I have co-authored two successful books entitled: Realistic Architectural Visualization with 3ds Max and mental ray.
Most recently, I've published a New Book with Taylor & Francis group, entitled:
3D Photorealistic Rendering: Interiors and Exteriors with V-Ray & 3Ds Max.
In my spare time (whenever that is), I share some of my knowledge with readers, by posting free step-by-step-tutorials in this blog.
jamiecardo@hotmail.com