views:

179

answers:

1

Hi

I have a reasonably advanced (many patches and subpatches) quartz composition that was created in Snow Leopard but doesn't run well (many elements are not rendered) in Leopard. The composition tested OK via Quartz Composer's Test in Runtime option and works fine for both Leopard 32-bits and Leopard 64-bits (menu item "File | Test in Runtime | Leopard 32-bits".

In an actual Leopard (32-bits) system, a lot of elements are not rendered in the quartz composition. Below are the log file excerpt when the composition is run in QuickTime Player under Leopard:

QuickTime Player[134] *** <QCNodeManager | namespace = "com.apple.QuartzComposer" | 335 nodes>: Patch with name "/units to pixels" is missing 
QuickTime Player[134] *** Message from <QCPatch = 0x06D82880 "(null)">:Cannot create node of class "/units to pixels" and identifier "(null)" 
QuickTime Player[134] *** Message from <QCPatch = 0x06D7C130 "(null)">:Cannot create node of class "/resize image to target" and identifier "(null)" 
QuickTime Player[134] *** Message from <QCPatch = 0x06D7C130 "(null)">:Cannot create connection from ["outputValue" @ "Math_1"] to ["Target_Pixels" @ "Patch_2"] 

The patch units to pixels is a system virtual patch in Snow Leopard (located in /System/Library/Graphics/Quartz Composer Patches/Units to Pixels.qtz) whereas the patch resize image to target is a custom virtual patch located in my home directory.

It seems that we can cross out problems in which the composition is referencing a missing virtual patch. I have tested the composition under another user's account and it ran fine which shows that it already embeds the "resize image to target" virtual patch that is located in my home directory.

I'm really puzzled why the composition passes the Leopard Runtime test but yet fail to run in an actual Leopard OS? Is there a post-processing step that I need to run to the composition file? Is there any way to make this patch more compatible with Leopard?

Thanks in advance.

+2  A: 

Leopard does not support embedded virtual patches (even though the Test In Runtime feature appears to).

Go to the File menu and hold the Option key, then select Save a Flattened Copy As.... This will convert all virtual patches to normal Macros, which Leopard should be able to comprehend.

smokris
It worked! Thanks so much. Now why do Apple hides an important menu item like that in the first place... not intuitive ^_^
adib