TomoGのごちゃまぜ倉庫

Blender シャープ辺の使い方・細分割曲面でエッジを消さない方法

今回はBlenderでシャープ辺を使って、細分割曲面を使っても辺をくっきりさせる方法をご紹介していきたいと思います。

またシャープ辺を使わなくても、細分割曲面から辺を残すことはできるので、シャープ辺を使っても使わなくても大丈夫です。

エッジ(辺)を残した結果

まずシャープ辺を使ったら、やエッジを消さない・残した場合などと言っても分かりにくいと思うので、例をご紹介します。

Blender シャープを使った細分割曲面前のオブジェクト

このオブジェクトに細分割曲面をかけてみたいと思います。

左は何も行っていない状態で細分割曲面を使った時になります。

右は本記事でご紹介するエッジを残した時の結果となります。

 

このように細分割曲面で滑らかにしてほしくない辺がある場合などに使えるのが本記事の内容となっています。

基本的なやり方

Blender モディファイヤーの辺分離

基本的なやり方としては、細分割曲面をする前に、モディファイヤー辺分離を入れてこむだけです。

上図の位置にあるのが辺分離となっています。

そうすると上図のような画面になります。もし、細分割曲面の方が上に来ている場合は、下に変更してください。

赤枠内の項目は両方同時にオンにすることができますが、原理的には2つの項目を合わせただけなので割愛します。

 

そして、辺の角度についてはシャープ辺を使わない方法で、シャープな辺についてはシャープ辺を使った方法でご紹介していきたいと思います。

シャープを使う方法

Blender 辺にシャープを付ける

まずは辺にシャープを付けていく方法です。

付け方としとは、シャープを付けたい辺を選択した後【Ctrlキー+Eキー】で項目を出して、そこの【シャープを付ける】という項目を選択するとシャープを付けることができます。

【シャープをクリア】で付けていたシャープを消すこともできます。この辺りは以前記事で紹介したシームの付け方と同じです。

Blender モデフィファイヤーの辺分離でシャープを選択

そして、先ほど追加したモディファイヤーの辺分離のシャープな辺にチェックを入れると完成です。

基本的にはこのやり方の方が、エッジを確実に消すところと消さないところで区切る事ができるのでおすすめです。

しかし、一々シャープを付けて面倒だという方は、次のシャープを使わない方法をご覧ください。

シャープを使わない方法

Blender モディファイヤーの辺分離で辺の角度

シャープを使わない方法はいきなりモディファイヤーの辺分離から変更していきます。辺分離の辺の角度というところにチェックを入れて分離角度の設定を行ってください。

 

この分離角度以前の角度が辺分離される、つまりシャープがかかっていない状態になります。そのため、ここの分離角度を誤るとおかしな状態になります。

上図が分離角度を誤った時となります。

そのため、この辺の角度で辺分離を行う時は正確で適切な数字を入力する他、角度が入り混じっていた場合は使い物になりません。

参考サイト

blender.u5kun.com


これで本記事の内容は終わりとなります。

よく使用するモディファイヤーの細分割曲面を、このシャープを使うことでより使いやすくなったかと思います。

今回の記事は以上となります。お疲れ様でした。

Blender Displacement Mapの使い方!テクスチャ模様をメッシュに適用する

今回は今までノーマルマップを使う時などに使用していた時に皆が思っていたであろう疑問についてご紹介していきたいと思います。

 

その疑問とは配布されているテクスチャに付いている事が多い〇〇_disp.jpgとかのファイルの使い道です。

〇〇_col.jpgや〇〇_nrm.jpg等は使っても〇〇_disp.jpgだけは使った事がありませんでした。そのdisp画像の使い道を本記事でご紹介していきたいと思います。

 

ノーマルマップ付きのテクスチャ配布サイトはこちらから

ノーマルマップを使ったレンダリング方法はこちらから

そもそもdisp画像とは

〇〇_col.jpgならColor画像、〇〇_nrm.jpgならNormal画像と分かりやすいものでしたが、〇〇_disp.jpgは何画像になるのでしょうか。

このdispとは記事のタイトルにもなっているDisplacementの略だったのです。

ejje.weblio.jp

Displacement画像の使った結果

Blender タイル

Displacementを使ったものが上図になります。

記事の更新的にずっとノーマルマップ関係をやっていたので、ノーマルマップを使ったやつでしょと思う方もいると思います。これのメッシュを見てみてください。

上図が先ほどのタイルのメッシュになります。実は先ほどのタイルはノーマルマップで凹凸を付けたように見せていたのではなく、本当に凹凸があったのです。

つまり、テクスチャの模様をメッシュにさせることが出来るのがDisplacement画像ということになります。

 

しかし、後述の作り方を見れば分かりますが、模様を付ける分ハイポリになるので、ゲーム素材などには非常に使いにくいものになっています。

Displacement画像(Map)の使い方

このDisplacement画像・Displacement Mapを使う方法を今からご紹介していきたいと思います。

メッシュを用意

まずはDisplacement Mapを使用するためのメッシュを用意します。

上図のように平面を用意し、細分割曲面をかけます。細分割曲面のタブをシンプルにしないと、平面が円になっていくのでご注意ください。

ビュー数は滑らかな模様を取りたい場合ほど数値を上げてください。しかし、7以上の場合でないと模様がうまくつかない場合があります。

細分割曲面の値が決まったら適用を押して、メッシュを増やしておいてください。

Displacementのモディファイヤー追加

BlenderのDisplacementモディファイヤー

まずは先ほど作ったメッシュにモディファイヤーを追加していきます。追加するモディファイヤーはDisplacementをそのまま日本語にしたディスプレイスを選択してください。

Blender Displacementのテクスチャ項目

すると上図のような項目が出てくるので、テクスチャの新規を押してください。既にdisp画像を読み込んでいる人は、そのテクスチャを選択してください。

Displacementテクスチャを追加

Blender テクスチャ設定画面

次にテクスチャの設定タブに移動してください。そして上図の上部の赤線にDisplaecementと書かれている事を確認してください。もし書いていない場合は変更してください。

 

そしてテクスチャ設定項目の画像の新規・開くボタンでdisp画像を読み込んでください。

Blender Displacement適用結果

読み込んだ結果が上図のようなものになります。ここまでくるとDisplacement Mapはほとんど完了となりますが、最後は調整を行っていきたいと思います。

 

※もしこうならない場合は編集モードのままの可能性があります。必ずオブジェクトモードにしておいてください。

調整

Blender Displacementの強さ

調整方法として、先ほど追加したディスプレイスのモディファイヤーの項目の中にある強さというところを変更すると調整することができます。

そして調整された結果が上図のようなものになります。

参考動画

youtu.be


これで今回の内容は終わりとなります。

以前までご紹介していたノーマルマップを使って凹凸を誤魔化すやり方ではなく、実際に凹凸を作るのが今回のやり方になります。

ポリゴン数を気にしない作品等に使ってみるといいかもしれません。

これで記事は終わります。お疲れ様でした。

 

模様についての関連記事

Blender 火花(スパーク)の作り方

BlenderのSpark(火花)の作り方

今回はBlenderで火花(スパーク)の作り方をご紹介していきたいと思います。火花以外にも水しぶきや、線香花火に使えるなと思っています。

参考記事

www.youtube.com

作った時のツイートがこちら

火花(スパーク)の作り方

メッシュの用意

この火花を出しているのはパーティクルです。しかし、そのパーティクスを出すためにはメッシュが必要になってきます。

今からその火花を出すためのメッシュを用意していきたいと思います。

まずは上図のように厚さのない円柱を作ります。注意として、このメッシュはとても小さくしておいてください。

なぜなら、このメッシュが大きいとパーティクルの出ているところが丸見えで、火花が散っているように見えなくなるためです。

その後、円の両面を削除し、4分の3くらいメッシュを削除してください。

これは後々パーティクルの飛ぶ範囲、つまり火花の拡散角度になるため後々調整が必要になる項目です。

あとは細分割曲面をモデイファイヤーから追加しておいてください。ビュー:2、レンダー:2くらいで問題ないと思います。

Point!!

・メッシュはパーティクルが出てくるだけの場所なのでできる限り小さく

・メッシュのある部分から火花がでるので、拡散角度の調整はメッシュで

パーティクルの用意

次にパーティクルを追加していきます。まず始めに先ほど作った円柱型のメッシュにパーティクルシステムを追加します。変更するところは主に、放射と速度となります。

 

まず始めに放射についての説明をしていきます。

この放射の中で一番重要な項目は寿命です。この寿命が投げれば長いほど、パーティクルがつまり火花が長く光り続けるということになります。

本記事や参考動画では15にしていますが、長いや短いと感じたら、ここを変更することで火花の光る時間を制御することができます。

その下にあるランダムも、これが0のままだと全ての火花が一定の時間で消えるということになり不自然極まりない状態になるので、高く設定しておくことをおすすめします。

 

次に速度について説明します。

ノーマルはパーティクルの拡散初速度です。なので、ここの値を下げれば火花はそこまで拡散せず、上げればとても長い距離まで拡散するようになります。なので、ここも調整したい箇所になります。

Point!!

・放射の寿命で火花の光り続ける時間を決定

・放射のランダムで火花の光り続ける時間をランダムに

・速度のノーマルで火花の拡散初速度を決定

パーティクルに使うメッシュを作成

次にこの火花用のパーティクルに使うメッシュを作成していきたいと思います。これは通常の球体やICO球でいいと思います。

あまりハイポリにすると一気に重たくなるため、できる限りローポリにしておいてください。

本記事ではICO球を使って上図のようになっています。

床を作る:蛇足

ここの章は蛇足です。なくてもいいという方は無視してください。

火花が散る時に床が基本的にあると思います。本章ではその床を作りたいと思います。

ただ平面を伸ばして、上図のようにコリジョンを付けただけのもになります。これで火花が床に散らばるようになると思います。

ちなみに、これで前章で作ったパーティクルに使ったICO球を隠すということもできます。もしこの床を作らない場合はICO球をカメラに映らないところに移動させておいてください。

パーティクルの設定

次に先ほど作ったICO球をパーティクルに設定していきます。

レンダー項目でタブをオブジェクトに設定し、オブジェクトに自分で作ったパーティクル用メッシュを設定してください。

 

下のサイズとランダムサイズでは基本的に上図の値で問題ないと思います。

サイズとは火花の基本的なサイズを表します。そのため、火花が全体的に大きい・小さい時などはこの値を変更してください。

ランダムサイズとは火花のサイズをランダムにする値です。この値が0のままだと、全ての火花が同じ大きさという不自然なものができるので、必ず変更しておいてください。

Point!!

・レンダーのサイズはパーティクル自体のサイズを決定

・レンダーのランダムはパーティクルのサイズのランダム差を決定

マテリアル設定

ここからやっと火花だと実感できるような設定をしていきます。ここで微調整をしたいのは分かりますが、少しお待ちください。

最後より微調整しやすい状態にしてから微調整していきたいと思いますので。

 

マテリアルを設定するのは、本記事ではICO球、パーティクルに使用したメッシュになります。

f:id:TomoG:20190307222316p:plain

火花のマテリアルとしては上図は全体図となっています。そこまで複雑ではありませんが、少し説明が必要だと思うので、説明していきます。

f:id:TomoG:20190307222358p:plain

まずは左半分です。

パーティクル情報の経過時間と寿命が数式の除算に繋がっています。

これは経過時間 / 寿命ということで時間が経過すればするほど値が変化していくというものになっています。

まずこれをカラーランプに使用し、経過時間によって色を変更しているという仕組みになっています。

f:id:TomoG:20190307222545p:plain

次に右半分です。

放射の値は要調整ですが、先ほどのカラーランプの経過時間による色をここで放出しています。

それと同時に時間が経てば経つほど、透過BSDFの強くでていくため、見た目は火花が消えていくように見えるというわけです。

微調整

これで火花の作り方自体は終了となります。しかし、最初に作った時などは特に調整が必ず必要になってきます。

そこで調整しやすいよう画面を真っ暗にしていきたいと思います。

f:id:TomoG:20190307222959p:plain

どのオブジェクトでもいいのですが、選択すると上図のような位置にカラーがあると思います。ここを真っ黒に設定すると、より火花が目立って見えるようになると思います。この状態で調整をすると、より分かりやすいと思います。

 

調整する値等は、本記事の見出しの最後にあるPointを見ていくと分かりやすいと思います。

モーションブラーの追加:蛇足

以上で火花の作り方自体は完了となります。

しかし、写真風に仕立てたりする場合はどうも物足りないかと思います。なので、一番最初に貼った画像のようにするために、モーションブラーを追加していきたいと思います。

f:id:TomoG:20190307224607p:plain

上図の位置にあるモーションブラーにチェックを入れるとモーションブラーを火花に付けることができます。

f:id:TomoG:20190307211947p:plain

そしてモーションブラーを追加した結果が最初にも表示した上図のようなものになります。

カスタマイズ例

f:id:TomoG:20190307224931p:plain

上図のようにコンポジットノード配置をしたら、結構綺麗になったので火花をコポジットノードでいじくるのも楽しいかなと思います。

この時モーションブラーは切っておいてください。

f:id:TomoG:20190307224944p:plain

いじくった結果は上図となります。

分かりやすい参考サイト

ch.nicovideo.jp

同じ動画を参考していたのに加え、要素を追加しているので、これ以上を作りたい方はこちらもおすすめとなります。


今回の記事は以上となります。お疲れ様でした。

Unity ノーマルマップの使い方

f:id:TomoG:20190227214151p:plain

今回の記事はUnityでもノーマルマップ使えるのか試してみて、使えたのでまとめただけの記事となります。なので、そこまで内容的には濃くないですがご容赦ください。

Blenderでのノーマルマップの使い方は下記の記事をご覧ください。

ノーマルマップの使い方

f:id:TomoG:20190227214451p:plain

まずオブジェクトにテクスチャをアタッチすると上図の赤線のように、albedoにその画像は設定されていると思います。

もし設定されていない場合はAlbedoの左にあるマークを選択すると、テクスチャが選択できるようになるので、そこでColorテクスチャか、Diffuseテクスチャを選択してください。

f:id:TomoG:20190227214536p:plain

そして、Unityでノーマルマップを使うには、Albedo下にあるNormal Mapという項目があると思います。ここにノーマルマップの画像を設定すると、Unityでもノーマルマップを使えるようになります。

 

ここのNormal Mapのテクスチャ設定方法もAlbedoと同じようにNormal Mapと書かれている左にある白いところにテクスチャをドラッグ&ドロップするか、マークを選択してNormalテクスチャを選択してください。

f:id:TomoG:20190227214638p:plain

ノーマルマップの強さの設定としては、分かりにくかったですがNormal Mapの右端に値を変更できる箇所が上図のようにあります。ここで、値を変更することでノーマルマップの強さを変更できます。

 

個人的に1のままだと少しノーマルマップの効きが薄いかなと思うので、2にしました。これは各自調整を行ってください。

 

余談

本記事のメインの内容としては以上です。本当にただ試してみただけで、覚書のような内容です。

なので、ここからは少し余談になるので、面倒な方は飛ばして頂ければと思います。

Blenderとの比較

テクスチャのDiffuseとノーマルマップだけを使った時、UnityとBlenderではどのような違いがあるんだろうと思いどちらも同じテクスチャで同じような構図で見てみました。

f:id:TomoG:20190227215344p:plain

まずはUnityでノーマルマップを使った場合になります。

f:id:TomoG:20190227215414p:plain

次にBlenderです。

光の当たり加減もあると思いますが、ほぼ同じような品質だと思います。なのでゲームとして利用する品質としては十分かと思います。

 

これでBlenderで思う存分Normal Mapを使ったモデルを作成して、Unityに使うことができると思います。


今回の記事はこれで以上となります。お疲れ様でした。

Blender PBR Materialsのテクスチャで凹凸をつける方法

f:id:TomoG:20190226173704p:plain

以前の記事で紹介したテクスチャに凹凸をつける方法ですが、以前はダウンロードしてきた画像を使って凹凸をつけていました。

 

今回の記事では、アドオンのPBR Materialsを使って同じように凹凸をつけていきたいと思います。

前提知識として、先述した記事とアドオンのPBR Materialsについてのは必要となっているので、まだ読んでいない方はそちらを先にご覧ください。

これをやった時のツイートはこちら

比較

 まずは凹凸を付けた場合と付けなかった場合を比較して、違いをご紹介したいと思います。

f:id:TomoG:20190226213257p:plain
f:id:TomoG:20190226173704p:plain
f:id:TomoG:20190226213314p:plain

左から、凹凸無し、凹凸有り、凹凸の反対版となっています。

全て同じメッシュ、同じカラーでノーマルマップを変更しただけとなっています。

本記事では右の画像2つのようにする方法をご紹介していきたいと思います。

凹凸を付ける方法

基本的にはテクスチャに凹凸をつける方法と全く同じです。ただし今回はテクスチャを使わずPBR Materialsのテクスチャを使うということだです。

今からご紹介する方法は凹凸がはっきりと付いて分かりやすいレザーを使っていますが、他のPBR Materialsのテクスチャを使ってもできます。

f:id:TomoG:20190226214534p:plain

まずは上図のようにノードを組みます。この状態で使う場合は多いと思うので、これは違和感ないと思います。この状態のレンダリング結果は、凹凸無しのものが出来上がります。

f:id:TomoG:20190226214646p:plain

凹凸を付ける行為自体には全く関係ありませんが、ノードを組むときに分かりやすくなるようテクスチャノードを少し離してください。

f:id:TomoG:20190226214750p:plain

そして、バンプノードを作り、そのバンプノードの高さにテクスチャノードから出ている値をリンクさせます。

f:id:TomoG:20190226214845p:plain

この状態でバップノードのノーマルを各プリンシプルBSDFノードにリンクさせると、凹凸の完成となります。片一方のプリンシプルBSDFにリンクさせるか、両方にリンクさせるかは臨機応変に変更してください。

上図の赤枠内にある反転を押すと、上記の例として出した、凹凸ありと凹凸の反対で分けることができます。

以上が基本的な凹凸の付け方となっています。

応用

凹凸の強さの調整

f:id:TomoG:20190226215726p:plain

凹凸の強さを調整したい場合はバンプノードの強さと距離の値を変更してください。この値を変更することで凹凸の強さを変更できます。

凹凸の位置を制限

f:id:TomoG:20190226215527p:plain

凹凸の位置を制限したい場合は上図の位置にカラーランプを置いて値を変更することで位置を制限することができます。

凹凸だけ欲しい場合

f:id:TomoG:20190226215906p:plain

今回は模様の部分で凹凸をつけていますが、テクスチャの模様は必要ないという方は、上図のようにすることで、凹凸だけを抽出することができます。

これはPBR Materialsに限らず、通常のテクスチャを使用した場合にも言えることですので、試してみてください。

現時点で思いついた使い道

現時点でこれを使って、何かを作ろうとは思っていません。しかし、本記事の技術を使って何か作ろうと考えた時何が作れるかと言えば

・革のサイフ等(革製品)

・壁の亀裂のエフェクト(Cracks Textureを使用)

f:id:TomoG:20190226221235p:plain

・崩れた壁や床のエフェクト(Dust Textureを使用)

f:id:TomoG:20190226221437p:plain

に使用できるんじゃないかなと思っています。

他にも様々な使い道もあると思うので、是非皆さんも探してみてください。

今回の記事は以上となります。お疲れ様でした。