KSP General Commands 日本語訳と実例

一般的なコマンドについて




p.056 exit

直ちにコールバックを停止するか、関数を終了する

on note
if (not(in_range($EVENT_NOTE,60,71)))
exit
end if
{from here on, only notes between C3 to B3 will be processed}
end on


p.057 ignore_controller

コントローラーコールバックでコントローラーイベントを無視する

on controller
if ($CC_NUM = 1)
ignore_controller
set_controller($VCC_MONO_AT,%CC[1])
end if
end on


p.058 message()

KONTAKTのステータス行にテキストを表示する

備考

  • messageコマンドは、スクリプトのプログラミング中にデバッグやテストに使用するためのものです。 KONTAKTにはステータス行が1つしかないので、ユーザーとのコミュニケーションの一般的な手段として使用すべきではなく、代わりにラベルを使用してください。
  • initコールバックの開始時にメッセージ( "")を書くことを習慣にしてください。以前のすべてのメッセージ(スクリプトまたはシステムによる)が削除され、新しいメッセージのみが表示されることを確認できます。
  • initコールバックで定義されたメッセージは、APPLYボタンをクリックしてスクリプトを手動で適用した場合にのみ表示されます。これらのメッセージは、計測器がスクリプトを自動的にロードして初期化するときには表示されません。

画像の説明

on note
message("Note " & $EVENT_NOTE & " received at " & ...
$ENGINE_UPTIME & " milliseconds")
end on


p.059 note_off(ID)

特定のノートにノートオフメッセージを送信する

備考

  • note_off()はキーを解放するのと同じで、リリース・コールバックとボリューム・エンベロープの解放部分を常に起動します。 note_off()とfade_out()の違いに注意してください。なぜなら、fade_out()は音声レベルで動作するからです

画像の説明

on init
declare polyphonic $new_id
end on
on note
ignore_event($EVENT_ID)
$new_id := play_note($EVENT_NOTE,$EVENT_VELOCITY,0,0)
end on
on release
ignore_event($EVENT_ID)
wait(200000)
note_off($new_id)
end on


p.060 play_note()

play_note(<note-number>,<velocity>,<sample-offset>,<duration>)
MIDIノートを生成する、すなわちノートオンメッセージを生成した後にノートオンメッセージを生成する

<note-number>:
生成されるノート番号(0〜127)
<velocity>
生成された音符のベロシティ(1~127)
<sample-offset>
マイクロ秒単位のサンプルオフセット
<duration>
生成された音符の長さ(マイクロ秒)
このパラメータには2つの特別な値も指定できます。
・1:コールバックを開始したノートを解放してサンプルを停止する
・0:サンプル全体が再生されます。

備考
・DFDモードでは、サンプルオフセットはそれぞれのゾーンのSample Mod(S.Mod)値に依存します。ゾーンのS.Mod設定より大きいサンプルオフセット値は無視され、サンプルオフセットは適用されません。
・<variable>:= play_note(<note>、<velocity>、<sample-offset>、<duration>)を記述

画像の説明

on note
play_note($EVENT_NOTE+12,$EVENT_VELOCITY,0,-1)
end on

on init
declare $new_id
end on
on controller
if ($CC_NUM = 64)
if (%CC[64] = 127)
$new_id := play_note(60,100,0,0)
else
note_off($new_id)
end if
end if
end on


p.062 set_controller()

set_controller(<controller>,<value>)
MIDI CC、ピッチベンドま​​たはチャンネルの圧力値を送信する

<controller>
このパラメータはMIDI CCの種類とCC番号を設定します
・0〜127の数字はMIDI CC番号を示します
・$ VCC_PITCH_BENDはPitchBendを示します。
・$ VCC_MONO_ATはチャンネルの音圧(モノフォニックアフタータッチ)
<value>
指定されたコントローラの値
MIDI CCとチャンネルの圧力値は0〜127になります
PitchBendの値は-8192から8191になります

備考
set_controller()は、initコールバック内で使用しないでください。

on note
if ($EVENT_NOTE = 36)
ignore_event($EVENT_ID)
set_controller($VCC_MONO_AT,$EVENT_VELOCITY)
end if
end on
on release
if ($EVENT_NOTE = 36)
ignore_event($EVENT_ID)
set_controller($VCC_MONO_AT,0)
end if
end on


p.063 set_rpn()/set_nrpn

set_rpn(<address>,<value>)
rpnまたはnrpnメッセージを送信する

<address>
rpnまたはnrpnアドレス(0〜16383)
<value>
rpnまたはnrpnメッセージの値(0〜16383)

備考
KONTAKTは外部変調ソースとしてnrpnメッセージのrpnを処理できません。ただし、これらのメッセージを簡単なスクリプト間通信に使用できます。


p.064 set_snapshot_type()

set_snapshot_type(<type>)
スナップショットが呼び出されたときの5つのスロットすべてのKSPプロセッサの動作を設定します

<type>
使用できるタイプは次のとおりです。
0:スナップショットの変更時に常にinitコールバックが実行され、その後にon persistence_changedコールバックが実行されます(デフォルト動作)
1:スナップショットのロード時にinitコールバックが実行されず、on persistence_callbackのみが実行されます

備考

  • このコマンドはグローバルに動作します。つまり、任意のスクリプトスロットに適用できます。
  • スナップショットタイプ1では、永続性でないインストゥルメンテーション変数の値が保持されます。
  • スナップショットを読み込むと、KONTAKTのオーディオエンジンが常にリセットされます。つまり、オーディオが停止し、すべてのアクティブなイベントが削除されます。

画像の説明

on init
set_snapshot_type(1)
declare ui_knob $knob_1 (0,127,1)
set_text($knob_1,"Knob")
make_persistent($knob_1)
declare ui_button $gui_btn
set_text($gui_btn,"Page 1")
end on
function show_gui
if ($gui_btn = 1) set_control_par(get_ui_id($knob_1),$CONTROL_PAR_HIDE,...
$HIDE_PART_NOTHING)
else
set_control_par(get_ui_id($knob_1),$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL)
end if
end function
on persistence_changed
call show_gui
end on
on ui_control ($gui_btn)
call show_gui
end on

最後までお読みいただきありがとうございます!
この記事が気に入ったらシェアをお願いします。

  画像の説明

Total:2588 Today:2 Yesterday:1 Now:7

コメント


認証コード5080

コメントは管理者の承認後に表示されます。