Click to Return to Home Page
 Main Page Software Page Tutorials Page

First Tip

Satori Tips and Tricks for Advanced Users

# 2: The Mathematical Black Hole, and How Not to Fall Into It ..

Written by Michael Hirsh

Let me tell you a story...

One dark and stormy night, I was finishing a three day project. It involved piecing together many elements of photographic artwork that had been used to compose a TV resolution image, and recompose them as a poster. The poster measured 60 centimetres by 80. The printer wanted the artwork as a 300 dots per inch TIF file. Big enough, but no sweat for Satori, or so I thought....
I had followed my own recommended method for creating large, multi-layer canvases, ( See "The Big Picture" tutorial on this website ) All was going well. I had e-mailed a small preview to the client. He liked the poster but wanted, yes, you guessed it: "just a couple of tweaks".
The main tweak concerned pinching in the top of the skyscrapers, shown in the slightly cropped view below.
 
 Satori Composite of ten layers of Buildings 576 x 523 pixels
 Nine layers of skyscrapers, each with its own mask used for cleaning up the edges.

 Back to TOP
Layer List Palette for the ten layer buildings canvas
I thought I'd just save these as a cvs file

 Back to TOP
In order to maintain maximum editability, I saved these nine layers of buildings as one canvas file, and then I placed that in the "master" canvas, ready for rendering.
 The dreaded Quad Distort Button
Use this button with caution 
The ideal tool for pinching in the top of the skyscrapers cvs, was the Quad Distort button in the Warp tab of the Layer actions. So I used it. What should have happened is shown below. But reaching this result took a few more hours than I thought it would.
Seven, actually.
do not hotlink to my images
do not hotlink to my images
  Nice skyscrapers; Shame about the rendering time...

 Back to TOP

So what went wrong with the render?

It kept falling into a mathematical black hole. I had nested a canvas file (call it "buildings.cvs") within another canvas file ( "master.cvs") that contained ten other layers, many of which contained scaling and other transforms, I had applied the famous Quad Distort to the "Buildings.cvs" layer, which meant that it was referring to another canvas file that also contained scaling, transforms and masks in every layer, and the renderer kept running out of puff and obstinately went into a spin at around 8%.
I tried everything. I turned the Fast Renderer off, which is sometimes recommended. I reduced the resolution, but Satori kept telling me that the render had failed because of lack of memory. But hang on! I have 512 Megabytes of memory on this machine! It can't possibly run out. Can it?
On and on for hours. It was now 2 o'clock in the morning. The printer was waiting for the disc at nine the same morning. Much as I wanted to, I couldn't ring Mark Graham at that hour.
I tried breaking the "master.cvs" into smaller chunks saved as RIRs. I installed Satori and all the files onto a dual 750 Mhz Intergraph workstation. It still hung at 8%. AAAAAAAARGH!!!!
I prayed. I even tried the advice on page 507 of the User Guide. Yes, I was getting desperate. And what's worse, very bored.
I eventually thought: "Sod it !" and saved it at a smaller size and at a lower resolution, watching the Performance tab on NT Task Manager like a hawk in case the memory usage started creeping up into the danger zone. The poster was to be printed as a short run of 5 copies on a large inkjet so it would probably be OK, with a bit of smoothing turned on in the printer. Fortunately this turned out to be the case. But there would still be the need for the proper high resolution version...
The printer got the disc on time, I got some sleep, and the client loved the job. Next day I phoned Mark Graham at Satori for a post mortem.

So what should I have done ?

As if you had not guessed, the trouble arose from using the (in)famous Quad Distort on a canvas layer nested into another canvas. This is what gave rise to the famous "Black Hole" rendering error.
There's no need to put yourself through this exquisitely rare type of pain. Take the easy way out, and save the original, nested canvas as an RIR file. Open it. Apply the Quad Distort to the RIR bitmap, and then save it again as a RIR file with a new name. Then load the new, distorted RIR as a Layer into the final canvas that you want to render for print. Everything will then be tickety-boo.
You may never need to read page 507.
Below you will see how the layer list looked the next day, after I had done this intermediate saving of the buildings layer as an RIR bitmap. I can't show you the original troublesome Layer list because I no longer have it, for reasons that are probably obvious.

 The eventual composition of the canvas, ready for a successful render.
 This is what I should have done !!!

And the Moral Of This Story ?

By all means use nested canvases to composite images. Go ahead and use the Quad Distort button on a nested CVS layer, But, and this is a huge BUT, Don't use these for rendering large files. Save all the layers that use Scaling and other Transforms, especially Quad Distort, as separate RIR bitmap files. Then recompose all your layers in a new canvas ready for rendering. All the heavy number crunching will have already been done during the RIR renders, and Satori won't get its knickers in a twist just before the finishing ribbon.
I finally rendered out the 60 X 80 cms (24 X 30 inches) TIF file at 300 dpi, without further trouble. Thanks Mark.

 Back to TOP
 Main Page Software Page Tutorials Page

First Tip

 SITE MAP