Some favorite shop -Sangenchaya-

It will end a holiday week soon in Japan, I have been spending half studying programming or English and a half relaxing.

This article introduces some good shop around Sangenchaya area.

First of all, I went to Nakameguro station by train Tokyu-Meguro-line and walk along the Meguro-river to North. You can see amazing cherry blossoms along the river if you come in from the middle to end of April.

20190505-5

There are varied shops along with the riverside cafe, restaurant, Knick-knack, and clothing, so there are very fun.

By the way! Bit walk to the north, there is the Starbucks roastery opened and it is first and only in Japan. I was very surprised that there was a doorman it means many customers come here, I think it is a consideration to prevent confusion in the store. I  was… not go there today, I will go next time.

https://www.starbucks.co.jp/roastery/

L’Atelier MOTOZO

I purpose to go the patisserie Motozo’s sweets there is near the Ikesiri-Ohashi station I want to eat Monte-Bianco and Tiramisu, yes Italian traditional sweets! Love it…

20190505-1

20190505-2

http://motozo.tokyo/

There is also some coffee shop near the area If you walk toward Sangenchaya, you will find Nozy Coffee, Obscura Coffee and more.

Nozy Coffee

You can enjoy high quality varied coffee with french press and espresso, I was fun Honduras COE coffee. There is a bakery shop just opposite, a bit expensive but good taste.

20190505-3

http://www.nozycoffee.jp/

Obscura Coffee Laboratory

There is also near the Sangenchaya too, and you can enjoy high quality varied coffee with pour over, espresso and more.

20190505-4

https://obscura-coffee.com/

There are so many varied shops in this area unfortunately, I have no time at all to see everything… So, I will go to this area again.

 

位置合わせツール,その他のプラグイン

以前Twitterで投稿してみた位置合わせツールを少し拡張しました.

以前投稿した時の動画

この時はオブジェクトの位置を任意のオブジェクトへ移動させるにとどまっていました.標準の転写ツールに似ていますが,軸位置や中心部,バウンディングボックスの最小,最大を,移動させたいオブジェクトとターゲットオブジェクト両方に指定できるようにしています.また,角度とスケールも各軸ごとに設定できるようにしています.少数ですが何名かの方から良いフィードバックを頂けました.

Cinema 4Dは階層でオブジェクトを管理するので他のソフトから乗り換えた方には少し戸惑う部分なのかもしれません.

その後,もう少し手を入れて,軸のみを任意のオブジェクトの場所に移動させる軸モードも追加しました.あとインターフェイスも少し改良しています.

現在のバージョン

20190219

他,マテリアルリンクが切れたテクスチャタグを一括消去したり,オブジェクトのポリゴン選択範囲タグをまとめて選択するスクリプトをプラグイン化しました

プラグインを書くのも意外と楽しいものだと感じ始めているところです.

 

thinkingParticles 3: パーティクルを消す

前回,放物線を描くパーティクルを出しました.このパーティクルはライフタイムが経過するまで表示されます.

ディフレクタにヒットしたら消える

今回はシンプルにディフレクタにヒットしたら消えるようにします.ディフレクタを作成したら,TPとスペースワープにバインドを行っておきます.この時点ではまだパーティクルは突き抜けます.

20190128-6

ParticleDieを使う

新規ダイナミックセットを作成し,Delete_particlesに名前を変更しておきます.このセットにはパーティクルグループ(blue),ParticleDieノード,StdCollisionノードを作成します.バインドしていればStdCollisionのInactiveにDeflectorがあるので,Activeにしておきます.このOutputをParticleDieのONポートに接続します.blueとParticleDieも接続します.これでディフレクタにヒットしたらParticleDieがオンになり,パーティクルが消えました.

20190128-7

今回は短いですがここまで.ParticleDieは今後よく使うことになりそうです.

thinkingParticles 2: 放物線とパーティクルグループの変更

パーティクルグループの準備

今回は二つのパーティクルグループを扱うので,最初にグループを二つ作成し,redとblueという名前にしておきます.それぞれのグループのカラーを赤と青に変えておきます.

パーティクルを斜め上に真っすぐ飛ばす

ダイナミックセットを作成して名前をGererateに変更します.中にGeneratorのBornノードとOperatorsのStandardからVelocityノードを作成します.Bornはデフォルトで原点からパーティクルを発生しますが,まだパーティクルはその場にとどまるだけなので,Velocityノードのパーティクルに接続します.Velocityは速さと向きを定義できます.Speedを100,Directionを0,1,1とするとちょうど斜め上にパーティクルが飛んでいきます.また,BornノードはパーティクルグループがAllになっているので,redに変更しておきます.赤いパーティクルが出てきますね.
20190128-1

重力をつくる

重力はMAXのフォースから重力を下向きに作成して,GravityとTPをスペースワープでバインドを行います.重力の強度は適当に設定します.
新規ダイナミックセットを作成して名前をForceにして,中にAllグループと,StdForceノードを作成し,Particleポートを繋ぎます.StdForceはスペースワープにバインドしたのでDeactive ListにGravityが追加されているはずです.これをActiveにすれば重力がAllグループ,つまりすべてのパーティクルに作用します.
redグループのパーティクルが放物線を描いて落ちていく.
20190128-2

パーティクルグループを変える

今回はパーティクルグループをredグループからblurグループへ途中で変えてみます.新規ダイナミックセットを作成して名前をChange_groupに変更します.
この中にredグループ,Groupノード,PatricleAgeノードを作成しておきます.O redからO GroupへParticleを接続します.O GroupのGroupをblueに変更します.
さらにParticleAgeのParticleポートへO redを接続し,OutポートからO GroupのONポートへ接続します.この時,PatricleAgeのパラメータはRelativeにしてTime1を50,Time2を100としておきます.Relativeはスカラー値なので50にした場合,パーティクル寿命のちょうど中間地点でTrueが出力されるので,そこでblueグループのパーティクルに変更されます.Absoluteだと時間のようです.
パーティクルが途中でredからblueに変わりました.
20190128-3

風を追加してTurbulenceを入れる

重力と同じ手順でフォースの風を追加,バインド,Activateします.Turbulenceの数値を少しあげて乱流をつくりました.他,重力やBornのパーティクル数も変えてみます.
20190128-4

red,blueグループのシェイプも作ってみる

StdShapeは前回使ったので,今回は実際のジオメトリをパーティクルとして飛ばしてみます.シーンの中にキューブと球体を作っておきます.
新規ダイナミックセットを作成し,名前をShapeにします.中にred,blueのグループノードを作ります.さらにOperatorsカテゴリからShape→GeomInstanceノードを二つ作成して,それぞれのグループのParticleポートを接続しておきます.GeomInstanceのパラメータにPick Objectを使ってシーン内のキューブと球体を各GeomInstanceノードに設定しておけば,redはキューブ,blueは球体といった具体でシェイプを定義できます.途中でグループが変わるとメッシュも入れ替わります.
20190128-5

thinkingParticles 1: パーティクルの出し方

3ds MAX用プラグインのthinkingParticlesの学習記録を残しておこうかと思います.

thinkingParticlesとは

thinkingParticles(以下TPとする)は3ds MAX用のパーティクルプラグインです.パーティクルは粒子のことですが,3DCGでいうパーティクルは意味合いがかなり広くなり,粒子を出すだけでなく,多数のオブジェクトを効率よく動かす方法として用いられます.
TPはその中でもプロシージャラルワークフローにより,パーティクルの動きを制御することができます.
また,プロシージャラルにより多くの動作を自動化させることも可能です.例えば他のオブジェクトにトリガーを仕込み,オンになるとパーティクルが発生する,またそのパーティクルがさらに他のオブジェクトのトリガーとなる,などということも可能です.自動化されることにより,アニメーションの修正の効率もよくなるというわけです.
というようなプラグインですが,簡単に使えるような代物でもなく,かなり勉強が必要だなと思います.私も全くの初心者でこれからしっかり勉強していこうかと思ったわけですが,備忘録として記録をのこしておこうかと思います.
MAX,TPに関しては全くの初心者なのでいろいろ間違いを書いてしまうと思いますが,この点はご勘弁ください.
ちなみにこの記事ではパーティクルを出すだけで終わってますが,TPは映像で広く使われていまして,極めていけばこんなものまで出来てしまうという代物ですね.シン・ゴジラのビル破壊にも使われているのは有名な話かと.


TPオブジェクトを作成する

最初にTP用インターフェイスを使うためにThinkingオブジェクトを作成します.これはParticles SystemのThinkingから作成します.シーンにTPオブジェクトを作成し,選択したら修正パネルからThinkingのプロパティか,Shift+Alt+Pでインターフェイスを開きます.
20190127-1 20190127-2
TPのインターフェイスを開く.このインターフェイスでパーティクルを作ったりアニメーションを作っていくことになります.
20190127-3

TPはグループとダイナミックセットを組みあわせて使う

またパーティクルは出ません.
TPはパーティクルグループとそのアニメーションを作るダイナミックセットを作成してくことになります.
パーティクルグループはデフォルトでAllがあり,これはすべてのパーティクルグループとなります.TPはグループから別のグループにアニメーションを変化させながらヒストリを作成していくようなイメージでしょうか.複数のグループは親子関係にすることができます.
パーティクルグループに新規グループを作成し,Particleと名前をつけておきます.パーティクルグループは分かりやすいようにカラーも変えておいた方が良いですね.ダイナミックセットも新規に作成し,Generateと名前をつけます.
GenerateにPosition Bornを作成してアニメーションを再生すれば,原点からパーティクルが出現します.TPの位置ではないんですね.Position BornのGroupがAllになっていたら,Allグループのパーティクルとなり,GroupをParticleグループに変更すれば,そのパーティクルはParticleグループのものとなります.カラーを変えておけばビューポートの色も変わりますね.
20190127-4

StdShapeノードを使ってみる

パーティクルは出ましたが,まだレンダリングしても何も出ません.この時点ではパーティクルのシェイプを定義していないためです.
シンプルなキューブにしてみましょう.新規ダイナミックセットを作成してShapeという名前にして,中にStdShapeノードを作成します.ここでGroupノードからParticleグループノードを作成し,パーティクルをStdShapeノードのパーティクルに渡します.StdShapeパラメータのシェイプタイプをCubeに変更すればParticleグループからキューブが出てきます.
20190127-5

フォースを使って動きをつける

風や重力などはMAXのフォースを使うことができます.風を使いたい場合は,先に風オブジェクトを作成して,さらに風とTPオブジェクトをスペースワープにバインドをしておきます.
TPインターフェイスを開き,またダイナミックセットを作成し名前をForceとします.ダイナミックセットは一つの中で作っても良いのですが,役割ごとに分けておくのが良いみたいです.複雑になってきた時に管理しやすいのだと思います.
Forceの中にDinamicsからStdForceノードを作成し,こちらも同じようにParticleグループノードを作成し接続します.しかしまだ風は動作しません.
StdForceノードを選択すると,先にスペースワープにバインドをしたのでDeactie ListにWindがリストされていますね.Windを選択してActivateすると風が機能します.
20190127-6