定義

 
 
 

UFO プロセスの定義および初期設定は、ufoProcessDefine ユーザ関数で指定する必要があります。 この定義および初期設定は、プロセス ID の定義、入力、出力およびパラメータの数とタイプ、そしてパラメータ デフォルト初期設定をはじめとする一般的な初期設定などです。

ufoProcessCreate は、UFO プロセスの初期定義インスタンスを返します。その UFO プロセスの初期定義インスタンスまたはそのコピーからコピーされたインスタンスが、本質的に後続の UFO プロセス インスタンスになります。 このインスタンスは、定義ユーザ関数のボディ内部に呼び出されるほとんどの関数に対して与えられるものです。 特定の UFO プロセスの各コピーには、インスタンス オブジェクトが関連付けられます。この関連付けによって、UFO プロセス インスタンスは、他のすべての UFO ユーザ関数およびほとんどの UFO ライブラリ関数の中の第 1 引数として渡されます。

オプション

編集可能なパラメータの数、タイプ、およびサブグループは、ufoProcessDefine ユーザ関数で定義する必要があります。 利用可能なパラメータ タイプには、次のものがあります。

パラメータ

説明

ufoBooleanParam

true/false、オン/オフ

ufoEnumParam

リスト選択

ufoIntegerParam

整数

ufoFloatParam

浮動小数

ufoNormalisedParam

浮動小数の正規化(0..1)

ufoAngleParam

浮動小数の角度

ufoColourRGBParam

RGB カラー

ufoRectangleParam

浮動小数の長方形

ufoPos3dParam

浮動小数の 3D 位置

ufoScale3dParam

浮動小数の 3D スケール

ufoPos2dParam

浮動小数の 2D 位置

ufoScale2dParam

浮動小数の 2D スケール

ufoStringParam

ASCII 文字列

パラメータの ID、タイプ、およびグループを定義するには、パラメータごとにライブラリ関数ufoProcessParamDefine(または ufoProcessEnumParamDefine タイプのパラメータの ufoEnumParam)を呼び出す必要があります。

各グループに ID を付けるには、パラメータ グループを ufoProcessParamGroupDefine で定義する必要があります。

パラメータ タイプが ufoIntegerParamufoFloatParamufoNormalisedParamufoRectangleParamufoPos3dParamufoScale3dParamufoPos2dParam または ufoScale2dParam の場合、ufoProcessSetParamLimits を使用してパラメータの制限を定義する必要があります。

デフォルトでは、パラメータはアニメート可能になります。これは、各フレームで値を調整するとキー値が自動的に追加されることを意味します。 パラメータ値が一定の時間に一定の値になるように意図する場合、ufoProcessSetParamAnimAllow を使用します。

デフォルト値またはキーフレーム アニメーションは常に、ufoProcessSetParamDefaultValue/s または ufoProcessSetParamDefaultKey/s が存在するパラメータごとに設定する必要があります。

トランジション エフェクトに関しては、パラメータがトランジション アニメーションを形成するデフォルト パラメータ キーを持つ場合、ufoProcessSetParamAutoTransition ライブラリ関数を使って、パラメータ キーを初めて使うときにトランジションの長さに合わせて自動調整されるように設定できます。

デフォルトでは、自動生成された GUI においてパラメータが配置されます。 それらのパラメータは、列内の矩形範囲の左上部からフォーマットされます。 ufoProcessSetParamColumnHint 関数を使用すると、パラメータ ツールをどの列内に配置すべきかがアプリケーションに示唆されます。

特定のタイプのパラメータ同士は連結可能です。 サポートされているタイプは、ufoIntegerParamufoFloatParamufoNormalisedParam、および ufoAngleParam です。 連結パラメータは、すべてのスライダの同時移動を可能にする特別な制御を持ちます。たとえば、連結コントロールがオンに切り替えられて連結パラメータのどれか 1 つが変更されると、どの連結パラメータも同量ずつ変更されます。 パラメータを連結する場合、パラメータ定義時に呼び出す必要のある関数は 2 つです。ufoProcessSetParamGang を呼び出すと、連結コントロールで(同じタイプの)パラメータ セットを連結するよう指定できます。 ufoProcessSetParamGangLabel を呼び出すと、連結されたパラメータの総称タイトルを設定します。

ufoProcessSetEffectType 関数は、UFO が属するエフェクト グループのタイプを設定します。 現行バージョンでは、この関数でエフェクト タイプがトランジションであるかどうかの通知しかできないため、設定可能な値は ufoUndefinedEffect または ufoTransitionEffect のどちらかに限られています。