From dc2a3de3294f21a610881985c564fe9f972512fa Mon Sep 17 00:00:00 2001 From: LMW Date: Sun, 17 Dec 2023 23:56:36 +0800 Subject: [PATCH 1/2] Variadic 2D/3D SDF transform nodes --- addons/material_maker/nodes/sdf3d_rotate.mmg | 9 +++++---- addons/material_maker/nodes/sdf3d_scale.mmg | 11 ++++++----- .../material_maker/nodes/sdf3d_scale_xyz.mmg | 11 ++++++----- .../material_maker/nodes/sdf3d_translate.mmg | 9 +++++---- addons/material_maker/nodes/sdrotate.mmg | 9 +++++---- addons/material_maker/nodes/sdscale.mmg | 9 +++++---- addons/material_maker/nodes/sdscalexy.mmg | 9 +++++---- addons/material_maker/nodes/sdtranslate.mmg | 9 +++++---- .../images/node_3d_sdf_transforms_rotate.png | Bin 4096 -> 4448 bytes .../images/node_3d_sdf_transforms_scale.png | Bin 2673 -> 3029 bytes .../node_3d_sdf_transforms_scale_xyz.png | Bin 5864 -> 6119 bytes .../node_3d_sdf_transforms_translate.png | Bin 4392 -> 4747 bytes .../node_simple_sdf_transforms_rotate.png | Bin 3077 -> 3424 bytes .../node_simple_sdf_transforms_scale.png | Bin 2657 -> 3031 bytes .../node_simple_sdf_transforms_scale_xy.png | Bin 5066 -> 5442 bytes .../node_simple_sdf_transforms_translate.png | Bin 4015 -> 4379 bytes .../doc/node_3d_sdf_transforms_rotate.rst | 12 ++++++------ .../doc/node_3d_sdf_transforms_scale.rst | 10 +++++----- .../doc/node_3d_sdf_transforms_scale_xyz.rst | 6 +++--- .../doc/node_3d_sdf_transforms_translate.rst | 10 +++++----- .../doc/node_simple_sdf_transforms_rotate.rst | 8 ++++---- .../doc/node_simple_sdf_transforms_scale.rst | 8 ++++---- .../node_simple_sdf_transforms_scale_xy.rst | 8 ++++---- .../node_simple_sdf_transforms_translate.rst | 8 ++++---- 24 files changed, 77 insertions(+), 69 deletions(-) diff --git a/addons/material_maker/nodes/sdf3d_rotate.mmg b/addons/material_maker/nodes/sdf3d_rotate.mmg index 5aa818fb4..7a7806f33 100644 --- a/addons/material_maker/nodes/sdf3d_rotate.mmg +++ b/addons/material_maker/nodes/sdf3d_rotate.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdf3d_rotate", "node_position": { "x": 0, @@ -41,8 +42,8 @@ "default": "vec2(100.0, 0.0)", "label": "", "longdesc": "The input object as signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf3dc" } ], @@ -52,8 +53,8 @@ "outputs": [ { "longdesc": "The rotated object", - "sdf3dc": "$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", - "shortdesc": "Output", + "sdf3dc": "$in#(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", + "shortdesc": "Output#", "type": "sdf3dc" } ], diff --git a/addons/material_maker/nodes/sdf3d_scale.mmg b/addons/material_maker/nodes/sdf3d_scale.mmg index 515d419b8..4cfe69c64 100644 --- a/addons/material_maker/nodes/sdf3d_scale.mmg +++ b/addons/material_maker/nodes/sdf3d_scale.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdf3d_scale", "node_position": { "x": 0, @@ -9,15 +10,15 @@ }, "seed_int": 0, "shader_model": { - "code": "vec2 $(name_uv)_in = $in(($uv)/$s);", + "code": "", "global": "", "inputs": [ { "default": "vec2(100.0, 0.0)", "label": "", "longdesc": "The input object as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf3dc" } ], @@ -27,8 +28,8 @@ "outputs": [ { "longdesc": "The scaled object", - "sdf3dc": "vec2($(name_uv)_in.x*$s, $(name_uv)_in.y)", - "shortdesc": "Output", + "sdf3dc": "vec2($in#(($uv)/$s).x*$s, $in#(($uv)/$s).y)", + "shortdesc": "Output#", "type": "sdf3dc" } ], diff --git a/addons/material_maker/nodes/sdf3d_scale_xyz.mmg b/addons/material_maker/nodes/sdf3d_scale_xyz.mmg index c9e1329cf..a64014dc3 100644 --- a/addons/material_maker/nodes/sdf3d_scale_xyz.mmg +++ b/addons/material_maker/nodes/sdf3d_scale_xyz.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdf3d_scale_xyz", "node_position": { "x": 0, @@ -12,15 +13,15 @@ }, "seed_int": 0, "shader_model": { - "code": "vec2 $(name_uv)_in = $in(($uv)/vec3($sx*$s,$sy*$s,$sz*$s));", + "code": "", "global": "", "inputs": [ { "default": "vec2(100.0, 0.0)", "label": "", "longdesc": "The input object as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf3dc" } ], @@ -30,8 +31,8 @@ "outputs": [ { "longdesc": "The scaled object", - "sdf3dc": "vec2($(name_uv)_in.x*min(min($sx*$s,$sy*$s),$sz*$s), $(name_uv)_in.y)", - "shortdesc": "Output", + "sdf3dc": "vec2($in#(($uv)/vec3($sx*$s,$sy*$s,$sz*$s)).x*min(min($sx*$s,$sy*$s),$sz*$s), $in#(($uv)/vec3($sx*$s,$sy*$s,$sz*$s)).y)", + "shortdesc": "Output#", "type": "sdf3dc" } ], diff --git a/addons/material_maker/nodes/sdf3d_translate.mmg b/addons/material_maker/nodes/sdf3d_translate.mmg index 9a335b8f1..7b8308e82 100644 --- a/addons/material_maker/nodes/sdf3d_translate.mmg +++ b/addons/material_maker/nodes/sdf3d_translate.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdf3d_translate", "node_position": { "x": 0, @@ -18,8 +19,8 @@ "default": "vec2(100.0, 0.0)", "label": "", "longdesc": "The input object as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf3dc" } ], @@ -29,8 +30,8 @@ "outputs": [ { "longdesc": "The translated object", - "sdf3dc": "$in($uv-vec3($x, $y, $z))", - "shortdesc": "Output", + "sdf3dc": "$in#($uv-vec3($x, $y, $z))", + "shortdesc": "Output#", "type": "sdf3dc" } ], diff --git a/addons/material_maker/nodes/sdrotate.mmg b/addons/material_maker/nodes/sdrotate.mmg index 5d236cc8a..7907ec296 100644 --- a/addons/material_maker/nodes/sdrotate.mmg +++ b/addons/material_maker/nodes/sdrotate.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdrotate", "node_position": { "x": 0, @@ -27,8 +28,8 @@ "default": "0.0", "label": "", "longdesc": "The input shape, defined as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf2d" } ], @@ -38,8 +39,8 @@ "outputs": [ { "longdesc": "The rotated shape", - "sdf2d": "$in(sdf2d_rotate($uv, $a*0.01745329251))", - "shortdesc": "Output", + "sdf2d": "$in#(sdf2d_rotate($uv, $a*0.01745329251))", + "shortdesc": "Output#", "type": "sdf2d" } ], diff --git a/addons/material_maker/nodes/sdscale.mmg b/addons/material_maker/nodes/sdscale.mmg index 32571bd01..43918ec26 100644 --- a/addons/material_maker/nodes/sdscale.mmg +++ b/addons/material_maker/nodes/sdscale.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdscale", "node_position": { "x": 0, @@ -16,8 +17,8 @@ "default": "0.0", "label": "", "longdesc": "The input shape, defined as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf2d" } ], @@ -27,8 +28,8 @@ "outputs": [ { "longdesc": "The generated scaled shape", - "sdf2d": "$in(($uv-vec2(0.5))/$s+vec2(0.5))*$s", - "shortdesc": "Output", + "sdf2d": "$in#(($uv-vec2(0.5))/$s+vec2(0.5))*$s", + "shortdesc": "Output#", "type": "sdf2d" } ], diff --git a/addons/material_maker/nodes/sdscalexy.mmg b/addons/material_maker/nodes/sdscalexy.mmg index 9960a5537..f56568cf4 100644 --- a/addons/material_maker/nodes/sdscalexy.mmg +++ b/addons/material_maker/nodes/sdscalexy.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdscalexy", "node_position": { "x": 0, @@ -18,8 +19,8 @@ "default": "0.0", "label": "", "longdesc": "The input shape, defined as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf2d" } ], @@ -29,8 +30,8 @@ "outputs": [ { "longdesc": "The generated scaled shape", - "sdf2d": "$in(vec2(($uv.x-0.5)/($sx*$s),($uv.y-0.5)/($sy*$s))+vec2(0.5))*min(abs($sx*$s),abs($sy*$s))", - "shortdesc": "Output", + "sdf2d": "$in#(vec2(($uv.x-0.5)/($sx*$s),($uv.y-0.5)/($sy*$s))+vec2(0.5))*min(abs($sx*$s),abs($sy*$s))", + "shortdesc": "Output#", "type": "sdf2d" } ], diff --git a/addons/material_maker/nodes/sdtranslate.mmg b/addons/material_maker/nodes/sdtranslate.mmg index 87ef0a4be..c190522f6 100644 --- a/addons/material_maker/nodes/sdtranslate.mmg +++ b/addons/material_maker/nodes/sdtranslate.mmg @@ -1,4 +1,5 @@ { + "generic_size": 1, "name": "sdtranslate", "node_position": { "x": 0, @@ -17,8 +18,8 @@ "default": "0.0", "label": "", "longdesc": "The input shape, defined as a signed distance function", - "name": "in", - "shortdesc": "Input", + "name": "in#", + "shortdesc": "Input#", "type": "sdf2d" } ], @@ -28,8 +29,8 @@ "outputs": [ { "longdesc": "The translated shape", - "sdf2d": "$in($uv-vec2($x, $y))", - "shortdesc": "Output", + "sdf2d": "$in#($uv-vec2($x, $y))", + "shortdesc": "Output#", "type": "sdf2d" } ], diff --git a/material_maker/doc/images/node_3d_sdf_transforms_rotate.png b/material_maker/doc/images/node_3d_sdf_transforms_rotate.png index 4e9644e9756952a17634d8c79fd23bcfb3deb77a..15c692ae31b17bee1fabd84356a0ef9785dc9fe1 100644 GIT binary patch delta 4441 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 diff --git a/material_maker/doc/images/node_3d_sdf_transforms_scale.png b/material_maker/doc/images/node_3d_sdf_transforms_scale.png index 6a3b3d2c4a6442b5de43803de63d9ff09e43e054..91be25df0e399e146cf3fe6e2eb7b8dfe0680dfc 100644 GIT binary patch delta 3011 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 YxER_&m3&5yDP02^D%#3bN^ise3r^Z*{Qv*} diff --git a/material_maker/doc/images/node_3d_sdf_transforms_translate.png b/material_maker/doc/images/node_3d_sdf_transforms_translate.png index 38049a581160c38b5776ebd8e3cb387991974e4c..f40c25b897264fa825879d859f03f4e650cbf030 100644 GIT binary patch delta 4742 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 UbSm91h5!Hn07*qoM6N<$g4H)iRsaA1 delta 4385 zcmV++5#H{LC8#2hFndwf%6n#Z4W&#g(?q)ji_QgIMOR~?1nQY?cm zXcv}-1uM$x%Aj^o90e@`>$r|wh0;RrG)>wx zIk}zdyMLsHkhWsc`#$e`-lqo}K7VQgTnMhAvVJuVqexIm z9grZle{v87g{bpbl)%~dOio~{RN{~0-7g~#@yLVZQCH%5o@IH~EAjkbwpDSsHm36fyw_%@E~bjyM;@w)5tE!HNd12BxzX}cE_IWFLA=Q`aI$CDZc z!}0EAE?e~175k5!1ppFa_RJE;0l-u97Uo;6QI`&$IKJ)kPbH2+20Z{EQA7YZNn#j= z5Q;nul}D(n6Ocs_F1!Q)NS0+u!f+fXa6kwE%1bA+0e}CYACHF)qiiCC0uCpVBmfZo z{vd&Cv$6mH0YajL5W-0U!;(w#sn=aUdE~Wy7CYQnzy09;f!{9sp2?1Pzw9ei#xMY= zZfhvx3hTE-s5AsnLWa3{|IeIy%D;=y1tVqbY_n z#thnI6n_JOkjr+RCI~SY#L4pw6N5pYy-f-RBW(hPAxRoOAKU*84%ngM@N97NRJTo%Cpw`~XhrUzd+^Qy6$*=-G8ee{{;XzH!F*x&TIkXVM#Jib68-I@W|0KZ z;(v4sKA*&K`n=ra>Al^4|E4eY#3=CW%yK-UW4k85;I5m-I6UsH`@f3Rm?nsYC8gO$ z69(U&=v`x6$B>p8(evO)7_$+lDVY~|uNOt!fS_qguOqdZSJpgMb?ory;UlKpJm$U6 zKU??8OTV6c+iw;uCUBf0$(DBK%2)pL1jo~UVQ8h6dLMYdcmO@CK?@}ZYs zbTzkVGBa1tE?+$LjsVXYb^5Q59A5V9@4~^e7zhGjGfPSz`}N$g&E>!U_nNx8r|!9L z)}+Z8z=8kT^xdf+?|b4mMw9WSm5)rg_Bv4#&$V|v@~2m7TbhHePOT-Yuit!V^-i zzS@86=*=sZFM9eZ09ZBW9*fafx^~srRSzDoKf8X({TN_^&lev4Qx0B|w(Z~NU_CiT z(}I#xnjmO`SWr@$V>CHf&$j*hx_8}C#G&u<2f3F%e7}SBNH|W=RDDPLiGPMV1jys} z9XfHm(3T4Tp?>(shWgLG`xXG29Bu!oIsLOCSA;JO%PRnY4%TzzY%Ks#21Cd=snGzy znR6|XHj4{}gew97LP!z>f~MzAnOgD19*^HA$

OKOb3GRA99NLg4{E72zalYt=pn z>#-S43nr8&M)5iZ%}IR81w^BRW12)xnW`o|A;JUMT{>{}*nuKcL#=wSc|OTu|r48ywHBz4+w z86?RBO&1my>ln?NnR6bRem4M+1OWiKS(YZJBmAe3qJ%VFIPsS@lYa>S94y;Ubs;VS z3!(@BNJdgHsG;d?kFTq@x4!XdWwX<<_hh7;j$&1mRL~6B2lD6*Iz301cmzPa{ zdBwvYe7*0fjV}vcAB0?!;|wNa44Yjb6zYfH`C`wpy0hWa)lH265IG-9QBcG@6Db*T z;`T%Vi6Q`uEF5}8c7M*|7oKbDbOC@_Z-`k3i9SD}VF2Ju510$B!tQN_c0vne4NFu(|0;)RBq8ebqFNaAki}Hu0N3;5Y!Vem?*VA94i-*!WS`-ttd3#HfK}86k9aVSmw0!>^_Y62q{<9Glzc z3-DZ52@C@OkKfnbW@zSPce$?2%h%A1-e8a=d28jzi>H>|c-3&4qVg@)8RJU;03(Q$ z_TX^L9Ez%m?W||rn}4q(gb0QPzyQNA3_IP>(A_3ZkrK!4IbF$x%U+Pa8HB{F6XkGor|_AQ(^$!0Vy zC@J06mmgyje*aW|TIP2+MZZ6M$e7KtC<=25m)4Aoo&Wc3?8U79dN5-)$)YIpJOD;&89Kv&WLXx3&;*yzFpMz+ zBM1z~dABFPbLYER0FBuU07#ZXB{i9u!48+iaX5h+@^f*Dl6bz;%K`vk7^&6hY&l$~ zJ7ig7$t1N}f%Qh&#A(WuS1hnz!RL2*Spd-GSbs^aPVjmKo_DxA0RX2cO0T1h#(sXs zB;-U(GhlzOZ9NwiGjo!(wQBFM+`PV*D*JgSf}#w0xshiu9M|XCqKeT518p!MSq6k+ zECP40h-3*6gsYIb7d#(ijK&^qk_@AnB8RZ^5>S%p`*M8xW%dACOl1Y;CXNd`!*hBoyYXG9B(5USm= z%Uj=f=dO}$7>b4rE1wY+d0a3C*KFVEZR{f|Q%Q0RR}@@z@7>|U^8)|y{DwhlQm}K?e)i(698iV5)WQ9p+3gNVA zzq;|p8`iIXPL{it&gb1b&ybO^dGntX*}3EPTT5>l&(QSYBgfx+e`hej^1WTeu5+xb($9{U#2$+&<-j-Jj2$~}#*8~dhr_NMwq(iDZ}uyDWIN@bC(WI6 z_x^7VeYmUgrkk#RVEMwhv@PZ6r$z+LM5p~c#syyw`ihav05AYUkvvb}1;7rF19kUc zFzELOmM&ddSy{<(+%wNS`~5$@-+%d+oxPRU8O$U}MV(x;`u@Lu`nQih{;Z*)srF3W zyt%W!IqllXFyZ6h!OJ4}h&;Y;-=kwTjL10pR)1*=qX*3AWgG);%SuGZ)(>Z_seM;+! zq67d$#J&!KAOtZ!e|c$1w12?g6TL=KF)sBV4Wn7HV#OP8ys>H1ra5!w3>h+{?>Z5< zT%7=5ir8jlGG&BLUOp(&C|cn4jJC%#4;f&6w|M&^m_L8M*X#YHvU30as-s7atX}=F zqUx=!ZGk}Gs$s>U!|ZH}*TLw{=z4A_J7^9#!7 z&fU0SLujF6!-fr`M~^OfKh|2G=E1GIL%Q7PIFX&)0~6` zS!>rm+T7f{W5;{pGfS5)!!T^ime&>8Q8OF*PeMJoy1IJNqD6+E{#9^ZUf#TU^Nt@o zrpSnz*`SDo3jFEr-5!tU&O5tOSIW!ho<4p0;Gu(xj7*<4W#_KSPbxpJsyg(_#w}xR zzR_mOz66a;6MqsauqcV|R8-8GHJcBckh-Z`PSQR zoi%Ir*}Ahz-B-z`c*0QL2aFK>9ghgaXK{6tdk=uk5o22SdEa0oTC zp`WB!kfov&Rp2y76*$dFfiYOkY#0ct2d6p7K1~|zCL|O!vq42MNj(Ou9z1Z8T3}E! z8wQLTWPhbOs=#TEDsY;k3Y_L7G{_n{w0Ome6;UU*ZQFMA=n+MB)XawdlTZ&1`28o2 z9}oWo1A);uj}8WvJ@!*G8x)aH54N}2-+ZfUr#p@ln>TO%r1F!~r%x*~63%P@0K47s zyC)yB*|P0+NBot`}W4h zhKs1KzOz9oi57Ul!i5N-ii)={uDY7ppp=Am(S?OY<>loS6>ndC^@#AvHoM*4X78s3 zHGi`~DG7bxf9IVu)~;O}b#m)lZ-pnvQS`X+oo46u3edPj$v*)VXD{egdPsF@A@M17i+=BNUvIjX>EP6~{{YG%Vgz!^q=iA<{uIt-)7 zhK(50+N|t}Y{F3YMGuhNf}fEDLD969=YNxN&T%Q`g_jRBttAKw2Y~F{;=yi=O8g1Q z+7(6T7mgg%#;C-Zu%KN6V}KPDUPIGyc*nQO;6l^dg2HPsz(R)?Op~&6izP{LIa@d` z9bUP7xxp~{Olv+tT<}WmZf^u9D66d~^jVYySyDGkBs(}kl0@`-(!<1B=pYFSdK#~( bk`nwsUPDS`vI+#$00000NkvXXu0mjf|6z0t diff --git a/material_maker/doc/images/node_simple_sdf_transforms_rotate.png b/material_maker/doc/images/node_simple_sdf_transforms_rotate.png index c2c8277777aa020eeccc41f40be2fe6a8300ce8b..f6c35b93445ff43e012eda8724bae0a2fdf67d95 100644 GIT binary patch delta 3409 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 delta 5064 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�{~Qt{K~%cv?w%##jI63MfY=TpDrMnE zf*CKotFyA+vF|6yD3YJ-%m#MHarFEgDJ)tKN@nFZ1;2<|PZoclC@6t_VqjoEdA)(V zxe4~UuaB)a(_CI&%HNzt_UFo8<6sAe1QQY6Hzmf##u1~{^iUrRjiST~vNZw-NC~+( zdEIJv7H$_if`XEhlWVQ}+HP;ST?1vYfrg)f3iZt!Ilc>Ayxj1$O?!i?S31>kD&xH7 zsHLSI@b05>Vq|G)sjI7NV}p^{wE}*9^FQ32oSAQUxA)uC+f*}0%6lYJ%yxD4aD8l{ z*|V=mBTeQ!kYHvq(>G1Pv_*9SGBV!N)052Vz4>Ex{4?X*_>;)UyS*oiHF>z2iGf}8 z^kFgP#}D1s5q6CqwboUx=*p2_wbp#pLnrj0G`X(U)jthmw5I^->Cm!ygtl@_e0f)w z6fq;iLx%aD4g1*G*vBGvJB!K@&vZVr3Q0>#Gc$ko-Ji!6@Y$vBC;+!L;Zo zKrs)GEf(;%rM?GAxXvc0fAm_<@%<~qNb49K73E#~WROLV!-n%fa*$BY5TB>a%<2uP*n;N*fU&`1N(dZ|Mq)is7Kh2>6FQ=xalq1NZtR_K$V)oxaWexSqlF2uX=(@UpEk>Ggc@uO;R8&-A z8O(7iLx%zS`jpK;{Bq!2V|i(5Vro`kzd;uFmlNGx51!a^C-JNigIg=1h{;7av(s#~ zi0(Z%(d$@wwFesN8Zwh|U7E^2;J9PTFYlu7nf_gYWZvqlwAy~%fXJNU2Ps|HR8z}% z3KpqVZG;z?mx3W4Q7NL;R|g&jt;xV}5CGCM^WwB%HBTSur>` zT!BQ=%3Y~LuS#_a#_odhAR@%2G5Z@Qn$P7HZEKVyZ`yuS_IFuC+>R!IIK&!%EK6br zgGfQ!HaSo>4rOFys4C*%lROq$iaPXP2Qefs6&%wrg_=|R8g&gflgDam)=SIF^2V(v z;dC&^v@EsPWv27Z)_r%5jUkG0VbZ4fU352$6U3_F@9%GGTf}fl8XErQ4my;2?WEe2 zy+P)V9O2Ka%#A};iRjg=h$((b88WqP3K=pTs?I}l{kx(pyp&P5H9%w>49+`EeycS1 zjQr?jQ-5jxRedEUS)Srf4t7G4?M`9hzC&XjC-}*{%7MyF@ovYVarmMGKtQzn6z`i*x)1A(mN|Q+M$>+#cFdd&G5M;iZ1=QE z8pY5mUysRg+k|QqWxL%PeOuPbX~ORlZ&tiVP!VE|MvS|h2}f#nj@6Nx)<)Wh#k@rk c!qD(DM(?(cPw2Src;N1+LA9P$DOm*n4@Fn|nE(I) diff --git a/material_maker/doc/images/node_simple_sdf_transforms_translate.png b/material_maker/doc/images/node_simple_sdf_transforms_translate.png index 91ba8acf76a195ce92d015abde2f260cb9b6d63a..0b0932ef5d0c2915bf2d24afe102197cec57a4f1 100644 GIT binary patch delta 4372 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 Date: Wed, 28 Feb 2024 18:32:49 +0800 Subject: [PATCH 2/2] minor typo --- material_maker/doc/node_3d_sdf_transforms_scale.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/material_maker/doc/node_3d_sdf_transforms_scale.rst b/material_maker/doc/node_3d_sdf_transforms_scale.rst index bf2f67c37..c1e258b65 100644 --- a/material_maker/doc/node_3d_sdf_transforms_scale.rst +++ b/material_maker/doc/node_3d_sdf_transforms_scale.rst @@ -1,7 +1,7 @@ Scale node .......... -The **Scale** node is variadic generates 3D signed distance functions of scaled shapes +The **Scale** node is variadic and generates 3D signed distance functions of scaled shapes based on its inputs. If the input shapes are associated to color indexes, the scale node applies them to the output.