情報は力ではない

UE4 とか Blender とか。

髪の毛テクスチャを作ってみた。

CLIP STUDIO PAINT で、こんな感じの髪の毛テクスチャを作ってみた。 初心者なので、実際に使えるテクスチャなのかはよくわかってない。

f:id:masahiro8080:20180107150850p:plain:w300

以下、作り方。

フィルターからパーリンノイズをかけます。 スケールは小さめにしてザラザラした感じにします。

f:id:masahiro8080:20180107151700p:plain:w300

次に長方形選択で横に長細く選択します。

f:id:masahiro8080:20180107152137p:plain:w300

自由変形で縦に伸ばします。

f:id:masahiro8080:20180107154353p:plain:w300

ここまでで縦線がいっぱいのレイヤーが出来ます。

次にレイヤーの下部をアルファで抜くための作業を行います。 グラデーションを使って、下が黒いレイヤーを作ります。

f:id:masahiro8080:20180107155205p:plain:w300

グラデーションのレイヤーを除算にして、レイヤーを結合します。

f:id:masahiro8080:20180107155504p:plain:w300

f:id:masahiro8080:20180107155624p:plain:w300

選択範囲から色域選択を選び、レイヤー下部の白い箇所を選択します。

f:id:masahiro8080:20180107155842p:plain:w300

選択範囲を反転し、選択範囲外を消去します。 以上で、アルファ抜きが出来ます。

f:id:masahiro8080:20180107160113p:plain:w300

色が明るい気がしたので、色域補正で明るさ・コンテクストを選択し、明るさを落とします。

f:id:masahiro8080:20180107160610p:plain:w300

グラデーションを用いて、上部を黒くします。

f:id:masahiro8080:20180107160813p:plain:w300

再びグラデーションを用いて、ハイライトっぽい部分を作ります。

f:id:masahiro8080:20180107161105p:plain:w300

以上で完成です。

所感

髪の毛のテクスチャは表現したい物によってだいぶんと異なる気がするのだけど正直まだまだよくわかってない。 これからも色々と試してみたい。

Camera preview のサイズの変え方

年末年始に Udemy で @daibond1 さんの講座をしていました。 昨年末に PC が一時的に壊れてたので、久々に UE4 で遊ぶということもあり、UE 4.18 をダウンロードしました。 その後、レベルに Camera Actor を配置すると、次の画像のように Preview がそこそこの大きさで表示されました。

f:id:masahiro8080:20180106112401p:plain

この大きさだと、ちょいと邪魔だったので変更の仕方を調べました。 この記事は、Camera のプレビューサイズの変更に関する備忘録です。 この記事内の画像は @daibond1 さんの講座をしている時の画像です。

環境

OS: macOS High Sierra (10.13.2) UE: 4.18.2

変更方法

レベルビューポートで左上の▼ボタンから Advanced Settings... をクリックし、Editor Preferences を開きます。 command + , でも開けます。 f:id:masahiro8080:20180106113353p:plain

Level Editor から Viewports を選択し、Look and Feel の中に Camera Preview Size があります。 この値でカメラのプレビューサイズが調整が出来ます。

f:id:masahiro8080:20180106113917p:plain

以上になります。

今年の目標の振り返りと来年の目標

年末なので、今年の目標の振り返りと来年の目標をば。

今年の目標

すごく短いけど、今年のはじめに目標を書いてた。

massa8080.hatenablog.com

  • ゲーム作る。
  • ぷちコンに出る。
  • UE4 もしくは Blender の記事を12本書く。

ゲーム作る。

これはできてないですね。 作業はしてるけど、進捗が芳しくない。プレイ可能な状態でない感じ。 UE4Blender で遊んでたりはするけど、作品が出来上がってないです。 来年にはプレイ可能な状態に持っていきたい。

ぷちコンに出る。

これは達成しました。 ぷちコンというのは、ヒストリアさんが主催している UE4 を使って 「サクッと作ってサクッと応募」をコンセプトに開催されているコンテストです。

historia.co.jp

第7回、第8回に参加させていただきました。

www.youtube.com

www.youtube.com

自分の提出した動画を見直してみると、まだまだ勉強不足だなぁと感じたので 精進せねばという感じです。 次のぷちコンも企画されているそうなので、それまでに勉強を続けねばという感じ。

UE4 もしくは Blender の記事を12本書く。

2017年に書いたブログの数が8本なので、未達成ですね。 Blender 関連が4本、UE4関連が4本といった感じです。 12という数は月に1本くらいのペースで書きたいと思って、その数にしたんですが 全然書けてないですね。来年はペースを上げて書きたい。

来年の目標

  • 自作ゲームの体験版を公開する。
  • ぷちコンに提出したゲームをリリースする。
  • オリジナルキャラのモデルを作成する。
  • UE4Blender の記事を12本書く。

自作ゲームの体験版を公開する。

今年、体験版はおろかゲームと呼べるものを作ることが出来なかったので、来年こそプレイ可能なものにするぞという意気込み。 3D アクションゲームを作ります。

ぷちコンに提出したゲームをリリースする。

リリースといってもそこまで大きなものではなく、パッケージングしてダウンロード可能な状態まで持っていくという感じです。 そこまでやって、ようやくゲーム作りの1サイクルな気がしているので。

オリジナルキャラのモデルを作成する。

今も少しずつ作っていますが、まだまだなので作り直したり修正したりしています。 まだまだ変わると思いますが。 とりあえず来年にはある程度完成させたい。

UE4Blender の記事を12本書く。

今年は12本達成できなかったので、来年も同じ目標をば。 あまり気張らず、ちょっと学んだことでも記事にしていこうと思う。

最後に

今年は、Blender のスカルプトの勉強会やUnreal Fest. にも参加できてよかったです。 自分の人生の中でのゲームの割合をもっと増やしたいと強く思ったので 自主制作の時間を今よりもずっと増やしたいなと思っています。 自分はインプットもアウトプットも少ないので、より頑張らねば。

来年は上記の目標に向かって進んでいこうと思います。

Blender で Rigify を使ってリグ付け、アニメーションを作った(+ UE4 にインポート)

Blender の Rigify を使ってみたかったので、そのメモ。 おまけでアニメーション付けて UE4 に持っていってみた。

Rigify の使い方は dskjal さんのブログに従った。すごくわかりやすい。 dskjal.com

version

Blender: 2.79

リグの生成

オブジェクトモードで、Shift + A を押し、アーマチュアを選択し、Human (Meta-Rig) を選択すると metarig が作成されます。

f:id:masahiro8080:20171202153647p:plain:w300

metarig を選択し、編集モードで作成しているモデルに metarig を合わせていきます。 T キーを押し、オプションから X 軸ミラーを押しておくと左右対称でボーンを編集できます。

顔のボーンを使うつもりがない場合は、ポーズモードで face ボーンを選択し、Rigify Type の Rig type:: を削除しておきます。

f:id:masahiro8080:20171202155028p:plain:w300

metarig の調整が終わったら、オブジェクトモードでプロパティのデータにある Rigify Buttons から Generate Rig を押し、リグを生成します。

f:id:masahiro8080:20171202155555p:plain:w300

生成されたリグ。

f:id:masahiro8080:20171202155701p:plain:w300

リグとメッシュの親子づけ

リグと親子づけするメッシュを選択してから、リグを選択し、Ctrl + P でアーマチュア変形から自動のウエイトでを選択すると親子づけされます。自動でウエイト付けされますが、調整が必要だと思うので、そこは手作業でウエイトをつける。

IK と FK

N キーを押し、Rig Layers でコントローラーの表示・非表示ができます。

f:id:masahiro8080:20171202160334p:plain:w300

ポーズモードで hand_ik.L 等の IK を選択し、N キーで表示されるプロパティシェルフから Rig Main Properties で IK/FK の編集をします。 IK_FK を 0 にし IK を有効にします。また、IK_Stretch を 0 にしておきます。0 でないとメッシュが伸びます。

f:id:masahiro8080:20171202161655p:plain:w300

forearm_ik.L 等の FK の場合は IK_FK を 1 にすると FK が有効になります。

あとはポーズモードでポーズを付けたり、アクションを付けたりします。

アニメーション

せっかくなので歩行モーションを作った。

f:id:masahiro8080:20171202161537g:plain:w300

おまけ

Blender からエクスポートし、UE4 にインポートしてみた。

f:id:masahiro8080:20171202161832p:plain:w300

UE4 でインポートするときは、Import animations にチェックを入れておく。

Hit Stopの実装の仕方

自分用にメモ。

Version

Unreal Engine 4.16.3

Sample

U-MA/HitStopSample · GitHub

Content

Hit stopの検証用にプロジェクトを作成。今回はTwin Stick Shooterを選択。

f:id:masahiro8080:20170805130733p:plain

敵となるEnemyPawnを作成。 1M_CubeとBox Collisionを設定した簡素なものです。

f:id:masahiro8080:20170805130750p:plain

ブループリントはこんな感じ。

f:id:masahiro8080:20170805130805p:plain

Hit Stopを実装するには次のような感じにします。
1. setCustomTimeDilationを0にする
2. 一定時間後にsetCustomTimeDilationを1にする

THit Stopがわかりやすい?ようにTickでEnemyPawnを一定の速度で回転させています。

動作は次のような感じ。

youtu.be

エフェクト等がないので、弾が当たると回転がただ止まってるように見えるけど 簡単なHit Stop実装はこんな感じです。

仮で目を作る時のメモ

最近、Autodesk Maya キャラクターモデリング造形力矯正バイブルをやってます。
Mayaの本だけど作り方は参考になると思って読みつつモデリングをしてます。

www.borndigital.co.jp

その中で仮の、眼球のシェーダを作る工程があって
blenderではどうすればできるだろうと思ったのでマテリアルノードの練習にと思ってやってみた。

blender versionは2.78b、Blenderレンダーでやってます。

マテリアルノードは次のような感じ。

f:id:masahiro8080:20170518162532p:plain

ジオメトリノードの生成(英語だとOrco。Original Coordinateの略かな?)から
メッシュの座標を取得して、RGB分離でZ座標の値をカラーランプの係数として使う。
カラーランプのカラーと他のマテリアルのスペキュラーをミックスして出力した。
このマテリアルを目に割り当ててみると次のように見える。

f:id:masahiro8080:20170518161938p:plain

正直なところ、ジオメトリノードの生成が何を返しているのかはよくわかってない。
ドキュメントを見ると

Using the Original Coordinates of the mesh.

と書いてあったのだけれど、よくわからなかった。

Geometry Node — Blender Manual

この辺りもちゃんと勉強しないとなぁ。

Level Designer Quick Startをやった。

ちゃんとUE4を1から学び直さないといけないなぁと思ってラーニングをやってる。

f:id:masahiro8080:20170421234431p:plain

Level Designer Quick Start

docs.unrealengine.com

ちっちゃな部屋を作りながら操作の仕方やアセットの配置の仕方、マテリアルの設定の仕方を学べる。
ここでちゃんと知ったことはLightmass Importance Volumeの意味とDirectional Lightで太陽を動かせること。

Lightmass Importance Volume

docs.unrealengine.com

Lightmass Importance Volumeについてはここでざっくりと学んだ。
これを設定することで必要な部分だけ品質の高いライティングをすることができる。 また、これを設定することでこの設定範囲内だけ詳細にライティングを計算すれば良いのでビルドが早くなるはず。

Directional Light

f:id:masahiro8080:20170421234314p:plain

平行光源。Atmosphere Sun Lightにチェックを入れ、Directional Lightを回転させることで 太陽を動かすことができる。太陽を動かすことで夜明けや夕焼け、夜を表現できる。
Atmosphere Fog(じゃなくていいかもだけど)で全体を明るくしておかないと太陽見れないので注意。

所感

この辺りの話は極め本でやったようなきがするのだけど、全く忘れてた。 やっぱりちゃんと毎日UE4に触れて作業をすることが大事だなと改めて思った。