Eyeon:Manual/Fusion 6/Managing Preferences in Larger Environments

From VFXPedia

< Eyeon:Manual | Fusion 6
Revision as of 08:17, 10 February 2011 by SirEdric (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Managing Preferences in Larger Environments

[ Main Manual Page ]


Contents

Managing Fusion Preferences in Larger Environments

The point of this document is to outline a technique by which you could allow artists to have independent Fusion preferences for elements such as layout, flow building order, etc, while still maintaining a degree of control over critical elements, such as frame format, render master, script paths, and memory usage.

On Windows XP systems Fusion 6.0 will create and store it's preferences in a sub-folder of the main installation called profiles\default. On Vista and Windows 7 systems this may appear in C:\ProgramData\eyeon\Fusion\Profiles\Default, due to changes in the basic permissions model. Regardless of who is logged in, all users on the computer use the preferences stored in this folder.

Preferences For Each Artist

We will want to move these preferences to a network location that is accessible to all users instead. For the purposes of this document, lets assume we have created a folder on V: to store the preferences. For example :

v:\eyeon\fusion\preference_library

To instruct Fusion to use this folder for preferences, we must create an environment variable with the name FUSION_PROFILE_DIR and set the value to the path to this folder.

FUSION_PROFILE_DIR=v:\eyeon\fusion\preference_library
Note: If there are spaces in the path name, do NOT wrap the path in quotes.

Now, whenever Fusion starts, this environment variable will instruct it to look for preferences in the v:\eyeon\fusion\preference_library\default folder. If none exist, it will create a sub-folder called Default, and put a default copy of the preferences within. We want to take it further, and have it store a different set of preferences for each user. So we set another environment variable with the name FUSION_PROFILE

FUSION_PROFILE=jane

Now, Fusion will look for the preferences in the folder v:\eyeon\fusion\preference_library\jane instead. The trick I use most frequently here is to set FUSION_PROFILE to the name of the logged in artist with a login script (or by launching Fusion with a batch file).

So now we have a unique set of preferences for each artist. How can we maintain central control over critical settings, such as Frame Format, Pixel Aspect or memory usage? For this we will need one more environment variable, called FUSION_MasterPrefs.

FUSION_MasterPrefs=v:\eyeon\fusion\preference_library\master_locked.prefs

Example for a preference file

In this example, we have set the value of FUSION_MasterPrefs as a fully qualified path to a file called master_locked.prefs. This file contain a partial preferences file, assembled by copying portions of a Fusion preference file. The following example shows the format for one possible example :

{
Locked = true,
Comp = {
 AutoSave = {
  Enabled = true,
  Delay = 300,
  OnRender = false,
 },
},
Global = {
 Tweaks = {
  DisableCancelIO = true,
  DisableDirectReads = true,
  ReadAheadBuffers = 4,
 },
 Paths = {
  Map = {
   ["Scripts:"] = "v:\eyeon\fusion\scripts;Fusion:Scripts",
   ["LUTs:"] = "v:\eyeon\fusion\LUTs;Fusion:LUTs",
   ["Defaults:"] = "v:\eyeon\fusion\defaults",
   ["Fuses:"] = "v:\eyeon\fusion\fuses;Fusion:Fuses",
   ["Macros:"] = "v:\eyeon\fusion\macros;Fusion:Macros",
   ["Settings:"] = "v:\eyeon\fusion\settings;Fusion:Settings",
  },
 },
},
}

This example is in eyeonscript's table format. It turns on the AutoSave preference, and sets the AutoSave interval to 300 seconds. It also disables certain IO tweak settings, and assigns a few pathmaps that allow fusion load Scripts, LUT's, Tool Defaults, Fuses, Macros and settings from a network location as well as the usual local folders. (that particular trick may require Fusion 6)

The first entry in the table (on line 2) is "Locked=true". This tells Fusion the preferences in this file should be considered locked - unchangeable by the artist once Fusion has been opened.

Multiple Preferences

What if we have preferences we want to suggest, but which we want to allow the artist to change later if they so desire? We simply add a second path to the FUSION_MasterPrefs variable, containing those suggestions. We separate the paths with a semi-colon (no spaces), as shown in the following example:

FUSION_MasterPrefs=v:\eyeon\fusion\preference_library\master_locked.prefs;v:\eyeon\fusion\preference_library\master_unlocked.prefs

The master_unlocked preferences are identical to the master_locked preferences in format, we just remove the "Locked=true" line. Note that these unlocked master preferences will only really apply when a new set of default preferences are created, say when a new artist starts Fusion for the first time. Once the artist specific preference file is created, these will be overridden by the artists personal choices. That lets an artist make their own choices about whether the flow snaps to grid, builds tools horizontally or vertically, etc.

About Comp and Global Preferences

Internally Fusion has two classes of preferences, called Comp and Global. Global preferences apply to Fusion generally, and would affect all compositions equally.

An example Global preference is the Render Manager setting in the Network panel. Regardless of what composition is currently open, the render manager is not going to change. Comp preferences are preferences which will be copied to new compositions when they are created. Once a composition is created, it carries it's own copy of these preferences from then on.

In the locked example fragment above, the AutoSave preferences are found in the Comp table, and the Tweak and Path preferences are Global preferences.

To provide a clearer example, imagine we have used the locked master preference file to set the default width, height, pixel aspect and frame rate for new compositions to values appropriate for a 2K Anamorphic project. These Frame Format settings are all considered to be Comp preferences. The artist would be unable to change the values that appear in the preferences dialog's Global/Frame Format panel. When an artist creates a new composition, it's default frame format would be set to 2K Anamorphic. Since each composition carries it's own copy of the Frame Format preferences, it would thereafter be possible for the artist to change the frame format of that specific composition to whatever they desired.

This reflects the fact that many facilities will work on more than one project at a time, and they may not necessarily all share the same frame format requirements. Generally, you should only use the locked master preferences to set the Frame Format to a fixed value if all your compositions will always use the same settings.

So What About Frame Format Then?

What if you do want to make sure that all artists use the 'approved' frame format for a project? A common source of errors in many facilities occurs when a project requires a non-square pixel aspect in the renders (i.e. for an anamorphic render) but the artist accidentally sets the pixel aspect to square pixels instead. The best way to deal with this is to check the composition when it is submitted for rendering - if the pixel aspect does not match the intended value for the project, then make the artist confirm that the composition is correct before allowing the render to take place.

You could also have a script attached to the OnSave and OnSaveAs that checks the compositions pixel aspect against the projects expected setting, and warns or corrects the artist when they Save.

Since either this approach involves a fair bit of scripting, we'll handle that in a future document.

Conclusion

The approach described above outlines a reasonable approach to getting some centralized management over the artists preferences while still allowing each artist a measure of personal choice over factors such as layout. I hope you found this document useful. If you have questions or require additional assistance, please feel free to contact us using the contact information at the bottom of this document.

Eyeon Software Tech Support:

tech@eyeonline.com +1 416 686-8411