忘れちゃうSOP達 [TouchDesigner]

随時更新されます



Primitiveの種類
名称 概要
Primitive 原点,経など最低限の構成
Polygon 3点(三角形)がつなぎ合わさった構成
Mesh 4点(四角形)がつなぎ合わさった構成
NURBS Non-Uniform Rational B-Spline(非一様有理Bスプライン)という数学的モデルで作られる構成
Bezier ベジェのモデルで作られる構成
Particle Particle SOPなどで作られる,ポイントクラウドの構成
Metaball Meta Ball SOPから作られる,引力を用いたモデルで作られる構成

[引用] https://scottallen.ws/iamas/de2020_1_top_chop_sop_mat#Point



名称 概要 主なパラメータ
Circle 楕円モデル タイプ,方向,半径,中心座標,弧
Line 線モデル 始点/終点の座標,点数
Rectangle 四角形モデル 方向,サイズ,中心座標
Text 文字モデル タイプ,フォント,サイズ,文字内容
Grid 格子モデル タイプ,方向,サイズ,中心座標,列数,行数
Sphere 球モデル タイプ,方向,半径,中心座標,列数,行数など
Box 直方体モデル サイズ,中心座標
Torus トーラスモデル タイプ,方向,半径,中心座標,列数,行数
Tube 円筒モデル タイプ,方向,半径,高さ,中心座標,列数,行数

[引用] https://scottallen.ws/iamas/de2020_1_top_chop_sop_mat#Point


SOP Class methods and members:
center
numPrims
numPoints
[引用] https://docs.derivative.ca/Optimized_Python_Expressions





SOP to DAT

SOP to Datを使えばそれぞれの
point / vertex / primitiveの情報を見ることができる。

画像4

Point

Pointに対して何か情報の追加を行うことができる。

Custom タブでAttributeを追加できる。

($がついているのはpythonではなくて、Tscriptモードにしたときになる。
$は変数を表すらしい)
PTはpythonでいうme.inputPoint.indexらしい。
TouchDesigner LinkのノートのTscriptのところにメモった
https://note.com/omakazu/n/nb4b3177ee6e3

画像1

画像16

項目をクリックすると、AddColorが出現して、変更を行うことができる。

画像2

画像3



Point SOP has these special cases optimized:
Includes inputPoint2, inputColor2, inputNormal2 and inputTexture2 as well.
me.inputPoint.index
me.inputPoint.normP
me.inputPoint.P
me.inputPoint.x
me.inputPoint.y
me.inputPoint.z
me.inputPoint.normal
me.inputPoint.color
me.inputPoint.sopCenter
me.inputColor (Deprecated)
me.inputNormal (Deprecated)
me.inputTexture

[引用] https://docs.derivative.ca/Optimized_Python_Expressions


Group



Primitive


Primitive単位の操作ができたり、
Attributeを追加できる。


画像10


Primitive SOP the me.inputPrim Prim Class has these members optimized:
me.inputPrim.index
me.inputPrim.center
me.inputPrim.direction
me.inputPrim.weight
me.inputPrim.normal
len(me.inputPrim)
[引用] https://docs.derivative.ca/Optimized_Python_Expressions

Trace

TOPからSOPを作れる。
Thresholdで調整して、抜き出す範囲を指定出くr。

アルファ付き画像だとスムーズに立体にできる。

画像8


法線やポイントも付加される

画像9




Extrude

押し出しができる。

画像7

Boolean 

SOPのブール演算が行える


Clip


オブジェクトをクリップ領域から出た部分を非表示にできる。

どうやらPrimitive単位でクリップされるようで、
Sphere SOP単体などでは少し触れただけで、全体が消える。

textとかはPrimitiveがたくさんあるので良い感じになる。

画像6

画像5



Copy

簡易的な位置のインスタンシング的なことをできる。



Sweep

一つ目のインプットでオブジェクトを入力したら、
二つ目のインプットのpointに対して、オブジェクトを生成し、

画像12

画像11

ねじったり、回転させたりできる。

画像13


何かline上の管とか紐みたいな形状で何かできる。

pointではんくて、Use Vertexでvertexに対して生成できる。

画像15

画像14



Facet


Pointに対して、新しい法線を追加したり、pointを追加したりできる


最初のSOPのPrimitive Typeをpolygonとかにしたら、point数に比べてvertexの数が極端に多くなる。
(meshだと良い感じに節約したアルゴリズムになる)

画像20

画像17

これにfacetをつなげて、UniquePointsをONにすると

画像18

Unique Points / unique
各頂点に一意のポイントを持たせます。 このオプションを選択した結果、すべての頂点が一意のポイントになり、滑らかなシェーディングがなくなり、すべてのエッジがハードエッジなります。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=284

vertex一つ一つにpointが追加される

画像19

この状態で、UniquePointの上のComputeNormalsを押すと、
新しく出来上がったPoint達の法線も生成される

画像21

make Normals Unit Lengthで法線が正規化される。

画像22

ConsolidateはUniquePointとは逆に、
Distance範囲のpointの重複を消すことができる。

画像23

PointとNormal / 精度を選べる

画像24

Cusp Polygonsでポリゴンの繋がる角度によって
滑らかな曲面のエッジにするか、面を追加させるか調整できる
その角度も指定できる(CuspAngle)

Cusp Polygons / cusp
多くの場合、いくつかのポリゴンをスムーズにシェーディングさせ、他のポリゴンには面取りしたい場合があります。 通常、低角度で繋がるポリゴンは滑らかな陰影を付け、鋭角で繋がるポリゴンのエッジには面取りを施す必要があります。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=284

Remove Degenerete
どこにも使われていないポイントなどを消してくれる

Remove Degenerate / remove
ジオメトリが何も使われていない点や理にかなっていないプリミティブを持った状態になる場合があります。 このオプションは、これらのケースをチェックして削除します。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=284

一番下にもCompute Normalsが合って、
これは諸々上の項目で調整した後の法線を生成できるボタン

画像25

Compute Normals / postnml
ConsolidateまたはCuspの処理後に法線を計算できます。 CuspまたはConsolidateオプションを設定している場合は、これを選択する必要があります。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=284

画像26



Add

PointとPolygonを追加することができる。

inputなしのAdd SOPで
Points タブの Add Pointsを押すと、
1点のpointが生成される

W / weight[0-5]
ポイントのスプラインウェイト。スプライン(nurbsまたはBezier)プリミティブを作成するためにポイントが使用される場合、ウェイトはプリミティブの形状に影響し、そのプリミティブがリレーショナルになる場合があります。ポリゴンとメタボールは、このウェイトの影響を受けません。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=303

画像29

画像30


Points DATのパスに、Table DATを指定して、
ポイントを生成することができる。
生成ルールは以下になる。

Points Table / pointdat
ポイントデータを含むTable DATのパス。 デフォルトでは、x、y、z、およびwは、名前のない列を使用してテーブルの最初の4列に定義できます。
Named Attributesパラメータが有効になっている場合、Points DATで指定したテーブルの名前の付いた列を使用して、次の属性を定義できます。

P(0) P(1) P(2) P(3)
N(0) N(1) N(2)
Cd(0) Cd(1) Cd(2) Cd(3)
uv(0) uv(1) uv(2)
他の列はすべて単一浮動小数点属性として追加されます。

注:Points DATでN(0)N(1)N(2)を入力するときは、PolygonページのCompute Normalsをオフにします。

[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=303


Polygons タブでは
Polygons Tableで規則に従って生成できる。

画像31

パラメータ – Polygons ページ (By Pattern)
Polygons Table / polydat
ポリゴンデータを含むTable DATのパス。 最初の列のポイント番号で指定されたポリゴンの行を受け入れます。 2番目の列は、ポリゴンが閉じているか(1)、開いているか(0)を指定します。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=303


Polygon [1-6] / prim[0-6]
各polygon項目にポイントパターンを指定してポリゴンを作成します。 ここに接続リストを入力してポリゴンを追加します。 これらは、ポイントが接続される順序を定義するポイント番号のリストで構成されています。 形式は{from}〜{to} \[:{every}\] [、{of}]です。

リストの例:
1 2 3 4
:ポイント番号1,2,3,4の順番で連結してポリゴンを作成
1 3-15 16 8
:1、3〜16、8の順番で連結してポリゴンを作成
1-234 820-410 235-409
:指定された順序で1-820のポイントを連結してポリゴンを作成
0-15:2
:0〜15の全てのポイントを連結してポリゴンを作成
0-15:2,3
:0〜15の全てのポイントで3つ毎に2つを連結(すなわち、0,1,3,4,6,7,9,10,12,13,15)
!4
:4を除く全てのポイントを連結してポリゴンを作成
!100-200
:100-200を除く全てのポイントを連結してポリゴンを作成
*
:全てのポイントを連結してポリゴンを作成
9-0
:9,8,7,6,5,4,3,2,1,0の順番に連結してポリゴンを作成
!9-0
:0〜9を除く全てのポイントを逆順で連結してポリゴンを作成

Closed / closed[0-6]
閉じたポリゴンを作成するには、Closedボタンをチェックします。

[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=303



Convert

Primitive typeを変えることができる。


画像27

画像28



Convert SOP はプリミティブのタイプを相互変換します。なのですが、経験上あまりちゃんとは動かない時が多いので

・MeshをPolygonに変換する
・PolygonのラインをNURBSやBezierに変換する
・PolygonをParticlesに変換する

あたりの時だけ使っています。困った時にとりあえずかましてみる、といった使い方が多いです
[引用] http://satoruhiga.com/post/tdsw010/


Noise

pointに対してnoiseを掛けれる

AttributeからPosition / Normal .....のようにnoiseを掛けたいものを選べる


画像32

画像33


Divide

ポリゴン・ジオメトリを分割する。

画像35

画像34

自己交差ポリゴン
ほとんどの単純ポリゴンの辺は、互いに交差しません。辺が交差する場合、そのポリゴンは自己交差ポリゴンとみなされる。
[引用] https://books.google.co.jp/books?id=lemcV60hzY4C&pg=PA281&lpg=PA281&dq=%E5%87%B8%E3%83%9D%E3%83%AA%E3%82%B4%E3%83%B3&source=bl&ots=edeXPRUW06&sig=ACfU3U3WnRDH2O9bkeOOh_ZPKU4A6PZV_A&hl=ja&sa=X&ved=2ahUKEwjTxcvYi5zuAhWE7WEKHW7VDXQQ6AEwC3oECBMQAg#v=onepage&q=%E5%87%B8%E3%83%9D%E3%83%AA%E3%82%B4%E3%83%B3&f=false

画像37


凸ポリゴンvs 凹ポリゴン
自己交差しない単純ポリゴンは、さらに凸か凹かに分類することができます。凸の正確な定義を与えることは、多くの厄介な縮退したケースがあるため実際にはいくぶん難しい問題です。ほとんどのポリゴンにとっては、一般に使われている以下の定義は同値ですが、いくつかの縮退ポリゴンはある定義にに従えば凸に分類され、別の定義に従うと凹に分類されます。

・直感的に、凸ポリゴンにはくぼみがありません。凹ポリゴンは、少なくとも一つのくぼんでいる頂点(凹の点)があります。
・凸ポリゴンでは、ポリゴン内の任意の2点を結ぶ線は、完全にそのポリゴンの中に含まれます。凹ポリゴンでは、2点を結ぶ線が部分的にポリゴンの外に出るような点のペアをポリゴン内に見つけることができます。
・凸ポリゴンの周囲を移動するときには各頂点では同じ向きに曲がります。
初等幾何学における凸多角形(とつたかくけい、英: convex polygon)は、単純(英語版)な(つまり自己交叉を持たない)多角形であって、その内部または境界にある任意の二点間を結ぶ線分が、その多角形の外に出ることがないものを言う[1]。凸多角形において、任意の内角は 180° 以下であり、狭義凸ならば 180° 未満である。
[引用]
https://ja.wikipedia.org/wiki/%E5%87%B8%E5%A4%9A%E8%A7%92%E5%BD%A2#:~:text=%E5%88%9D%E7%AD%89%E5%B9%BE%E4%BD%95%E5%AD%A6%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E5%87%B8,180%C2%B0%20%E6%9C%AA%E6%BA%80%E3%81%A7%E3%81%82%E3%82%8B%E3%80%82

画像37

初等幾何学において、凸でない単純多角形(英語版)は、凹 (concave[1]:130), 非凸 (non-convex[2]:66), 凹角 (re­entrant[3]) であるなどと言う。凹多角形(おうたかっけい、英: concave polygon)は必ず一つ以上の凹角(英語版)な—すなわち、角度が180°より大きく360°より小さい—内角を持つ[4]。
[引用]
 https://ja.wikipedia.org/wiki/%E5%87%B9%E5%A4%9A%E8%A7%92%E5%BD%A2

画像38

Convex Polygons をONにすると、Maximum Edgesに指定した数の最大辺数の凸ポリゴンに全てなる

画像39

これは、凹凸があり、適切にシェーディングされていないポリゴンの辺の数を減らすのに便利です。 すべての入力ジオメトリから三角形を生成するには、このオプションをチェックし、Maximum Edgesフィールドを3に変更します。すべてのポリゴンが最大三角形(三角形)に変更されます。

Maximum Edges / numsides
入力ポリゴンがこの入力値を超えると、すべての入力ポリゴンが縮小されるエッジの最大数を決定します。 凸多角形の辺の最大数を設定します。 少なくとも三つの側面が必要です。 3〜6の範囲の小さい数字を使用すると最良の結果が得られます。 結果として得られるポリゴンは細長くなりません。 入力ポリゴンのエッジ数が指定した数より少ない場合、そのポリゴンに対して変更は実行されません。
[引用] http://ted-kanakubo.com/touchdesigner-jp/?p=286


Triangulate Non-Planar

任意の非平面ポリゴンを三角形に分割する。

平面ポリゴン、非平面ポリゴンとは ↓

次の場合、ポリゴン フェースは平面ポリゴン フェースです。

・すべての頂点が同一の平面上にある場合。たとえば、三角形のフェースは常に平面ポリゴン フェースです。その 3 つの頂点が平面を定義しているからです。

次の場合、ポリゴン フェースは非平面ポリゴン フェースです。

・頂点が 4 つ以上あり、そのうち 1 つまたは複数の頂点が同一の平面上にない場合。ポリゴン メッシュが四角形または N 角形で構成されている場合、非平面ポリゴン フェースを含めることができます。
[引用] https://knowledge.autodesk.com/ja/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/JPN/Maya/files/GUID-3868CB96-3A61-4F14-8A61-EB250A125E96-htm.html

画像40


Sort

Point / Primitive / Particleに対してsortできる。

画像41

画像42

画像43

画像44



Blend


画像45


この記事が気に入ったらサポートをしてみませんか?