Creator Toolsマニュアル 2 - Creator Toolsの概要(Overview of Creator Tools)

Creator Toolsマニュアル 2 - Creator Toolsの概要(Overview of Creator Tools)

Creator Toolsは、Project Panel、Top Panel、Bottom Panelという3つのパネルで構成されています。各パネルにはそれぞれ異なるツールが含まれており、アプリケーションのトップメニューにあるViewメニューから、または専用のショートカットを使って表示と非表示を切り替えられます。ツールの切り替えは、各パネル上部のタブから、アプリケーションのトップメニューにあるGoメニューから、または専用のショートカットを使って行えます。これらのショートカットは、Creator Toolsでアクティブになっているパネルに関連するアクションを実行します。

  1. Project Panel:詳しくは、Project Panel [⌘/Ctrl-1]の章を参照してください。
  2. Top Panel:詳しくは、Top Panel [⌘/Ctrl-2]の章を参照してください。
  3. Bottom Panel:詳しくは、Bottom Panel [⌘/Ctrl-3]の章を参照してください。

Project Panel [⌘/Ctrl-1]

Project Panelは、Project Manager(パネル上部に配置)とFile Browser(パネル下部に配置)で構成されています。ファイルシステムやプロジェクトのリソースを参照するためのツールであり、ファイルをダブルクリックすることでCreator Toolsから直接開けます。


Project Manager [F1]

Creator Toolsのプロジェクトファイルには、インストゥルメント制作の工程に関係するすべてのデータが含まれます。Creator Toolsのプロジェクトファイルの形式はJSONであり、ソースコードのバージョン管理システムを利用できます。

Project Managerは、Creator Toolsのプロジェクトファイルを編集可能な形で表示するものであり、そのためCreator Toolsのプロジェクトファイルが開かれているときにのみ使用できます。プロジェクトのリソースへの中心的なアクセスポイントとして機能し、必須ではありませんが、使用するすべてのリソースを含めることもできます。

Project Managerには以下の項目が表示されます:

  • プロジェクトファイル内のFileおよびFolderの項目は、ファイルシステム上の対応するファイルやフォルダーを参照します。参照先がプロジェクトファイルのあるフォルダーまたはその下位フォルダーにある場合、参照はプロジェクトファイルの場所を基準とした相対的な形で記録されます。それ以外の場合は、絶対的な参照が使用されます。
  • プロジェクトファイル内のGroupの項目は、プロジェクトを階層構造として整理します。グループには、別のグループ、ファイル、フォルダーを含めることができます。

プロジェクトファイルの場所や構造について強制される規則はありません。プロジェクトフォルダーや、強制されるプロジェクトフォルダー構造が必ずしも存在するわけではありません。複数のプロジェクトファイルが並存していても構いません。

ℹ️

プロジェクトファイルは、共通リソース用のサブフォルダーとともにプロジェクトフォルダー内に置くことをおすすめします。プロジェクトを他のデバイスやプラットフォームへ移す場合は、プロジェクトが自己完結していること、すなわち相対的な参照のみを含んでいることが重要です。

Insertメニュー [⌘/Ctrl-↵]

  1. Files:OSのファイル選択ダイアログを開きます。選択したファイルごとに1つのエントリーが挿入されます。
  2. Folder:OSのファイル選択ダイアログを開き、選択したフォルダーを挿入します。フォルダーを選択すると、その内容が下のFile Browser領域に表示されます。
  3. Group:新しいグループを挿入します。Groupの項目にはファイル、フォルダー、グループを含めることができ、名前を変更できます。
  4. Performance View:OSのSave Asダイアログを開き、新しいperformance viewファイルの保存場所を指定します。新しいperformance viewの項目がプロジェクトに追加されます。

上記のすべての項目について、Project Managerでグループが選択され展開されている場合、挿入された項目(複数の場合もあります)はそのグループの中に配置されます。それ以外の場合、挿入された項目(複数の場合もあります)は現在選択されている項目の上に配置されます。

ショートカット

上下の矢印キー [↑/↓] 上下に移動します
左右の矢印キー [←/→] グループを展開または折りたたみます
Return [↵]

現在の項目がグループの場合、グループの名前を変更します

現在の項目がフォルダーの場合、システムのファイルブラウザを開きます

現在の項目がperformance viewなど関連付けられたファイルの場合、Creator Tools内でそのファイルを開きます

テキストエディターなど、システムで関連付けられたアプリでファイルを開きます

ダブルクリック

現在の項目がグループの場合、グループの名前を変更します

現在の項目がperformance viewなど関連付けられたファイルの場合、Creator Tools内でそのファイルを開きます

テキストエディターなど、システムで関連付けられたアプリでファイルを開きます


File Browser

File Browserは、Project Managerの下に位置するProject Panel内の副次的な領域です。ファイルシステムを読み取り専用で表示し、ファイルやフォルダーをたどって移動できます。現在のルート内にあるファイルやフォルダーをフラットなリストで表示します。

  1. Homeボタン:プロジェクトファイルがあるフォルダーへ移動します。
  2. Parentボタン:現在表示されているフォルダーの親フォルダーへ移動します。

ショートカット

上下の矢印キー [↑/↓] 上または下へ移動します
Cmd/Ctrl-up [⌘↑] 親フォルダーへ移動します
Cmd/Ctrl-down [⌘↓] フォルダーに入ります
Return [↵]

現在の項目がフォルダーの場合、システムのファイルブラウザを開きます

現在の項目がperformance viewなど関連付けられたファイルの場合、Creator Tools内でそのファイルを開きます

テキストエディターなど、システムで関連付けられたアプリでファイルを開きます

ダブルクリック

フォルダーに入ります

現在の項目がperformance viewなど関連付けられたファイルの場合、Creator Tools内でそのファイルを開きます

テキストエディターなど、システムで関連付けられたアプリでファイルを開きます


Top Panel [⌘/Ctrl-2]

Top Panelは、Instrument EditorとGUI Designerで構成されています。


Instrument Editor [F2]

Instrument Editorは、実行中のKontaktのインスタンス(プラグインまたはスタンドアローン)に接続し、インストゥルメントの構造を入れ子のツリーの形で表示します。Bottom PanelのLua Scriptツールと組み合わせることで、Kontaktインストゥルメントの構造の一部にLuaベースのスクリプトを通じてプログラムからアクセスできます。

  1. Multi Rackメニュー:接続されているいずれかのKontaktインスタンスのMulti Rackに、ツールのフォーカスを設定します。
  2. Instrumentメニュー:接続されているいずれかのKontaktインスタンスに読み込まれている、選択したMulti Rack(1)内の特定のインストゥルメントに、ツールのフォーカスを設定します。

    ℹ️

    編集ビューがロックされているインストゥルメントは選択できませんのでご注意ください。

  3. Push: [⌘/Ctrl-Alt-↑] ツール側のすべての変更をKontaktに適用します。変更がプッシュされていない場合、保留中の変更を知らせる表示がボタン上に現れます。
  4. Pull: [⌘/Ctrl-Alt-↓] 現在のKontaktの状態をツール側に上書きします。Kontakt側で変更が行われたときは、その変更をツールに反映させるためにPullを手動で押す必要があります。変更がプルされていない場合、保留中の変更を知らせる表示がボタン上に現れます。
  5. 接続インジケーター:ツールとKontaktインスタンスとの接続が正常に確立されているかどうかを示します。
  6. Instrument Tree View:インストゥルメントの構造が入れ子のツリーの形で表示されます。このツリービューには、基本的なインストゥルメントの構造と、Luaスクリプトで変更できるインストゥルメントのプロパティが表示されます。

GUI Designer [F3]

GUI Designerを使うと、コードを書かずにKontaktのperformance viewやコントロールを組み立て、カスタマイズし、再利用できます。performance viewファイル(.nckp)とコントロールファイル(.nckc)という2種類のファイルを生成できます。

performance viewファイル(.nckp)には、インストゥルメントのグラフィカルインターフェースに関するすべての情報が含まれます。これらのファイルはKSPスクリプトに読み込めます。KSPでの読み込みを参照してください。新しいperformance viewファイルは、Project ManagerのInsertメニューから作成できます。

コントロールファイル(.nckc)は、単一のコントロール、またはコントロールのコンテナをエクスポートすることで作成されるファイルです(Panelsもあわせて参照してください)。これらのファイルは、後のGUI Designerプロジェクトに読み込んだり、共同作業者と共有したり、独自のUIライブラリを構築する土台にしたりできます。コントロールファイルをKSPに読み込むことはできません。

このツールの主な領域は、Tree ViewとPropertiesの2つです。

  1. Tree View:Kontaktのperformance viewの構造が、ツリーの形でここに表示されます。新しいperformance viewは1つの階層レベル、すなわちルートレベルを持ちます。Panelsにコントロールを追加すると、さらに階層を作成できます。詳しくはPanelsを参照してください。

    選択した1つ以上のコントロールに対する操作は、Tree Viewのコンテキストメニューから実行できます。コンテキストメニューの操作は次のとおりです:

    Cut [⌘/Ctrl-X] 選択範囲をクリップボードにコピーし、ツリーから削除します
    Copy [⌘/Ctrl-C] 選択範囲をクリップボードにコピーします
    Paste [⌘/Ctrl-V] クリップボードのコントロールを選択範囲の上に貼り付けます
    Duplicate [⌘/Ctrl-D] 選択範囲を複製します
    Rename [↵] 選択範囲の名前変更モードに入ります
    Delete [⌘/Ctrl-⌫] 選択範囲を削除します
    Import [⌘/Ctrl-I] ディスク上のコントロールファイル(.nckc)を探して読み込むために、システムのファイルブラウザを開きます。読み込まれたコントロールは、現在選択されているコントロールの上に配置されます
    Export [⌘/Ctrl-E] 選択したコントロールのファイル(.nckc)を任意の場所に保存するために、システムのファイルブラウザを開きます
  2. Properties:Tree Viewで選択した要素のプロパティを表示します。特定のプロパティをダブルクリックすると変更できます。あるいは、矢印ボタンでプロパティ間を移動し、Enterキーを押して変更することもできます。元に戻す操作とやり直す操作は通常のショートカットで利用でき、Undoは [⌘/Ctrl-Z]、Redoは [⌘-Shift-Z/Ctrl-Y] です。

    • Image:imageフィールドには、KONTAKT Instrumentのresourcesフォルダー内にあるpicturesサブフォルダーに含まれる画像(.png)のファイル名を入力します。
    • Fonts:ドロップダウンメニューから、25種類のファクトリーフォントのいずれか、またはカスタムフォントを選択して設定できます。"Custom"を選択した場合は、ピクチャーフォントのファイル名を入力します。Imageプロパティと同様に、ピクチャーフォントはKONTAKT Instrumentのresourcesフォルダー内にあるpicturesサブフォルダーに含まれている必要があります。
  3. Variable name:現在選択されているコントロールのKSP変数名がここに表示されます。KONTAKTでスクリプトを書くときは、この名前を使用してください。隣にあるCopyボタンを使うと、変数名をクリップボードに保存できます。

コントロールの追加

Insert Controlメニュー [⌘/Ctrl-↵]

新しいコントロールは、Insert Controlメニューからperformance viewのツリーに挿入できます。このメニューには、panelsという新しいコントロールを含め、既知のKontaktのUIコントロールがすべて表示されます(Panelsを参照)。

Import [⌘/Ctrl-I]

以前にエクスポートしたコントロールは、コンテキストメニューのImport機能でツリーに追加できます。コントロールを選択して右クリックし、コンテキストメニューを表示します。Importをクリックし、システムのファイルブラウザでそのコントロールの.nckcファイルを探します。Openを選択すると、現在選択されているコントロールの上に、そのコントロールがツリーへ追加されます。

Panels

panelは、1つまたは複数のコントロールを含むことができるコントロールです。他のコントロールとは異なり、panelにはサイズがありません。まとめて扱うことを想定したコントロールをグループ化するのに非常に便利です。これにより、そのpanelに含まれるすべてのコントロールのShow、Position、zLayerのプロパティを同時に変更できます。含まれるコントロールの位置はpanelの位置を基準とした相対的なものになります。つまり、そのコントロールの(0,0)の位置が、panelの現在の(x,y)の位置になります。

panelは入れ子にできるため、他のpanelを含めることができます。panelAがpanelBに含まれている場合、panelAはpanelBの手前に表示されます。これは、子のpanelが親のpanelよりも高いzLayerの値を持つためです。この仕組みを利用すれば、performance view内に階層を簡単に作成できます。

panelは、Tree Viewを整理された状態に保つためにも利用できます。panelは展開したり折りたたんだりできます。panelが選択され展開されている場合、新しいコントロールはそのpanelに含まれるコントロールの先頭に追加されます。panelが選択されていても折りたたまれている場合、新しいコントロールはそのpanelの上、panelと同じ階層レベルに追加されます。

KSPでのPanels

panelも他のコントロールと同様に、GUI Designerの外で純粋なKSPだけで使用できます。その際は、次のコマンドとコントロールパラメーターを使用します:

declare ui_panel $<my_panel_name>

panelを作成します

set_control_par(<control-to-add-ui-ID>,$CONTROL_PAR_PARENT_PANEL,<panel-ui-ID>)

panelにUIコントロール(またはpanel)を追加します

declare ui_panel $mixer
declare ui_knob $volume (0, 300, 1)
set_control_par(get_ui_id($volume), $CONTROL_PAR_PARENT_PANEL, get_ui_id($mixer))

mixerのpanelにvolumeノブを追加する


KSPでの読み込み

Resource Containerは、スクリプト、グラフィック、.nkaファイル、インパルスレスポンスファイルを保存するための専用の場所であり、そのコンテナにリンクされた任意のNKIまたはNKIのグループから参照できます。

Resource Containerを作成すると、GUI Designerに対応したバージョンのKontaktは、performance_viewという名前の新しいサブフォルダーを作成します。

performance viewをNKIで表示するには、performance viewファイル(.nckp)をそのNKIのperformance_viewサブフォルダーに保存する必要があります。保存したうえで、次のKSPコマンドによってNKIに読み込めます:

load_performance_view("filename")

ここで"filename"は、拡張子を除いた.nckpファイルのファイル名です。performance viewのファイル名に使用できるのは、英字、数字、アンダースコアのみです。

GUI Designerで.nckpファイルを保存すると、変更は自動的にKontakt側に適用されます。つまり、NKIのperformance viewを編集しているときに、そのNKIが実行中のKontaktインスタンスに読み込まれていれば、保存するたびにすべての変更をリアルタイムでプレビューできます。

競合を避けるため、1つのスクリプトスロットに読み込めるperformance viewファイルは1つだけです。必要であれば、KSPスクリプト内でさらにコントロールを宣言できます。

UIコントロールをエンジンパラメーターに接続する作業は、従来どおりKSPで行います。performance viewに含まれるコントロールの変数名は、その階層に基づいて、アンダースコアで連結した形で自動生成されます。

コントロールknobVolumeがpanel eqTabに含まれ、そのeqTabがpanel mixerTabに含まれているとします。このコントロールのKSP変数名は mixerTab_eqTab_knobVolume になります。

選択したコントロールのKSP変数名は、プロパティ領域の下部に表示されます。隣にあるCopyボタンをクリックする(またはショートカット [⌘/Ctrl-Alt-C] を使う)と、変数名をクリップボードにコピーできます。


初めてのPerformance Viewの作成とプレビュー

performance viewを作成してプレビューするには:

  1. Kontaktで新しいNKIを作成します。
  2. そのNKI用のResource Containerを作成します。
  3. Project Managerで新しいperformance viewを作成し、ダブルクリックしてGUI Designerで開きます。コントロールの追加を始めます。
  4. 参照するデータ(画像、ピクチャーフォント)がすべて、NKIのResource Container内にあるimagesサブフォルダーに保存されていることを確認します。
  5. performance viewファイルを、NKIのResource Container内にあるperformance_viewサブフォルダーに保存します。
  6. NKIのスクリプトエディターで、次のスクリプトを記述して適用します:

    on init
    load_performance_view ("filename")
    end on

    これで、GUI Designerでperformance viewの編集を続けられます。performance viewの変更をプレビューしたいときは、そのつどCreator Toolsのプロジェクトを保存してください。


Bottom Panel [⌘/Ctrl-3]

Bottom Panelは、KSP Log、KSP Variables、Lua Scriptで構成されています。


KSP Log [⇧F1]

KSP Logは、プラグインとスタンドアローンの両方を含め、実行中のすべてのKontaktインスタンスに接続します。

KSPから送られるメッセージ、警告、エラーを記録し、スクリプト変数の検査に対応し、通知ごとのタイムスタンプと基本的なフィルタリングオプションを提供します。

  1. Filter: [⌘/Ctrl-F] 有効にすると、フィルタリングオプションが表示され、適用されます。

    • 種類でフィルタリング(Variable Watching、Message、Warning、Error)
    • テキストでフィルタリング(Message列に含まれる文字)
    • Instrumentでフィルタリング
    • Script slotでフィルタリング
  2. Pause: [⌘/Ctrl-P] デバッグセッションを一時停止します。有効になっているとき、Pauseボタンは点滅します。セッションを再開すると、一時停止中に受け取ったすべてのメッセージが表示されます。
  3. Clear: [⌘/Ctrl-Backspace] ログの内容をすべて消去します。
  4. Settings:ログの動作を設定します。
  5. Log:Kontaktからのすべての通知がLog領域に表示されます。Logには7つの列があります:

    • Type
    • System Time
    • Engine Time
    • Message
    • Instrument
    • Script
    • Line

    TypeとMessageは固定ですが、その他の列はすべて非表示にできます。列ヘッダーを右クリックすると、列メニューが表示されます。


KSP Variables [⇧F2]

ここには、監視しているすべての変数と配列の現在の値が、出現した順に表示されます。検査の対象となる変数や配列ごとに、初期化時にエントリーが作成され、値が変化するたびに更新されます。値の変化はすべて、KSP Logにも時系列順で表示されます。

変数や配列の検査は、専用のKSPコマンドwatch_varおよびwatch_array_idxで行えます。

例えば、watch_var($count)は変数countの値の変化を検査し、watch_array_idx(%volume,5)は配列volumeのインデックス5の値の変化を検査します。

詳しくは、KSPリファレンスマニュアルもあわせて参照してください。


Lua Script [⇧F3]

ツール内からインストゥルメントの構造を変更する操作は、すべてLuaスクリプトの実行によって行われます。スクリプトは、ツール内にあるインストゥルメントのコピーを参照し、変更できます。変更可能なすべてのパラメーターは、Instrument Editorツールに表示されます。スクリプトは外部のエディターで作成、変更できます。

Lua Scriptツールは、テキストエディターで作成してディスクに保存したLuaスクリプトを読み込んで実行します。これによってインストゥルメントの構造を変更できます。グループやゾーンの並べ替え、追加、削除、それらの名前の編集、tune、volume、mappingといった一部のプロパティの編集が、簡単に行えるようになりました。限定的なファイルシステムアクセスにより、ディスク上のサンプルをもとに新しいインストゥルメントを作成することもできます。追加されたMIR機能(ピッチ検出やRMS検出など)は、インストゥルメント制作工程の一部を補助または自動化します。

上記の作業を始めやすくするために、Luaのサンプルスクリプトとチュートリアルスクリプトがアプリケーションフォルダーに用意されています。scriptsフォルダーの内容は、"user/Documents/Native Instruments/Creator Tools" にコピーしておくとよいでしょう。

スクリプトの出力はコンソール出力に表示されます。コンソール出力はすべて、コマンド [⌘/Ctrl-Alt-C] でシステムのクリップボードにコピーできます。スクリプトログの上限は100,000行です。

  1. Open in text editor: [⌘/Ctrl-E] 読み込まれているスクリプトファイルを、システムの既定のエディターで開きます。
  2. Run: [⌘/Ctrl-R] 読み込まれている.luaスクリプトを実行します。変更は直ちにInstrument Editorツールに反映されます。
  3. Stop: [⌘/Ctrl-I] 実行中のスクリプトを停止します。Instrument Editorの状態は、スクリプトが実行されなかったかのように元に戻ります。
  4. Clear: [⌘/Ctrl-Backspace] このツールの出力コンソールの内容をすべて消去します。

スクリプトの読み込み

スクリプトは、Project ManagerまたはFile Browserでダブルクリックするか、ディスク上の任意の場所から直接ドラッグすることで読み込めます。読み込まれたファイルのファイル名が、ファイル名の領域に表示されます。

ℹ️

現在のところ、WindowsにおけるCreator ToolsのLuaランタイムは、Unicode文字を含むファイルパスに対応していません。読み込みを成功させるために、スクリプトのファイルパスの名前を適切に変更してください。


Preferences [⌘/,]

Preferencesでは、Usage Data TrackingおよびLua Scriptのファイルシステム権限に関する設定にアクセスできます。

  • Preferencesにアクセスするには、Creator Toolsメニューを開き、Preferencesをクリックします。


Usage Data Tracking

製品の改善に役立てるため、Creator Toolsは使用状況に関する情報を記録して送信できます。データはプライバシーポリシーに従って収集され、アプリケーションのパフォーマンスに影響することはありません。

  • Yes, enable Usage Data Tracking:選択すると、Usage Data Trackingが収集されます。
  • No, I don't wan't to contribute:選択すると、Usage Dataは収集されません。

Lua Filesystem Access

ファイルシステムへのアクセスは、Creator ToolsのPreferencesで有効にできるようになりました。有効にすると、ターミナルコマンドの実行やファイルへの書き込みといった操作を、Lua Scriptツールで実行できます。

  • Enable Write and Execute Permissions:選択すると、Lua Scriptのファイルシステムアクセスが有効になります。
local path_sep = package.config:sub(1,1)
local terminal_command
if path_sep == "\\" then
    terminal_command = "dir"
else
    terminal_command = "ls"end
f = assert (io.popen(terminal_command))
for line in f:lines() do
    print(line)
end
f:close()

ディレクトリ構造をLuaコンソールに出力する

local some_text = "best text ever"
local some_file = scriptPath .. filesystem.preferred("/some_file.txt")

file = io.open(some_file,"w")
file:write(some_text)
io.close(file)

ファイルに書き込む


参照元情報:Overview of Creator Tools
https://docs.native-instruments.com/online-guides/creator-tools-manual/en/overview-of-creator-tools