Studio」の紹介です。https://obsproject.com/jaクイックスタートhttps://obsproject.com/wiki/OBS-Studio-QuickstartたまにWindowsのデスクトップをムービーキャプチャしたいときがあって、これまではNvidiaの「ShadowPlay」を使用してました。バージョン重ねるごとに使い勝手が悪くなっています。私は4Kモニタを使用していているのですが、キャプチャ用に解像度下げて録画しようとしたとき、ついに画面に表示している解像度で録画できなくなってしまいました。YouTubeやTwitchのようなライブ配信向けのソフトですがPCのデスクトップキャプチャにも使用できます。AVCへの変換に対応しているというのがあります。NVENCはShadowPlayで使用されているコーデックで、GPUを使用してエンコードするためCPU負荷が低いです。支援してたり、Nvidiaがカンファレンスで取り上げてるので安心感があります。使い方デスクトップをムービーキャプチャする手順です。UIはQtで作られてるので、グラフィックソフトのような感覚で自由にレイアウトできます。1.ソース追加ソースの+アイコンでキャプチャ対象を追加します。デスクトップをキャプチャしたいときは「画面キャプチャ」、ゲームをキャプチャしたい場合は「ゲームキャプチャ」をクリックして、キャプチャ対象のゲームやウィンドウを指定します。Studioはライブ配信用のソフトなので、複数の画面(ソース)を切りかえることができる仕組みになっています。2.録画開始コントロールの「録画開始」をクリックするとキャプチャが開始します。同じボタン「録画終了」を押すとキャプチャが終了します。設定デフォルトではライブ配信向けの設定になっているため、出力サイズが小さく画質も低めに設定されてます。フォーマット」「エンコーダ」「出力(スケーリング)解像度」を任意に設定します。Tipsmodo終了時にコンフィグファイルに設定を保存しない方法2019.09.270modoの終了時にコンフィグファイルに設定を保存しない方法について書いてみます。modoはアプリケーション終了時にUIやウィンドウの状態をコンフィグファイル(MODOxx.x.CFG)に保存します。UIを意図せず変更して壊してしまうのを避けるため、コンフィグに設定を保存したくないという場合があるかもしれません。そんな時はコマンドラインフラグを使用すると、コンフィグに設定を保存しないようにできます。-dbon:noconfigショートカットのプロパティにフラグを追加すると便利に使えます。ファイルに「アクセンス許可」で書き込みを禁止する場合と異なり、ファイルメニューの「設定の上書き保存」を使用して好きなタイミングで設定を保存できます。参考https://community.foundry.com/discuss/post/1181324Tipsmodoのパーティクルをサーフェースに沿って動かす方法2019.09.200今回はメッシュの表面に沿ってパーティクルを動かす方法について書いてみたいと思います。■サンプルファイル「アイテムのスナップ移動」でも軽く書いてますが、modoのパーティクルシステムは他のソフトと違い、アイテムのリギングで使用するノードをそのままパーティクルシステムで使用することができます。汎用性が高くて面白い特長ですが、どうすれば欲しい表現を実現できるかわかり難いと感じることもあると思います。そこで「パーティクルをサーフェースに沿って動かす表現」を作る場合の考え方、どんな感じでノードを使えばいいか手順を書いてみます。→「交差サーフェース」コンストレイントパーティクルをサーフェースに沿わせたい場合、まずサーフェースと交差判定できるノードが必要そうだと思いつきます。modoのアニメーション機能でサーフェースと交差判定できる機能といえば、「交差サーフェース」コンストレイントです。「交差サーフェース」コンストレイントは、サーフェース表面にロケーターをくっつけてくれる機能です。操作の基準となるアイテム、メッシュアイテムの順番で選択してモディファイヤタブの「交差サーフェース」ボタンを押すと、サーフェース表面に沿って移動するロケーターを生成してくれます。スケマティックでノードの繋がりを見るとこんな感じになってます。ノードにつながって、交差位置用のアイテム(Locator_2)に位置が出力されていることがわかります。このノードの処理をパーティクルで組めば同じようにサーフェースに沿ったパーティクルの移動が作れそうです。2.「交差サーフェース」コンストレイントと同じ処理をパーティクルで組むスケマティックはこんな感じです。Intersectの流れを見比べると「交差サーフェース」で作られたノード構成と同じようにリンクされてるのがわかると思います。Only)」「位置」の2チャンネル追加して、「交差サーフェース」と同様にノードをリンクします。Vectorを使用して「位置」チャンネルにリンクできるようXYZ軸に変換します。Only)」「位置」の2つのチャンネルを使用することで、他のノードで計算した結果を戻すことができるようです。modoは1つのノードであれば依存ループにならずに計算出来るのですが、パーティクルの場合は1つだけでは複雑な計算ができないため、このような動作になってるのかもしれません。Voxelを使用してメッシュを作成すると、サーフェース表面を水が流れるような表現にも使えそう。Modifierはパーティクルそのものの位置には影響がありません。サーフェースに沿って動いてるパーティクルから、さらにパーティクルを発生させたい場合には今回紹介した方法が便利だと思います。Tipsmodoのプロシージャルモデリングでソフトクリーム作ってみた2019.09.060暑いのでmodoのプロシージャルモデリングでソフトクリーム作ってみた。プロシージャルにこだわって作ったので、モデルの形状は雰囲気です。■サンプルファイル(13.1)スケマティックはこんな感じです。Curveアセンブリを使用してます。Effectorを使ってカーブをアニメーションしてます。Sweepを使用してクリームのメッシュを生成してます。クリームのシルエットやカップコーンに入る部分の調節にはラティスデフォーマを使用してます。Sweepは複数のパスを使用して押し出したり、ミニグラフを使用してカーブの太さを制御できるので便利です。Falloffのイージングを使用してアニメーションしてます。Textureを使用してます。Generatorのソースとして使用しています。プロシージャルモデリング用のメッシュにダイレクトモデリングしようとすると警告が表示されますが、ポリゴン選択してコピーすることはできるので便利です。Sweepを使用してコーンがあらわれるアニメーションにしてます。Sweepには始点と終端のキャップを生成するオプションがあるのですが、あまり形状が綺麗にならなかったのでOFFにしました。modoのプロシージャルモデリングはアニメーションでは使うには遅いのが気になります。クリームが落ちてくる速度と形状がいまいちなのですが、動作が遅いのでタイミング詰めるのあきらめました。今回はプロシージャルにこだわって作りましたが、クリームのらせん形状はデフォーマを使ってアニメーションしたほうが軽く作れるかも知れません。プロシージャルモデリングはモデリングするときに便利ですが、アニメーションで使用するにはもう少し速度が改善されると嬉しいですね。今後のバージョンアップで快適に動くようになるのを期待してます。Tipsmodoのプロシージャルモデリングでクラシックなメッシュ粉砕2019.08.300modoのプロシージャルモデリングを使用して、クラシックなメッシュ粉砕表現について書いてみます。プロシージャルモデリングはアニメーションを想定した機能が弱く、あまりいい表現にはなりませんでした。■サンプルファイル現在のように「シャッター&グルー」のようなボロノイ分割があたりまえの表現になる前は、ポリゴンが分かれて縮小するような表現を「粉砕」と呼んでいました。そんなゲームっぽいクラシックな表現ができたらいいなと思ってプロシージャルモデリングでどこまでできるかチャレンジしてみました。下の画像はC4Dの粉砕機能。modoのスケマティックはこんな感じ。アセンブリとして再利用できるように作ってみた。Meshesで粉砕したいメッシュを統合します。Bevelの「グループ化」をOFFにしてベベルをかけます。Operationを使用してベベルの「側面」を削除します。Influenceを使ってメッシュが波うつように変形します。Deleteを使ってメッシュを削除します。Falloffを使用してタイミングを調節しています。Materialを使ってみた。単純な形状なのでそれっぽく見えるかも知れませんが、ベベルを使用するとポリゴンが小さくなる表現がうまくいかないです。ベベルの「インセット」は長さ指定なので、大きな値を設定するとベベルが反転します。本来やりたかったポリゴンが小さくなって消える表現をするにはベベルが反転しないオプションか、「インセット」をポリゴンの大きさに合わせて%で指定するようなオプションが欲しくなります。Deformerにアクションセンターのローカルようなことができる機能が追加されるといいですね。何かいい方法あるのかな。あと複雑なモデルを使用したとき、フォールオフが効かなくなったり怪しい動作に遭遇しました。Operationが原因のような気がします。ロゴのスライスアニメーションを作ったときにも思いましたが、modoのプロシージャルモデリングはもっとアニメーションを考慮したオプションが増えて欲しいですね。アニメーションの場合は滑らかにモデリング処理を適用したいんですよね。Pipeのような基本機能は全てのモデリングノードで統一して使えるように整備して欲しいな。似たようなメッシュを粉砕する表現にはソフトボディーを使う方法もあるので、色々試してみると面白いと思います。参考https://community.foundry.com/discuss/post/1092610Tipsmodoでネットワークレンダリングする方法2019.08.280今回はmodoの標準機能を使用してネットワークレンダリングする方法について書いてみます。modoのネットワークレンダリングは静止画と動画の両方に対応してます。Bonjourを使用すると設定も簡単でお勧めです。ネットワークレンダリングとはネットワークレンダリングはレンダリング時間を短縮するために、複数のPCを使用して計算を分散してレンダリングする機能です。3DCGのレンダリングは一般的に絵の品質を高めれば高めるほど時間がかかります。映画だと1秒間におよそ24コマ(フレーム)の絵を必要としますが、1フレームあたりのレンダリング時間は速いものだと1~5分間。遅い物だと1時間以上かかることも普通にあります。動画を作る場合は1台のPCで全てレンダリングするのは大変なので、複数のPCを使用してネットワークレンダリング(分散レンダリング)を行うのが一般的です。ネットワークレンダリングの注意点ネットワークレンダリングにはPCの使い方や、ネットワークに関する最低限の知識が必要です。ネットワークレンダリングでつまずきやすい点をまとめてみました。modoではシーンファイルを読み込んでレンダリングを実行するPCを「マスター」、マスターからシーンファイルを受信して分散レンダリングするPCを「スレーブ」と呼びます。スレーブPCはmodoのライセンスがなくてもレンダリングに使用することができます。インストールする同じバージョン(ビルドナンバー)のmodoをインストールするあたりまえの話ですがmodoはバージョンアップごとに機能が追加されるため、同じバージョンのmodoを使用しないとレンダリング結果が異なることがあります。そのようなミスを防ぐためmodoは同じバージョンのスレーブとだけ通信します。これはmodoに限らず他の3Dソフトでも同じですね。マスターPCからスレーブPCにファイルアクセスできることを確認するマスターPCとスレーブとして使用するPCが同じネットワーク内に存在していて、お互いのPCが通信可能か確認しましょう。ネットワーク共有したフォルダにアクセスできれば問題ありません。ネットワークにPCが見えていてもアクセス出来ないことがあります。レンダリング画像の保存先はネットワークパスを使用するレンダリング画像の保存先はネットワークパスを使用します。これもあたりまえの話ですがマスターPCで「C:\RenderImage」のようなローカルパスを出力先に指定しても、スレーブPCからは画像を保存することができません。ネットワークにフォルダを共有して「\\MyPC\Share\RenderImage」のようなネットワーク経由のファイルパスを使用しましょう。Defenderファイアウオール」が標準で入ってます。modoがネットワークと通信を行う場合、ファイアウオールが通信を遮断してしまうことがあります。その場合はmodoが通信を行えるように適切に設定する必要があります。追加でセキュリティーソフトを使用している場合も同様に、通信が遮断されないように通信の許可ルールを設定する必要があります。通信がうまく行かない場合は、PCのファイアウオールを一時的に無効にして通信が成功するか確認し、どこに問題があるかしぼり込むといいです。ネットワークの通信設定は少し面倒くさいので、わからないことは検索して頑張ってください。インストールするWindows版のmodoをインストールする時、modo11.0まではmodoと同時にApple社のBonjourというソフトがインストールされていました。11.1以降はBonjourがインストールされなくなったため、Bonjourを使用したい場合には別途インストールする必要があります。BonjourとはBonjourはApple社が開発しているソフトです。「何の設定も行わず機器を使用可能にする」という目的のソフトで、面倒な設定を必要とせずLAN内でソフト間の通信を可能にします。Appleのメディアプレイヤー「iTunes」をインストールすると「Bonjour」もインストールされます。ネットワークレンダリングの手順ネットワークレンダリングはスレーブPCでmodoスレーブモードを起動、次にマスターPCのmodoにシーンファイルを読み込んで、レンダリングを実行するという手順で行います。ネットワークレンダリングで使用されるシーンファイルは1度テンポラリに保存され、各スレーブPCに転送されます。スレーブPCスレーブPCはマスターPCからシーンファイルを受信してレンダリングする役割のPCです。マスターPCからレンダリングを実行する前に、modoをスレーブモードで起動する必要があります。PCにmodoをインストールして起動します。「Modo13.1v1j_Windows.msi」を使用して通常通りmodoをインストールします。modoは複数台のPCにインストールするこが許可されているので、好きな数だけPCにインストールします。スレーブモードに設定します。スレーブモードを設定するにはmodoをライセンスが無い状態で起動します。すると「ライセンス」ダイアログが表示されます。ダイアログの「高度」ボタンを押すと、いくつかのオプションが表示されるので「スレーブとして起動」を押します。「レンダースレーブ」ダイアログが開き、modoが待機中になります。Windowsのセキュリティ警告が表示された場合は「アクセスを許可する」を押してください。キャンセルするとファイアウオールに通信がブロックされレンダリングに参加出来なくなります。ライセンスインストール済みのmodoをスレーブモードにしたい場合はレンダーメニューから「スレーブモードに設定」を使用します。以上でスレーブPCの準備完了です。サードパーティのプラグインを使用している場合は、スレーブPCにもプラグインをインストールする必要があります。modo_cl.exeのスレーブモードmodoを起動してスレーブモードにすると、フルスクリーンで起動してGUIのサイズが変えられないので邪魔です。使用すると、modo_clをスレーブモードにすることができます。ショートカットを作成しておくと便利に使えるのでお勧めです。マスターPCマスターPCからネットワークレンダリングを実行する手順です。modoにはスレーブPCと通信を行う方法が2種類あります。「Bonjour」を使用する方法と「ホストリスト」を使用する方法です。両方の方法を紹介しますが「Bonjour」を使用する方法がお手軽だと思います。Bonjourを使用したネットワークレンダリングBonjourを使用するメリットは手軽に通信が行えることです。ネットワークビューでスレーブPCを確認する「ネットワークビュー」を開いて、スレーブPCがリストされていることを確認します。スレーブPCが表示されない場合は、ファイアウオールの設定など注意点を確認してください。スレーブPCの状態は●の色で表示されます。互換性がありレンダリングが可能です。:互換性がありますが、レンダリングの準備ができていません。