
概要 📖 – 文字や数値を画像として描画する
Text TOPは、文字列・数値・DAT のセルをフォントや配置を指定して画像化し、テクスチャとして出力する TOPです。Text 文字列に CHOP 値や DAT セルを差し込めるため、カウンタ・字幕・動的ラベルといったリアルタイム表示にそのまま使えます。
主な用途 🎯
- テキスト文字列を画像 (テクスチャ) として描画
- 数値カウンタや FPS / 時刻などのリアルタイム表示
- チャンネル値を文字列に差し込んだ動的ラベル生成
- テーブルのセルを参照したテロップ・字幕の表示
- フォント・色・配置を細かく指定したタイトル素材作成
データフロー 🔄
入力: テキスト文字列 / DAT セル / CHOP 値
↓
フォント・サイズ・配置・色の指定に従ってラスタライズ
↓
出力: 文字が描かれた TOP テクスチャ
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
Text Page 📝
テキスト入力 ✍️
Field Component .fieldField Component (入力用部品) — テキストの取得元となる Field Component を指定します。表示される文字のフォントやスタイルは Text TOP 側のパラメータで設定します。
DAT .datDAT (表データ) — テキストの取得元となる DAT を指定します。DAT をこの欄にドラッグ&ドロップするか、DAT のパスを手入力します。
DAT Row .rowindexDAT Row (行番号) — DAT がテーブルの場合に参照するセルの行番号 (0 から開始) を指定します。
DAT Col .colindexDAT Col (列番号) — DAT がテーブルの場合に参照するセルの列番号を指定します。
Specification DAT .specdatSpecification DAT (配置指定テーブル) — ピクセル単位でテキストを配置できる Table DAT を指定します。左下が 0, 0 で、列見出しに position1 または x、position2 または y、text を含める必要があります。
Text .textText (文字列) — 表示する文字列です。Value と Post Text を組み合わせると、文字列の後ろに数値とさらに後続文字列を続けられます。改行やタブを入れたい場合は expression モードに切り替え、\n や \t を含む Python 文字列を指定します (例: 'First Line\nSecond Line')。
Legacy Parsing .legacyparsingLegacy Parsing (旧式の解析) — 旧ビルドで使われていた \XXX 等の文字コード記法や [] / {} による位置指定を有効化します。現在は非推奨で、文字コードは Python の \t / \n、配置は Specification DAT を使うのが推奨です。
Append Value .appendvalue 🔢
Append Value .appendvalueAppend Value (数値の追加) — 下記の Value 欄を有効にします。この数値は Text 文字列と Post Text 文字列の間に挿入されます。
Value .valuetouseValue (表示する数値) — 表示する数値そのものを指定します。
Total Digits .totaldigitsTotal Digits (総桁数) — 表示する数値の総桁数を指定します。
Decimal Digits .decimaldigitsDecimal Digits (小数桁数) — 小数点以下に表示する桁数を指定します。
Post Text .posttextPost Text (後続文字列) — Text と Value (存在する場合) の後ろに追加する文字列です。
CHOP 値の差し込み 📡
CHOP Value %-Replace .chopvaluereplaceCHOP Value %-Replace (CHOP 値の差し替え) — C 言語の printf() / sprintf() に似た記法で、文字列の一部を CHOP の値で置き換えられるようにします。記法の詳細は下の CHOP パラメータで指定します。
CHOP .chopCHOP (差し込む値の取得元) — Text 文字列に挿入する値を含む CHOP を指定します。%4d のように % で始まる特殊記法を Text 内に書くと、全チャンネル分が順に差し込まれます (d=整数 / f=浮動小数 / g=指数表記)。
折り返しと引用符 ↩️
Word Wrap .wordwrapWord Wrap (自動折り返し) — オンにすると TOP の枠からはみ出さないようにテキストが自動で折り返されます。Auto-Size と併用すると、指定フォントサイズでまず折り返した後に全体を自動サイズ調整します。
Smart Quote .smartquoteSmart Quote (装飾引用符) — まっすぐな引用符の代わりに、開き引用符と閉じ引用符を使い分けるスマートクォートを有効にします。
Font Page 🔤
フォントの選択 🅰️
Font .fontFont (フォント) — ドロップダウンメニューからテキストのフォントを選択します。Windows に読み込まれている TrueType フォントが利用可能。
Font File .fontfileFont File (フォントファイル) — 任意の TrueType フォントファイル (.ttf) を直接指定します。フォントファイルを使うと上の Font メニューは無効になります。
Character Set .charsetCharacter Set (文字セット) — 使用する文字セットを選択します。Symbol などを切り替えられます。
Bold .boldBold (太字) — テキストを太字で表示します。
Italic .italicItalic (斜体) — テキストを斜体で表示します。
Stroke Width .strokewidthStroke Width (輪郭の太さ) — Display Method が Stroke のとき、文字の輪郭線の太さを制御します。
Display Method .dispmethod 🖥️
テキストの描画方式を選択するメニュー
| 項目 | 内部名 | 説明 |
|---|---|---|
| Automatic | .automatic |
フォントサイズや設定に応じて描画方式を自動で選択 |
| Stroke | .stroke |
ポリゴンと同様だが文字の輪郭のみを表示 |
| Bitmap | .bitmap |
ビットマップ画像で描画。高精度が要る極小サイズに有利 |
| Scalable | .scalable |
Slug Library を用い高品質で解像度非依存のスケーラブル描画 |
Anti-Alias .antialias 🪶
文字の縁を滑らかにするアンチエイリアス量 (Texture Display Mode では無効)
| 項目 | 内部名 | 説明 |
|---|---|---|
| 1x (Off) | .aa1 |
アンチエイリアスなし |
| 2x | .aa2 |
2 倍サンプリング |
| 4x | .aa4 |
4 倍サンプリング |
| 8x (Medium) | .aa8mid |
8 倍サンプリング (中品質) |
| 8x (High) | .aa8high |
8 倍サンプリング (高品質) |
| 16x (Low) | .aa16low |
16 倍サンプリング (低品質) |
| 16x (Medium) | .aa16mid |
16 倍サンプリング (中品質) |
| 16x (High) | .aa16high |
16 倍サンプリング (高品質) |
| 32x | .aa32 |
32 倍サンプリング (最高品質、コスト大) |
Auto-Size Font .fontautosize 📐
フォントサイズの自動調整方式。Word Wrap 併用時はまず折り返してから自動調整
| 項目 | 内部名 | 説明 |
|---|---|---|
| No Auto-Fit | .nofit |
自動調整なし。Font Size X / Y で指定したサイズを使用 |
| Auto-Fit Always | .alwaysfit |
テキストが TOP の端から端まで収まるよう常に拡大・縮小 |
| Auto-Fit if Too Large | .fitiffat |
はみ出すときだけ縮小して TOP の枠内に収める |
フォントサイズ 🔠
Font Size X .fontsizexFont Size X (横方向サイズ) — フォントの横方向 (X) のサイズを設定します。Polygon / Outline 描画では小数値も指定可能。
Font Size X Unit .fontsizexunitFont Size X Unit (横サイズの単位) — Pixels / Fraction / Fraction Aspect / Points からこのパラメータの単位を選択します。Point は Windows の 100% スケーリング (96 ピクセル = 72 ポイント) で定義されます。
Font Size Y .fontsizeyFont Size Y (縦方向サイズ) — フォントの縦方向 (Y) のサイズを設定します。
Font Size Y Unit .fontsizeyunitFont Size Y Unit (縦サイズの単位) — Pixels / Fraction / Fraction Aspect / Points からこのパラメータの単位を選択します。
Keep Font Ratio .keepfontratioKeep Font Ratio (縦横比を固定) — Font Size の Y 値を無視し、X と Y の両方を Font Size X に揃えます。
文字組みと配置 📏
Break Language .breaklangBreak Language (言語ヒント) — グリフを正しく整形するための言語タイプのヒントを与えます。
Tracking .trackingTracking (字間調整) — 文字と文字の間に追加する X / Y 方向の間隔です。フォント既定の字間に加算する任意のオフセットで、Y 方向のずらしも可能。
Position .positionPosition (開始位置) — テキストの開始位置を X / Y で指定します。Text / Post Text 内では [x,y] で絶対位置、{x,y} で相対オフセット、\n で改行されます。
Position Unit .positionunitPosition Unit (位置の単位) — Pixels / Fraction (0-1) / Fraction Aspect (0-1、アスペクト考慮) から単位を選択します。
Line Spacing .linespacingLine Spacing (行間) — テキストの行と行の間隔を決定します。
Line Spacing Unit .linespacingunitLine Spacing Unit (行間の単位) — Pixels / Fraction (0-1) / Fraction Aspect (0-1) から単位を選択します。
Border Space .borderspaceBorder Space (余白) — Auto-Size Font 使用時に、テキストをさらに縮めて周囲に余白を作ります。
Reading Direction .readingdirection ↔️
言語が左→右か右→左かを設定
| 項目 | 内部名 | 説明 |
|---|---|---|
| Left To Right | .lefttoright |
左から右へ読む言語向け |
| Right To Left | .righttoleft |
右から左へ読む言語向け |
Horizontal Align .alignx ↔️
テキストの水平方向の揃え方
| 項目 | 内部名 | 説明 |
|---|---|---|
| Left | .left |
テキストを左揃え |
| Center | .center |
テキストを中央揃え |
| Right | .right |
テキストを右揃え |
Horizontal Align Mode .alignxmode 📊
水平方向の揃えをどう計算するか
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Font Metrics | .metrics |
フォント内蔵の情報を使って位置決め |
| Use Text Bounding Box | .bbox |
テキストを囲む境界ボックスを使って位置決め |
Vertical Align .aligny ↕️
テキストの垂直方向の揃え方
| 項目 | 内部名 | 説明 |
|---|---|---|
| Bottom | .bottom |
テキストを下揃え |
| Center | .center |
テキストを中央揃え |
| Top | .top |
テキストを上揃え |
Vertical Align Mode .alignymode 📊
垂直方向の揃えをどう計算するか
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Font Metrics | .metrics |
フォント内蔵の情報を使って位置決め |
| Use Text Bounding Box | .bbox |
テキストを囲む境界ボックスを使って位置決め |
Color Page 🎨
文字と背景の色 🖌️
Multiply RGB by Alpha .multrgbbyalphaMultiply RGB by Alpha (RGB にアルファを乗算) — RGB 各チャンネルをアルファチャンネルで乗算します。
Font Color .fontcolorFont Color (文字色) — 表示するテキストの RGBA 値です (デフォルトは白 1,1,1,1)。Red / Green / Blue を個別に指定します。
Font Alpha .fontalphaFont Alpha (文字の不透明度) — フォントのアルファ値を設定します。
Background Color .bgcolorBackground Color (背景色) — 背景の RGBA 値です (デフォルトは黒 0,0,0,0)。Red / Green / Blue を個別に指定します。
Background Alpha .bgalphaBackground Alpha (背景の不透明度) — 背景のアルファ値を設定します。
ボーダー色 🟦
Border A .borderaBorder A (ボーダー A 色) — ボーダー A の RGBA 値です。Red / Green / Blue を個別に指定します。
Border A Alpha .borderaalphaBorder A Alpha (ボーダー A の不透明度) — ボーダー A のアルファ値を設定します。
Border B .borderbBorder B (ボーダー B 色) — ボーダー B の RGBA 値です。Red / Green / Blue を個別に指定します。
Border B Alpha .borderbalphaBorder B Alpha (ボーダー B の不透明度) — ボーダー B のアルファ値を設定します。
各辺のボーダー指定 🔲
Left Border .leftborderLeft Border (左ボーダー) — 左端 2 ピクセルの色を指定します。0 (変更なし) / Border A / Border B から選択します。
Left Border Inside .leftborderiLeft Border Inside (内側の左ボーダー) — 上と同様ですが内側のボーダーに使います。
Right Border .rightborderRight Border (右ボーダー) — 右端 2 ピクセルの色を指定します。0 / Border A / Border B から選択します。
Right Border Inside .rightborderiRight Border Inside (内側の右ボーダー) — 上と同様ですが内側のボーダーに使います。
Bottom Border .bottomborderBottom Border (下ボーダー) — 下端 2 ピクセルの色を指定します。0 / Border A / Border B から選択します。
Bottom Border Inside .bottomborderiBottom Border Inside (内側の下ボーダー) — 上と同様ですが内側のボーダーに使います。
Top Border .topborderTop Border (上ボーダー) — 上端 2 ピクセルの色を指定します。0 / Border A / Border B から選択します。
Top Border Inside .topborderiTop Border Inside (内側の上ボーダー) — 上と同様ですが内側のボーダーに使います。
Output Page 📤
入力との合成 🔗
Comp Over Input .compoverinputComp Over Input (入力に重ねて合成) — オンにすると、描画したテキスト画像を入力 TOP の画像に重ねて合成します。
Swap Order .swaporderSwap Order (合成順序の入替) — 入力との合成の前後関係を入れ替えます。
Operation .operand 🎛️
入力と重ねるときの合成演算 (ブレンドモード) を選択するメニュー
| 項目 | 内部名 | 説明 |
|---|---|---|
| Add | .add |
input1.rgba + input2.rgba |
| Atop | .atop |
(input1.rgba * input2.a) + (input2.rgba * (1.0 – input1.a)) |
| Average | .average |
(input1.rgba + input2.rgba)/2 |
| Brightest | .brightest |
より明るい方を採用 |
| Burn Color | .burncolor |
カラーバーン |
| Burn Linear | .burnlinear |
リニアバーン |
| Chroma Difference | .chromadifference |
色差ベースの差分 |
| Color | .color |
色相・彩度を合成 |
| Darker Color | .darkercolor |
より暗い色を採用 |
| Difference | .difference |
absoluteValue(input1.rgb – input2.rgb)。アルファは常に 1.0 |
| Dimmest | .dimmest |
より暗い方を採用 |
| Divide | .divide |
input1.rgba / input2.rgba |
| Dodge | .dodge |
覆い焼き |
| Exclude | .exclude |
除外 |
| Freeze | .freeze |
フリーズ |
| Glow | .glow |
グロー |
| Hard Light | .hardlight |
ハードライト |
| Hard Mix | .hardmix |
ハードミックス |
| Heat | .heat |
ヒート |
| Hue | .hue |
色相を合成 |
| Inside | .inside |
input1.rgba * clamp(input2.a, 0.0, 1.0) |
| Inside Luminance | .insideluminance |
輝度ベースの Inside |
| Inverse | .inverse |
反転 |
| Lighter Color | .lightercolor |
より明るい色を採用 |
| Luminance Difference | .luminancedifference |
輝度差分 |
| Maximum | .maximum |
各チャンネルの最大値を採用 |
| Minimum | .minimum |
各チャンネルの最小値を採用 |
| Multiply | .multiply |
乗算 |
| Negate | .negate |
ネゲート |
| Outside | .outside |
input1.rgba * (1.0 – input2.a) |
| Outside Luminance | .outsideluminance |
輝度ベースの Outside |
| Over | .over |
(input2.rgba * (1.0 – input1.a)) + input1.rgba |
| Overlay | .overlay |
オーバーレイ |
| Pinlight | .pinlight |
ピンライト |
| Reflect | .reflect |
リフレクト |
| Screen | .screen |
1.0 – ((1.0 – input1.rgba) * (1.0 – input2.rgba)) |
| Soft Light | .softlight |
ソフトライト |
| Linear Light | .linearlight |
リニアライト |
| Stencil Luminance | .stencilluminance |
輝度ステンシル |
| Subtract | .subtract |
input1.rgba – input2.rgba |
| Subtractive | .subtractive |
減算的合成 |
| Under | .under |
(input1.rgba * (1.0 – input2.a)) + input2.rgba |
| Vivid Light | .vividlight |
ビビッドライト |
| Xor | .xor |
(input1.rgba * (1.0 – input2.a)) + (input2.rgba * (1.0 – input1.a)) |
| Y Film | .yfilm |
Y フィルム合成 |
| Z Film | .zfilm |
Z フィルム合成 |
Common Page 🔧
Output Resolution .outputresolution 🖼️
出力解像度の決定方式
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Input | .useinput |
入力 TOP の解像度をそのまま継承 |
| Eighth | .eighth |
入力解像度の 1/8 |
| Quarter | .quarter |
入力解像度の 1/4 |
| Half | .half |
入力解像度の 1/2 |
| 2X | .2x |
入力解像度の 2 倍 |
| 4X | .4x |
入力解像度の 4 倍 |
| 8X | .8x |
入力解像度の 8 倍 |
Resolution .resolution 📐
カスタム解像度の幅・高さ指定 (生成系 TOP のサイズ決定に使用):
- Resolution W: 出力幅 (ピクセル単位)。Constant や Ramp のような入力を持たないジェネレータはこの欄で大きさを決定します
- Resolution H: 出力高 (ピクセル単位)。右側のドロップダウンからよく使う解像度を選べます
Resolution Menu .resmenu 📋
よく使う解像度プリセットのドロップダウン:
- Resolution Menu: NTSC / PAL / HDTV 720 / HDTV 1080 / 4K UHD 等のプリセットから選ぶと
Resolution W/Resolution Hが自動セットされる
Use Global Res Multiplier .resmult 🔢
プロジェクト全体の解像度倍率の適用:
- Use Global Res Multiplier: Edit > Preferences > TOPs の Global Resolution Multiplier をこの TOP に適用するかどうか。低スペック機では倍率を下げて軽量化できる
Output Aspect .outputaspect 📏
出力アスペクト比の決定方式
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Input | .useinput |
入力 TOP のアスペクトを継承 |
| Custom Aspect | .custom |
Aspect1 / Aspect2 で手動指定 |
Aspect .aspect 📐
カスタムアスペクト比の指定 (Output Aspect = Custom Aspect の時のみ有効):
- Aspect1: 横方向アスペクト値 (
Output Aspect= Custom Aspect の時のみ有効) - Aspect2: 縦方向アスペクト値 (同上)
Input Smoothness .inputfiltertype 🎚️
入力テクスチャのサンプリング方式
| 項目 | 内部名 | 説明 |
|---|---|---|
| Nearest Pixel | .nearest |
最近傍ピクセルサンプリング (ジャギーが残る) |
| Interpolate Pixels | .linear |
バイリニア補間 (滑らか、デフォルト) |
| Mipmap Pixels | .mipmap |
ミップマップ補間 (縮小時のモアレ抑制) |
Fill Viewer .fillmode 🖥️
ビューア内でのテクスチャの収め方
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Input | .useinput |
入力 TOP の Fill Viewer 設定を継承 |
| Fill | .fill |
ビューアいっぱいに引き伸ばす (アスペクト無視) |
| Fit Horizontal | .width |
横幅に合わせて収める (上下に余白) |
| Fit Vertical | .height |
縦幅に合わせて収める (左右に余白) |
| Fit Best | .best |
アスペクト保持で内側に収まる最大サイズ |
| Fit Outside | .outside |
アスペクト保持で外側まで覆う最小サイズ (はみ出しあり) |
Viewer Smoothness .filtertype 🎛️
ビューア表示時のサンプリング方式
| 項目 | 内部名 | 説明 |
|---|---|---|
| Nearest Pixel | .nearest |
最近傍ピクセルサンプリング (ピクセル単位の確認向け) |
| Interpolate Pixels | .linear |
バイリニア補間 (滑らか、デフォルト) |
| Mipmap Pixels | .mipmap |
ミップマップ補間 (縮小ビュー時のモアレ抑制) |
Passes .npasses 🔁
オペレータの反復実行回数:
- Passes: TOP の処理を何パス繰り返すかの整数値。前回パスの結果が次回パスの入力になる
Channel Mask .chanmask 🎨
処理対象のチャンネルマスク (R/G/B/A 個別トグル):
- Channel Mask:
R/G/B/A各チャンネルのオン/オフトグル。オフのチャンネルは処理を受けず入力値がそのまま通過
Pixel Format .format 🎨
出力テクスチャのピクセルフォーマット (ビット深度・チャンネル構成)
| 項目 | 内部名 | 説明 |
|---|---|---|
| Use Input | .useinput |
入力 TOP のフォーマットを継承 |
| 8-bit fixed (RGBA) | .rgba8fixed |
標準 8 ビット固定小数 RGBA (デフォルト、軽量) |
| sRGB 8-bit fixed (RGBA) | .srgba8fixed |
sRGB ガンマで格納する 8 ビット RGBA |
| 16-bit float (RGBA) | .rgba16float |
16 ビット浮動小数 RGBA (HDR・中間処理向け) |
| 32-bit float (RGBA) | .rgba32float |
32 ビット浮動小数 RGBA (最高精度、メモリ大) |
| 10-bit RGB, 2-bit Alpha, fixed (RGBA) | .rgb10a2fixed |
10-10-10-2 ビット固定小数 (バンディング抑制) |
| 16-bit fixed (RGBA) | .rgba16fixed |
16 ビット固定小数 RGBA |
| 11-bit float (RGB), Positive Values Only | .rgba11float |
11-11-10 ビット浮動小数 RGB (アルファ=1.0 固定、負値不可) |
| 16-bit float (RGB) | .rgb16float |
16 ビット浮動小数 RGB (アルファなし) |
| 32-bit float (RGB) | .rgb32float |
32 ビット浮動小数 RGB (アルファなし) |
| 8-bit fixed (Mono) | .mono8fixed |
8 ビット固定小数モノクロ (RGB 同値、Alpha=1.0) |
| 16-bit fixed (Mono) | .mono16fixed |
16 ビット固定小数モノクロ |
| 16-bit float (Mono) | .mono16float |
16 ビット浮動小数モノクロ |
| 32-bit float (Mono) | .mono32float |
32 ビット浮動小数モノクロ |
| 8-bit fixed (RG) | .rg8fixed |
8 ビット固定小数 R+G 2 チャンネル (B=0, Alpha=1.0) |
| 16-bit fixed (RG) | .rg16fixed |
16 ビット固定小数 R+G |
| 16-bit float (RG) | .rg16float |
16 ビット浮動小数 R+G |
| 32-bit float (RG) | .rg32float |
32 ビット浮動小数 R+G |
| 8-bit fixed (A) | .a8fixed |
8 ビット固定小数アルファ単体 |
| 16-bit fixed (A) | .a16fixed |
16 ビット固定小数アルファ単体 |
| 16-bit float (A) | .a16float |
16 ビット浮動小数アルファ単体 |
| 32-bit float (A) | .a32float |
32 ビット浮動小数アルファ単体 |
| 8-bit fixed (Mono+Alpha) | .monoalpha8fixed |
8 ビット固定小数モノクロ+アルファ |
| 16-bit fixed (Mono+Alpha) | .monoalpha16fixed |
16 ビット固定小数モノクロ+アルファ |
| 16-bit float (Mono+Alpha) | .monoalpha16float |
16 ビット浮動小数モノクロ+アルファ |
| 32-bit float (Mono+Alpha) | .monoalpha32float |
32 ビット浮動小数モノクロ+アルファ |
実践アイデア 💡
Example 1: リアルタイム数値カウンタ表示 🔢
Count CHOP → Text TOP (CHOP Value %-Replace) → Composite TOP
Count CHOP のカウント値を Text TOP に差し込み、画面上に動くカウンタやスコアをテクスチャとして描画するフローです。Text 文字列に %d 記法を書き、CHOP 欄にカウンタ CHOP を指定するだけで値がリアルタイム更新されます。
- Count CHOP などの値を出力する CHOP を用意
- Text TOP の
CHOP Value %-Replaceをオンにし、CHOP欄にその CHOP を指定 Text欄にScore: %04dのように%記法で差し込み位置を記述Horizontal Align/Vertical Alignで表示位置を整える
Example 2: テーブル参照のテロップ表示 📋
Table DAT → Text TOP (DAT + DAT Row/Col) → Over TOP
Table DAT に並べた字幕文言を Text TOP の DAT 参照で 1 セルずつ取り出し、映像の上にテロップとして重ねる定番の使い方です。DAT Row を CHOP やスクリプトで切り替えれば、表示する文言を順送りできます。
- 字幕文言を縦に並べた Table DAT を用意
- Text TOP の
DAT欄にその DAT を指定し、DAT Row/DAT Colで参照セルを指定 Font ColorとBackground Alphaを調整して読みやすい配色にする- 後段の Over TOP で映像の上にアルファ合成
関連オペレータ 🔗
類似機能OP 🔍
- Constant TOP — 文字なしの単色塗りつぶし。背景レイヤとして併用
- Rectangle TOP — 矩形のプリミティブ描画。テキスト背景の枠作成に
組み合わせ推奨OP 🔄
- Composite TOP — テキストと映像を多彩なブレンドモードで重ねる
- Over TOP — テキストを映像の上にアルファ合成
- Level TOP — 描画後の明るさ・コントラスト調整
- Transform TOP — テキストテクスチャの移動・回転・スケール
前処理・後処理TOP 🎯
- 前処理 TOP: Movie File In TOP、Render TOP、Constant TOP
- 後処理 TOP: Composite TOP、Level TOP、Null TOP
Info CHOP情報 📊
Text TOPは Info CHOP による詳細情報取得に対応しています。
TOP固有情報 🖼️
resx: TOP の出力解像度 X (ピクセル単位)resy: TOP の出力解像度 Y (ピクセル単位)aspectx: アスペクト比 Xaspecty: アスペクト比 Ydepth: 3D テクスチャ / テクスチャ配列の深度 (2D テクスチャでは 1)gpu_memory_used: TOP が消費している GPU メモリ量 (MB 単位)
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: 文字が表示されない・見切れる
✅ Solution:
Font Size X/Font Size YとPositionを見直し、文字が枠外に出ていないか確認Auto-Size FontをAuto-Fit if Too Largeにして枠内へ自動収容Word Wrapをオンにして長い文字列を自動折り返し
❌ Problem: 文字の縁がギザギザになる
✅ Solution:
Anti-Aliasを8x (High)以上に上げて縁を滑らかにするDisplay MethodをScalableにして解像度非依存の高品質描画に切り替え- 出力解像度を上げてから後段の Level TOP 等で調整
❌ Problem: 改行やタブが反映されない
✅ Solution:
Textパラメータを expression モードに切り替え、'1 行目\n2 行目'のように Python 文字列で\n/\tを記述- 旧式記法に頼らず、複数行の配置は
Specification DATで行う Line Spacingを調整して行間を確保
❌ Problem: 数値や CHOP 値が想定どおり差し込まれない
✅ Solution:
Append Valueがオンか、Total Digits/Decimal Digitsの桁設定が適切か確認CHOP Value %-Replaceをオンにし、Text内の%d/%f記法とチャンネル数が対応しているか確認- 差し込む値は前段の Composite TOP ではなく CHOP 側で整えてから渡す
参考資料 📚
その他 🔗
- TouchDesigner Wiki — Category:TOPs
- TouchDesigner Wiki — Pixel Formats 解説
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

