Time COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

※当サイトにはプロモーションリンクが含まれます。

Time COMP の子ネットワーク時間制御機能を示す図

記事更新の通知はXでアナウンス٩(๑❛ᴗ❛๑)
@maru6o6をフォロー

概要 📖 – 子の時間と拍子を制御する

Time COMPは、子ネットワーク全体に独立した時間情報 (フレーム / レート / 拍子 / BPM) を供給するコンポーネントです。Play / Rate / Start / End で再生範囲、Range Limit で Loop / Hold、Tempo と Signature で BPM と拍子を制御します。

主な用途 🎯

  • 子ネットワークに独自のフレームレートと再生範囲を持たせる
  • Tempo と Signature で BPM と拍子を子 OP に供給し、音楽同期演出の基準にする
  • Range Limit を Loop / Hold に切替えて、ループ再生と 1 回再生を選ぶ
  • Run Independently で親階層の Time COMP から独立した時間進行を持つコンテナを作る
  • Play パラメータ で子ネットワーク全体の再生・停止を一括コントロールする

データフロー 🔄

パラメータ設定 (Rate / Start / End / Tempo / Signature / Range Limit)

Time COMP 内部での time / frame / beat 状態

子ネットワーク全体への時間情報の供給

Tips

初心者の方は、以下日本語書籍も手元にあると安心です。

まる。
まる。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!


パラメータ解説 ⚙️

Time Page 🕐

再生制御 .play ▶️

Time Component の再生・停止とフレームレート設定:

  • Play (play): play (再生フラグ) — 0 で停止、1 で再生。Time Component 全体の playback を制御します
  • Rate (rate): rate (フレームレート) — Time Component のフレーム毎秒 (FPS) を設定します

再生範囲 .startend 📏

Time Component 全体の長さを決める開始・終了フレーム:

  • Start (start): start (開始フレーム) — Time Component の開始フレームを設定します。Start と End で全体の長さが決まります
  • End (end): end (終了フレーム) — Time Component の終了フレームを設定します

ループ動作 .rangelimit 🔁

playback が Range End フレームに到達したときの挙動を切替えるメニューパラメータ

項目 内部名 説明
Loop .loop Range End フレームに到達するとタイムラインが Range Start に戻ってループ再生します
Hold .hold Range End フレームに到達するとタイムラインを停止 (Hold) します

ワーキング範囲 .range 🎯

Start-End の subset として実際に playback する working range の設定:

  • Range Start (rangestart): rangestart (ワーキング範囲 開始) — Start-End の subset として実際に playback する範囲の開始フレーム
  • Range End (rangeend): rangeend (ワーキング範囲 終了) — Start-End の subset として実際に playback する範囲の終了フレーム
  • Reset Frame (resetframe): resetframe (リセットフレーム) — ジャンプ先フレームのプレースホルダ。公式上 Obsolete (旧仕様の名残) と明記

BPM と拍子 .tempo 🥁

Time Component のテンポと拍子設定 (音楽同期 OP の基準値):

  • Tempo (tempo): tempo (テンポ・BPM) — Time Component の BPM (beats per minute) を設定します
  • Signature (signature1 / signature2): signature1 / signature2 (拍子記号) — 第 1 値は 1 小節あたりの拍数、第 2 値は 1 拍を構成する音価 (例: 4/4、3/4)。詳細は公式 Wikipedia Time Signature を参照

独立実行 .independent 🔗

親階層の Time COMP からの独立設定:

  • Run Independently (independent): independent (独立実行) — オンにするとネットワーク階層上の親 Time COMP の影響を受けず、独立して playback します。親 Time COMP の停止・再生に同期させたくないときに使用します

実践アイデア 💡

Example 1: ビート同期のループ再生 🥁

Time COMP (Tempo=120 / Signature=4/4 / Range Limit=Loop) → 子ネットワーク: Beat CHOP → Trigger CHOP → 視覚演出

子ネットワークに独立した BPM と拍子を持たせ、子内の Beat CHOP で拍ごとのパルスを取り出して映像エフェクトの同期に使う基本構成。

  1. Time COMP を作成し、Tempo を 120 BPM、Signature を 4/4 に設定する
  2. 子ネットワーク内で Beat CHOP を配置し、拍ごとのパルス出力を取得する
  3. Range Limit を Loop にして、Range End に到達するとループ再生するよう構成する
  4. Beat 出力を映像エフェクトのパルスパラメータに接続して拍同期演出を作る

Example 2: 独立再生プレビュー 🎞️

Time COMP (Run Independently=On / Range Limit=Hold / Start-End 固定) → 子ネットワーク: Animation COMP → 映像出力

親 Timeline を一時停止しても子内の再生を独立して走らせたい場合に、Run Independently で時間継承を切って短尺プレビューを完結させる構成。

  1. Time COMP を作成し、Run Independently パラメータをオンにする
  2. Start と End で短尺プレビューの再生範囲を指定する
  3. Range Limit を Hold に設定して 1 回再生で停止させる
  4. 子ネットワーク内に Animation COMP を置き、Time Reference をこの Time COMP に向ける

関連オペレータ 🔗

類似機能OP 🔍

  • Animation COMP — Time Reference でこの COMP を参照しキーフレームカーブを再生する子側 OP
  • Timeline CHOP — プロジェクト Timeline の現在 frame / time / rate を取得する CHOP

組み合わせ推奨OP 🔄

  • Beat CHOP — Time COMP の Tempo と Signature を拍のパルスに変換
  • Timer CHOP — Time COMP 配下で個別タイマーを走らせ、segment ごとの経過時間を取得
  • Speed CHOP — 下流側で再生レートを倍率変更
  • Count CHOP — Time COMP のフレーム進行から特定イベントの累計を取得

前処理・後処理COMP 🎯

  • TODO

Info情報 📊

Time COMP は Info CHOP による状態情報取得に対応しています。

COMP 固有情報 📦

  • num_children: コンポーネント内部の子 OP の総数
  • num_dats: 内部 DAT の数
  • num_chops: 内部 CHOP の数
  • num_tops: 内部 TOP の数
  • num_sops: 内部 SOP の数

汎用オペレータ情報 🔄

  • total_cooks: プロセス開始からのクック回数
  • cook_time: 最後のクック時間 (ミリ秒)
  • cook_frame: 最後にクックされたフレーム番号
  • warnings: 警告数
  • errors: エラー数

トラブルシューティング ⚠️

よくある問題と解決策 🔧

❌ Problem: 子ネットワーク内の時間が進まない (再生されない)
✅ Solution:

  • Play パラメータが 1 (オン) になっているか確認する
  • 親階層の Time COMP が停止している場合は Run Independently をオンにして時間継承を切る
  • Rate が 0 になっていないか確認する (0 fps では時間が進まない)

❌ Problem: BPM や拍子が子 OP に伝わらない
✅ Solution:

  • Tempo が 0 でないか、Signature の分子・分母が正しく設定されているか確認する
  • 子 OP 側 (例: Beat CHOP) が Time Reference をこの Time COMP に向けているか確認する

❌ Problem: 再生範囲外でフレームが暴走する / 期待通りループしない
✅ Solution:

  • Range LimitLoop または Hold に切替えて越境時の挙動を明示する
  • Range StartRange EndStartEnd 範囲内に収まっているか確認する

参考資料 📚

その他 🔗

公式リソース 📖

関連記事 🔗

この記事はLLMと共に内容を執筆、更新しています。
最新バージョンとの項目差異など、情報の不一致を見つけた心優しい方はXもしくはInsta、メールなどよりサイト管理者までご連絡ください😎


まる。

お仕事のご依頼はDM又はメールにて。
━━━━━━━━━━━━━━━━━
Python/Touchdesigner/M5Stackをこよなく愛すフルスタックエンジニア。
専門は生理心理学、趣味はヨガやサウナ、EMS電気風呂などヘルスケア全般。
脳波や筋電、心拍を中心とした生体情報のセンシング&インタラクティブアートづくりがライフワーク。

普段はワントゥーテンという会社で空間演出エンジニアをしています。
リファラル採用お繋ぎできますので、我こそはという尖った方は経歴と希望職種添えてDMください(エンジニア以外、営業職等もOK)。
ご飯行きましょう。

↓日常垢
Instagram:@malmal0v0

まる。をフォローする
その他の記事はこちら
Math Combine POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED Select TOP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Window COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Widget COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

タイトルとURLをコピーしました