投稿者「ted_kanakubo」のアーカイブ

CPlusPlus SOP

概要

CPlusPlus SOPを使用すると、C ++を使用して独自のプラグインを作成して、カスタムSOPオペレータを作成できます。
注意:CPlusPlus SOPは、TouchDesigner CommercialおよびTouchDesigner Proでのみ使用できます。
このSOPで使用する.dllの作成方法の詳細については、Write a CPlusPlus DLL の章とWikiのC++ カテゴリーを参照してください。
C ++コードは、GPUまたはCPUの読み込み用に記述することができます。 これらの2つのオプションのいずれかでC ++コードの開発の容易さはかなり似ています。 それにもかかわらず、C ++コード内で “directToGPU”フラグをセットすることで、これらのモードの1つを有効モードとして認識します。。 “directToGPU”フラグを “true”または “false”に設定すると、execute()または&executeVBO()のいずれかで呼び出される異なるクラスと関数が必要になることに注意してください 。
CPUモードでは、ジオメトリデータを1つずつ、またはすべて一度に追加できます。 同様に、CPUモードでは、CPlusPlus SOPは有線SOP入力とSOP to DAT、SOP to CHOP、またはSOP出力OPを使用することができます。 さらに、DAT、CHOP、およびTOPの「配線されていない」入力オペレータをカスタムパラメータとして使用できます。 この場合、他のオペレータからの入力を受け入れるには、カスタムパラメータをC ++コードで最初に処理する必要があります。
GPUダイレクトモードはCPUモードに似ていますが、SOP to DATまたはSOP to CHOPのオペレータを使用することはできません。 GPUダイレクトモードでは、すぐにVBOバッファにデータが追加され、高速な更新によってパフォーマンスが向上しますが、バッファを満たす前に頂点と面配列インデックスのサイズを知る必要があります。
WindowsのVisual StudioプロジェクトとしてのCPlusPlus SOPの例は、C:/ Program Files / Derivative / TouchDesigner099 / Samples / CPlusPlus / SimpleShapesSOPまたはカスタムTouchDesignerインストールフォルダで利用できます。 (注:MacOSでは、ここにあります:TouchDesigner.app/Contents/Resources/tfs/Samples/CPlusPlus/SimpleShapesSOP)

カスタムパラメータ – カスタムパラメータは、C ++ SOP .dllによって自動的に作成されます。 このカスタムパラメータページは、SimpleShapes.cppのsetupParameters()関数内から削除、編集、または追加できます。 定義されたカスタムパラメータは、特定のタスクに対して有効かどうかによって有効または無効にすることができます。

ジオメトリデータ – C ++ SOPコード内のジオメトリは、任意のアルゴリズムで定義することも、外部ファイルからインポートすることもできます。 可能なジオメトリは、三角メッシュとパーティクルシステムです。 元のジオメトリに3つ以上の頂点を持つポリゴンがある場合は、リストに追加する前に有効な頂点インデックスを持つ三角形に変換する必要があります。
TouchDesignerにエクスポートするためのジオメトリデータには、ポイント、ノーマル、テクスチャ座標、RGBAカラー、メッシュやパーティクルシステムの場合は三角形情報、任意の名前、浮動小数点型または整数型のカスタム属性、最大 4成分(Cd0、Cd1、Cd2、Cd3)です。

パラメータ – Load ページ
Plugin Path / dll

ロードするプラグインのパス。

Re-init Class / reinit

このパラメータが1を超えると、プラグインによって作成されたクラスのインスタンスが削除され、新しいインスタンスが作成されます。

Re-Init Class / reinitpulse
Unload Plugin / unloaddll

このパラメータが1以上になると、プラグインによって作成されたクラスのインスタンスが削除され、プラグインがアンロードされます。 複数のSOPが同じプラグインをロードしている場合、それらをアンロードしてファイルを解放する必要があります。

Alembic SOP

概要

Alembic SOPは、Alembicのファイルジオメトリシーケンスを読み込みます。
サポートされているAlembicプリミティブは、ポリメッシュ、カーブ、ジオメトリのポイントです。 同様に、Alembicへの変換もサポートします。
Alembicアーカイブには、1つまたは複数のジオメトリに対して1つ以上のオブジェクトパスが含まれる場合があります。 これらのオブジェクトを一度に表示することも、Object Pathパラメータを使用して個別に選択することもできます。
Alembicファイルスキーマの各オブジェクトは、標準属性またはカスタム属性を持つことができます。 標準属性はノーマル(N)、ベロシティ(V)、テクスチャ座標(UV)です。 カスタム属性は、より柔軟な名前とタイプのAlembicスキーマを使用できます。 カスタム属性のタイプは、次のいずれかです。

  • 浮動小数配列
  • 整数配列
  • フロートの2Dベクトルまたは3Dベクトル
  • 16の浮動小数点数を持つ行列

AlembicジオメトリスコープからTouchDesignerアトリビュートタイプへの変換は、以下の表の通りです。

| Alembic                    | TouchDesigner |
| —————–             | ————-            |
| Varying, Vertex       | Point                   |
| Facevarying             | Vertex                |
| Uniform, Constant | Primitive            |

Alembic SOPでは、ジオメトリをCPUまたはGPUに読み込むことができます。 GPUの使用ははるかに高速ですが、いくつかの制限があります。

GPUダイレクトモードでは、ダウンストリームにSOPを追加接続することはできません。
GPUダイレクトモードでは、属性のセットが異なる複数のオブジェクトがある場合、各オブジェクトの欠落している属性にデフォルト値が使用されます。 たとえば、1つのジオメトリが通常のデータを持ち、もう1つがジオメトリを持たない場合、ノーマルアトリビュートがないジオメトリの法線ベクトルのx、y、z要素は、それぞれ0、0、1に設定されます。

パラメータ
Alembic File / file

Alembicファイルへのファイルパス

Object Path / objectpath

ロードするジオメトリオブジェクトを指定します。 各ジオメトリ・オブジェクトは、複数のジオメトリの階層を表すことができます。 オブジェクトのリストから「すべてのオブジェクト」オプションを選択することもできます。 このオプションはデフォルトで選択されています。

Time / time

Alembicサンプルシーケンスのどの部分をロードするか指定します。 time unit メニューは、時間単位を選択された単位に変換します。 使用可能なオプションはFrames Seconds Fractionです。

Time Unit / timeunit
Transform / xform

入力データファイルから変換データを使用できる場合に適用する変換を選択します。

  • None / none
    変換が適用されず、原点に存在します。
  • Static Local Transformation / transform
    静的ローカル変換を適用します。
  • Static World Transformation / transform
    ジオメトリオブジェクトの静的ワールド変換をオブジェクトパスから親変換に適用します。
  • Dynamic Transformation / transform
    alembicファイルに動的またはアニメーションジオメトリが含まれている場合、変換は選択されたジオメトリに適用されます。 このオプションは、指定されたジオメトリに対してローカルおよびワールド変換を実行します。
Interpolation / interp

alembicファイル内のサンプル/キーフレーム間を補間します。 このパラメーターは、選択されたジオメトリが動的と定義され、変換情報が入力されたalembicファイルから使用可能な場合にのみ機能します。

  • None / none
    各サンプル間で補間は行いません。
  • Smooth Interpolation / interpT
    各2つのサンプル間を滑らかな補間で計算します。
Straight to GPU / straightgpu

ジオメトリをGPUに直接ロードします。 このオプションは、CPUへのデフォルトのロードよりもはるかに高速ですが、ジオメトリ出力を他のSOPに使用したり、SOP to CHOPまたはSOP to DATでジオメトリデータにアクセスすることはできません。 Alembicファイルには、TouchDesignerのSOP経由で追加することができないので、ファイルにベイクされた法線とUVがあることをお勧めします。

Compute Normal / compnml

入力したジオメトリオブジェクトの法線ベクトルを計算します。

Unload / loadfile

アンロードを「オン」に切り替えると、ファイルをアンロードして閉じます。 これを「オフ」に設定すると、ファイルが再度ロードされます。 ファイルがアンロードされると、他のアプリケーションによって上書きされるか、または削除されます。

Web Render TOP

概要

Web Render TOPは、URLやDATを取得し、Chromium Embedded Frameworksを使用した別のブラウザプロセスを経由してWebページをレンダリングし、その結果を共有メモリに戻します。HTML、HTML5、PDF、SVGなどの非Flashページをレンダリングします。ターゲットは、インターネット上、`file://` 構文を持つローカルファイル、または DAT です。
Chromium Embedded Frameworks プロジェクト (CEF) で実装されています。
Info CHOP を接続すると、ページのロード状態 `loaded`、ページのレンダリング回数 `num_handle_updates` を取得します。
Info DAT を接続すると、共有メモリの `handle`、ブラウザプロセスの `status`、`process_id`、Chromium Embedded Frameworks `cef` および Chromium `chromium` のバージョン、現在表示されている `url`、ページの `title` および `error` の状態を取得します。
Palette:webBrowser, SVG TOPも参照してください。

パラメータ – Web Render ページ
Active / active

Web Render TOPを有効/無効にします。

Source / source

ウェブページのソースを設定します、URLやファイルを介したアドレス、またはDATからのデータのいずれかを指定します。

DAT / dat

DAT

URL or File / url

ユニフォームリソースロケーターまたはWebページのアドレスを設定します。

Only Update when Loaded / updatewhenloaded

フルロードされている場合にのみWebページを表示します。

Transparent Background / transparent

ウェブページを透明な背景で読み込みます。このオプションはブラウザの処理を再起動します。

Enable Audio / audio

ウェブページに音声が含まれている場合、ブラウザプロセスに音声を再生させます。このオプションはブラウザプロセスを再起動します。

Maximum Render Frame Rate / maxrenderrate

ページがレンダリングされる最大フレームレートを設定します。

Number of Frame Buffers / numbuffers

キャッシュされるイメージの最大数を設定します。

Use Shared Texture / sharedtexture

Windowsでは、DirectXの共有テクスチャを使用するか、共有メモリを使用するか切り替えます。macOSではIOSurface経由の共有テクスチャが使用されます。

Options / options

ブラウザプロセスに渡すことができる追加オプションを設定します。このオプションは、ブラウザプロセスを再起動します。

Restart if Process Died / autorestart

ブラウザのプロセスが死んだ場合、自動的に再起動します。

Restart / autorestartpulse

ボタンリリース(ボタンアップ)時にすぐに再起動をトリガーします。これは python の pulse() メソッドを使ってアクセスできます。

Reset Update Count / resetcount

Webページが更新された回数(Info CHOPから入手可能)のカウンターをリセットします。

Reload Current Page / reload

ウェブブラウザの更新と同じように、現在のページをリロードします。

パラメータ – Common ページ

参照:共通 Common ページ

Syphon Spout Out TOP

概要

Syphon Spout Out TOPは、WindowsのSpoutフレームワークやmacOSのSyphonをサポートする他のアプリケーションと入力テクスチャを共有します。これは共有メモリを使用するので、実行中のコンピュータ上でのみ動作し、ネットワークを介して他のコンピュータにテクスチャを送信することはありません。SyphonとSpoutは32ビットのfloat RGBAまでの様々なピクセルフォーマットでテクスチャを送ることができます。他のコンピュータにテクスチャを送信するには、Touch In TOPとTouch Out TOP、またはNDI In TOPとNDI Out TOPを参照してください。
テストやアプリケーション例のために http://spout.zeal.co/ でSpoutのセットアップパッケージをダウンロードすることができます。また、テストのためのSyphonシンプルなサーバーのセットアップをダウンロードすることができます。(https://github.com/Syphon/Simple/releases/download/public-beta-2/Syphon.Demo.Apps.Public.Beta.2.dmg)
デフォルトでは、Windows上のSpoutは、コンピュータ上でアクティブな10の送信者に制限されています。この制限は、WindowsレジストリのDWORD:
HKEY_CURRENT_USER\\Software\\Leading Edge\\Spout\\MaxSendersを設定することで変更することができます。
参照:Syphon Spout In TOP

パラメータ – Syphon Spout Out ページ
Active / active

送信のオン/オフを切り替えます。

Sender Name / sendername

出力するSyphon/Spoutの送信元の名前を設定します。これは任意のテキスト文字列です。

パラメータ – Common ページ

参照:共通 Common ページ

Syphon Spout In TOP

概要

Siphon Spout In TOPは、WindowsのSpoutフレームワークまたはmacOSのSiphonをサポートする他のアプリケーションから、共有メモリを介してテクスチャイメージを取得します。 これは共有メモリを使用するため、実行中のコンピューターでのみ機能し、ネットワークを介して別のコンピューターにテクスチャを送信しません。 テクスチャを別のコンピュータに送信するには、Touch InTOPとTouchOut TOP、またはNDI InTOPとNDIOutTOPを参照してください。
テストやアプリケーション例のために http://spout.zeal.co/ でSpoutのセットアップパッケージをダウンロードすることができます。また、テストのためのSyphonシンプルなサーバーのセットアップをダウンロードすることができます。(https://github.com/Syphon/Simple/releases/download/public-beta-2/Syphon.Demo.Apps.Public.Beta.2.dmg)
デフォルトでは、Windows上のSpoutは、コンピュータ上でアクティブな10の送信者に制限されています。この制限は、WindowsレジストリのDWORD:
HKEY_CURRENT_USER\\Software\\Leading Edge\\Spout\\MaxSendersを設定することで変更することができます。
参照:Syphon Spout Out TOP

パラメータ – Syphon Spout In ページ
Use Spout Active Sender / usespoutactivesender

Spoutには外部ユーティリティがあり、実行中の送信リストから選択し、グローバルなActive送信としてフラグを立てることができます。このパラメータを有効にすると、ノードは Sender Name パラメータにリストされている送信元ではなく、その送信元を使用するようになります。

Sender Name / sendername

受信したいSyphon/Spoutの送信元の名前です。

パラメータ – Common ページ

参照:共通 Common ページ

Substance TOP

概要

TouchDesignerはノードベースのマテリアル作成パッケージであり、豊富なマテリアルライブラリを持つAllegorithmicのSubstance Designerが緊密に統合されています。Substance TOPは、Substance Designerから.sbsarファイルをロードして、PBRマテリアルで使用することができます。
Substance TOPは、Substance Designerから保存された.sbsarファイルからマテリアルを読み込み、自動生成されたパラメータを使ってTouchDesignerでマテリアルのすべてのパラメータ設定にアクセスすることができます。TouchDesignerでパラメータを調整すると、その場でマテリアルが更新されます。
Substance TOPは複数のイメージを出力します。各レイヤーに1つずつ、通常はベースカラー、ラフネス、メタリックなど5つ以上のイメージを出力します。PBRマテリアルをSubstance TOPにドラッグすると、すべてのレイヤーが適切なPBRレイヤーに割り当てられます。別の方法として、「Substance Select TOP」は、1つのレイヤーを抽出し、そのレイヤーに任意のTOPイメージ操作を適用し、その結果をPBRレイヤーパラメータの1つに割り当てることができます。

パラメータ – Setup ページ
Substance Designer File / file

Substance Designerから.sbsar素材ファイルを指定します。

Reload File / reloadconfig

ディスクからファイルをリロードします。

Graph / graph

.sbsar ファイル内のどのグラフを使用するかを指定します。詳細は AllegorithmicのサイトのSubstance’s Graph Helpのページを参照してください。

Output / output

TOP の出力内容を選択します。Grid Previewはマテリアル内のすべてのテクスチャマップを一度に見ることができます。

Invert Normal Map / invertnormal

sbsarファイルからの法線マップを反転します。このパラメータは、sbsarファイルの法線マップが-Y (DirectX)の場合に使用する必要があります。なぜなら、TouchDesignerでの法線マップの使用は、Y+ (OpenGL)の法線マップを想定しているからです。

パラメータ – Common ページ

参照:共通 Common ページ

Substance Select TOP

概要

Substance Select TOPは、Substance TOPの中から1つのテクスチャを選択して、TOPでさらにフィルタリングや操作を行うことができます。

パラメータ – Setup ページ
Substance TOP / substance

テクスチャを選択する特定の Substance TOP を設定します。

Output Channel / output

Substance TOPからどのテクスチャを取得しているかを設定します。

パラメータ – Common ページ

参照:共通 Common ページ

Projection TOP

概要

Projection TOPは、Render TOPで作成したCube Mapを、ドームに適した魚眼投影と、球体に適した緯度経度u-vの 等緯投影 に変換します。これはCube Mapをベースにしているので、より優れた品質のものが得られます。
出力の各ピクセルに対して、入力されたCube Mapから1つのサンプルを取ります。より良いアンチエイリアスは、double-resolutionでレンダリングし、Resolution TOP の High Quality Resize オプションを使用して希望の解像度にスケールダウンすることで達成できます。

パラメータ – Projection ページ
Input / input

現時点ではCube Mapの入力しか選択肢がありません。Render TOPを使ってレンダリングしたり、Cube Map TOPを使って2D画像を変換してCube Mapを生成することができます。

  • Cube Map / cubemap
  • Equirectangular / equirectangular
  • Fish-Eye / fisheye
  • Dual Paraboloid / dualparaboloid
Output / output

メニューから出力形式を選択します。

  • Cube Map / cubemap
  • Equirectangular / equirectangular
    2D テクスチャは通常 2:1 のアスペクト比です。このフォーマットは、通常、UVをlat/longに設定した球体にテクスチャをマッピングするために使用されます。このフォーマットは360動画で非常によく使われています。より詳細な説明はEquirectangular projectionの章を参照してください。
  • Fish-Eye / fisheye
    画像が2Dテクスチャで円を描く投影(テクスチャの角が黒)。 円には、円の直径全体でFOV Angleの幅のイメージデータが含まれています。
FOV Angle / fov

Fish-Eye出力モードでのみ有効で、Fish-Eyeカメラの視野を設定します。

Rotate / r

このパラメータを使用して、任意の軸でマップを回転させます。

  • X / rx
  • Y / ry
  • Z / rz
パラメータ – Common ページ

参照:共通 Common ページ

OpenColorIO TOP

概要

OpenColorIO TOP は、OpenColorIO ライブラリ(http://opencolorio.org/)を利用して、テクスチャやイメージにさまざまな変換やルックアップテーブルを適用します。変換が適用されるデフォルトの順序は、Color Space、File、CDL、Output (Display)です。

この順序は、チェーン内の複数の OpenColorIO TOP を使用して変更することができ、不要なトランスフォームはトグルオフされます。

TouchDesignerのTOPのカラースペースはリニアなので、一般的にTouchDesignerに取り込まれた画像は、非リニアにエンコードされている場合はリニアに変換する必要があります。

パラメータ – Setup ページ
Configuration File / config

ルックアップテーブル、トランスフォーム、カラースペース、ビュー、表示などのすべての関連情報を保持するファイルを設定します。アプリケーションのインストールフォルダ/Samples/OpenColorIOには、いくつかのサンプルが用意されています。

Reload Config / reloadconfig

設定ファイルを手動でリロードします。

Lookup Table Size / lutsize

設定ファイルで指定したルックアップテーブルのサイズ。

Lookup Precision / precision

ルックアップカラーの精度。Automaticは設定ファイルから自動的に精度を取得するか、特定の精度のフォーマットを選択することができます。

  • Automatic / auto
  • 8-bit fixed / fixed8
  • 10-bit fixed / fixed10
  • 16-bit fixed / fixed16
  • 16-bit float / float16
  • 32-bit float / float32
パラメータ – Color Space Transform ページ
Use Transform / usecolorspacetransform

この変換のオン/オフを切り替えます。カラースペース・トランスフォームはイメージをあるカラースペースから別のカラースペースに変換します。

Input / incolorspace

入力のカラースペース、入力イメージのカラースペースを指定します。

Output / outcolorspace

出力のカラースペースを指定します。入力のカラースペースからこのカラースペースに変換されます。

パラメータ – File Transform ページ
Use Transform / usefiletransform

この変換のオン/オフを切り替えます。ファイルトランスフォームは、個々のカラースペース変換ファイルを適用します。様々なファイル形式がサポートされていますが、代表的なものとしては spi1d と spi3d があります。

File Source / filesource

読み込むファイルを指定します。ファイルは特定の色空間を想定しており、 ファイル変換はこれを内部的には処理しないことに注意してください。

Interpolation / interpolation

ファイルの補間方法を設定します。

  • Nearest / nearest
  • Linear / linear
  • Tetrahedral / tetrahedral
  • Best / best
Direction / filedirection

変換の方向を指定します。変換を反転させるには、Inverse を選択します。

  • Forward / forward
  • Inverse / inverse
パラメータ – CDL Transform ページ
CDL Mode / cdlmode

Color Decision List -イメージに対するこの変換の効果を、パラメータ値を使って手動で選択、或いはカラーコレクションファイル(.cc)を使って選択します。 https://en.wikipedia.org/wiki/ASC_CDL

  • Off / off
  • Values / values
  • Color Correction File / ccfile
Slope / slope

ゲインを調整します。

  • X / slopex
  • Y / slopey
  • Z / slopez
Offset / offset

オフセットを調整します。

  • X / offsetx
  • Y / offsety
  • Z / offsetz
Power / power

ガンマを調整します。

  • X / powerx
  • Y / powery
  • Z / powerz
Saturation / saturation

彩度を調整します。

Direction / cdldirection

変換の方向を指定します。変換を反転させるには、Inverse を選択します。

  • Forward / forward
  • Inverse / inverse
Color Correction File / ccfile

スロープ、オフセット、パワー、彩度の情報は、代わりにカラーコレクションファイル(.cc)から読み込むことができます。

パラメータ – Output ページ
Use Output / useoutput

ディスプレイ変換を切り替えます。 ディスプレイ変換により、特定のディスプレイデバイスへの色空間変換が可能になります。

Gain / gain

ディスプレイを変形する前に適用する露出を調整します。

Display / display

イメージの表示に使用されるデバイスのカラースペース。

View / view

Specifies the color space transform to be applied to the image.
イメージに適用する色空間変換を指定します。

Input Color Space / colorspace

Specifies the input color space.
入力カラースペースを指定します。

Gamma / gamma

ディスプレイ変換後のガンマ補正量を調整します。

パラメータ – Common ページ

参照:共通 Common ページ

NDI Out TOP

概要
注意:

TouchDesigner Educational、TouchDesigner Commercial、TouchDesigner Proでのみ使用可能です。
NDI Out TOPは、イメージとオーディオデータをIP経由で他のNewtek NDI® (Network Data Interface)対応アプリケーションに送信します。NDI®プロトコルはNewtek社によって開発されました。
NDI、NDI In TOP、NDI DATの章も参照してください。
Windows OS の場合、接続に問題がある場合は、Windows ファイアウォールが無効になっていることを確認してください。

パラメータ – NDI Out ページ
Active / active

Makes itself available as a source and sends out image data when active.
onにすると、自分自身をソースとして利用可能にし、イメージ データを送信します。

Source Name / name

このソースの名前を設定します。

Failover Source Name / failovername

レシーバーが接続されているときにこのソースが失敗した場合、代わりに、指定されたフェイルオーバーソースへの接続を試みます。 この形式は(MACHINENAME)SourceNameである必要があります。 このフォーマットは、NDI In TOPにリストされているソースと同じです。

FPS / fps

送信するフレームレートを設定します。 NDIはフレームの圧縮方法を制御するためのガイドとしてFPSを部分的に使用していることに注意してください。 FPSが高いほど、フレームはより圧縮されます。 たとえば1 FPSで送信すると、30 FPSで送信するよりも高画質になります。

Include Alpha / includealpha

これがオンの場合、アルファチャネルも送信します。 これがオフの場合、アルファは1.0になります。

Group Names Table / grouptable

グループ名を設定します。

Audio CHOP / audiochop

NDIストリームで送信するCHOP(オーディオデータを含む)を設定します。

Metadata DAT / metadata

NDIストリームで送信するDAT(テーブル形式または有効なXML形式のメタデータを含む)を指定します。メタデータは、Info DATを使用してNDI In TOPで読み込むことができます。

パラメータ – Common ページ

参照:共通 Common ページ