過去の3Dモデルに関する勉強内容

● 解像度が高くなってきたツクールで今後キャラクターを動かしていくにあたって、労力を考えると3Dモデルの採用が避けられなくなってきたことから、そのために勉強している内容をまとめていくものです。
● あくまで自分の思考整理や、後で自分が見返すための個人的メモなので、自分がわかるようにしか書いてません。特に専門用語は自分で勝手に名前を付けている場合があります。ご注意ください。
● ここで書いたやり方を使われる方がいらっしゃいましたら、ご自由にお使いください。むしろどんどん使って素材を作ってください。ただし、ここに記載した内容に伴い何らかの損害等が生じた場合でも、責任は負いかねます。

(各手順の前提となるソフトのバージョン)
○ MagicaVoxel:0.99.6.3
○ Blender:3.3


【解決すべき問題】
● ツクールMZになってキャラグラの規格が48×48ドットになり、気軽に作れなくなった。2000の顔グラと同じ規格なので、個人的には既に「イラスト」の領域に入っている。
● この規格でキャラグラのドットを打つことはできなくはないが、曲線部分や陰影をつけるための色付けの負担が著しく大きくなるため、2000の規格に比べて必要な労力が多すぎる。
● 特に自分が好きな「キャラに色々ポーズを取らせ、わちゃわちゃするようなシーン」を作ろうとすると、キャラグラを作成するだけで時間と労力がかかりすぎる。その単純な素材作成作業は個人的に面白くないので、モチベーションが下がってしまう。
→ そのため、複数のポーズを取らせたキャラグラを作るにあたって「労力対効果が良い方法」を確立する必要がある。


【問題解決のやり方】
【基本的な考え方】
 3Dモデルのキャラを作りポーズを取らせるようにすることで、トータルの作業量を下げる。

【勉強する内容】
 3Dモデルキャラの作り方

【どんな勉強をするか】
● Blenderを使い始めからフルで3Dモデルを作る
 ○ 解像度の高い3Dモデルを作れる。
 ○ モデリング技術・センス・尺度をゼロから積み上げる必要がある。
 → 「最後の手段」に取っておく。

● MagicaVoxelで作ったボクセルキャラを3Dモデルにする
 ○ 2000規格のキャラグラ作成は技術や尺度の積み上げがあるので、ドット打ちの延長としてボクセルキャラは作りやすい。
 ○ 最終的な解像度は低くなると思われるので、必要な解像度にするにはどのようにすればよいかも検討が必要である。
 (「初めのボクセルキャラの解像度を上げて作る」「Blenderにインポート後何らかの処理をする」など)
 → 「基本的な方針」として採用


【確立する必要があるもの】
● ボクセルキャラの作り方・規格
● ボクセルキャラを3Dモデルキャラに変換する方法(2022.10.4)
 ○ 「ply形式」でエクスポート
 ○ 「頭」は別パーツ化
 ○ 「コートなどのたなびく部分」は別パーツ化

 ※ 以下のどれが最適か比較検討
 ○ obj形式でエクスポートした場合
  ・ オブジェクトを一体化
  ・ 手・足などをパーツ化
 ○ ply形式でエクスポートした場合
  ・ オブジェクトを一体化
  ・ 手・足などをパーツ化

● キャラグラとして違和感がない解像度にするための処理
 ○ 元のボクセルキャラ作成時に必要な解像度
  → 48×64
   これで作ったキャラに「頂点をスムーズに」と「スムーズシェード」の処理を行う。

 ○ 3Dモデルキャラの加工の仕方
  ・ サブディビジョンサーフェスによる方法
  ・ スムーズシェードによる方法
  ・ 「頂点をスムーズに」による方法


【「ply形式」の採用について】(2022.10.4)
● これまで使用感に慣れるため、作業を再開する度にモデルにアーマチュアを埋め込み、ウェイトを調整してきたが、「obj形式」の「ウェイトの微調整」にかかる時間は変わらず、手間がかかるままであった。
● また、これまでの結果からみて、obj形式とply形式の外観は明確な有利・不利がつかないことから、手間が少ない「ply形式」を採用する。


【Blender3.3の使い方メモ】
● オブジェクトを移動させるとき、座標軸にくっつくように移動してしまう場合の対処法
  画面上側中央にある「U字磁石」の形をしたアイコンをクリックすると、軸にくっつく機能が解除される。




【ボクセルキャラの作り方・規格】
● 現時点の規格
  横48×縦64(2000キャラ規格の2倍)
  横24×縦32(2000のキャラグラの規格)

<参考データ>
● MagicaVoxel用256色カラーパレット

※ 拡大表示しているだけであり、本来は縦幅1ドットの画像

● 作り方
 ○ 基準体(横24×縦32)の作り方
  ・作業をやりやすくするための準備をする。これは別にやらなくてもよい。
  ・ MagicaVoxelで横24×縦32(奥行きは何でもよい)の空間を作る。
  ・ 正面図を書き込む。この時、腕は横に伸ばしておく。
   ◇ 陰影による色の違いは、3Dモデル化後は不要となるので、光沢・影の部分は全てベースの色1色で作成する。
    (髪の筋など、強調したい場合は塗ることもあると思う。)
   ◇ 輪郭の部分は、後で色を塗るか削除するので、わかりやすいように目立つ色で塗るとわかりやすい。
  ・ 側面図も同様に作成する。
<正面図(2000素材のトレースです。)>

<側面図>


  ・ ワールドで側面図を90度回転させ、原点上で重ねる。この際、1ドットずつずらしておくと、後で作業空間を選択しやすくなる。
<重ねた状態>


  ・ 作業を開始する。正面図・側面図を見ながら積み上げていく。
  ・ ここは地道にやるしかない。キャラグラには背面もあるので、それも見ながら作っていく。見えないところは想像で頑張る。
  ・ なお、バランスを考慮して微調整する。完全に同じにならないこともある。
<作業途中の状態>

<靴・つま先が違う>

<首を1ボクセル長くしているので、目の高さも違う>


  ・ 作成する際、「たなびくもの」でハチマキのように小さいものは、本体にくっつかないよう法線方向に立てておく。
<ハチマキを立てて作成>


<作成したボクセルキャラ>



 ○ パーツに分割
  ・ ワールドにおいてコピペし、2つに増やす。
   (コピペすると重なった状態でペーストされるので、見た目には増えたかどうかわからない。移動させるとコピーされていることがわかる。)
  ・ それぞれ余計なボクセルを消し、パーツ化する。
  ・ 削る際は、ワールドで重ねれば過不足をチェックできる。
  ・ 以上を必要な数のパーツがそろうまで繰り返す。

<元のボクセルキャラ>

<増やした状態>

<パーツ化した状態>

<頭・体・コート下にパーツ化>

<体とコート下を重ねてチェック中>


● ボクセルキャラの2倍化
 ○ MagicaVoxelでオブジェクトを編集中、右側にある「▼Tool」の「2X」を選択すると2倍の大きさになる。
 ○ 単純に各ボクセルが2×2になっているので、段差のある部分にボクセルを追加して滑らかにする。この時、目立つ色のボクセルを追加すると、作業し忘れた場所がないか確認しやすい。
 ○ 追加により滑らかにし終わったら、追加したボクセルに色を塗る。
 ○ その後、不要なボクセルを消去して形を整える。
 ○ 微調整。解像度が増えているので、目の形を変えるなどもできる。

<追加・削除前の状態>

<段差に追加中の場面>

<追加終わり>

<追加したボクセルに着色>

<不要なボクセルを消去中の場面>

<目の形を調整>

<完成:2倍化されたパーツ>

<重ねた状態>

※ この解像度になると、見栄えの良い曲線・球面を作るには若干センスがいる。
(顔の輪郭や頭などは、回数をこなして最適な形をパターン化しておく必要がある。)

<別のモデル>


● エクスポート
 ○ ワールドの原点に各オブジェクトを重ねて配置する。
 ○ 画面右下の「>Exprot」を選び、表示されたファイル形式から「ply」を選択する。
 ○ 全てのオブジェクトが一括でエクスポートされ、保存先には「元のファイル名-0.ply」「元のファイル名-1.ply」「元のファイル名-2.ply」…といった形で保存される。


【ボクセルキャラを3Dモデルキャラに変換する方法】
【obj形式でエクスポートした場合】
● インポート及び色を付けた表示への変更
 ○ 「ファイル」−「インポート」でインポート
 ○ 右上にある「○が4つ並んだアイコン」のうち、右から2つめの「3Dビューのシェーディング:マテリアルプレビュー」を選択
<インポート直後>


● ポリゴンの一体化
 ○ インポート直後はそれぞれのポリゴンが独立して存在していることから、これをまとめて1つのオブジェクトにする。
 ○ オブジェクトを選択し、左上のモード切替プルダウンメニューで「編集モード」に変更
 ○ 頂点が全て選択された状態にし、左上メニューの「メッシュ」−「クリーンアップ」−「距離でマージ」
  ※ 選択を解除してしまった場合は、「A」キーで全選択できる。範囲指定で選択すると、裏側の頂点が選択できないので注意。
  ※ 左下にマージする距離を調整できる場所(「>距離でマージ」のウィンドウ)があるが、数値はデフォルトの0.0001mでよい。

<1つのオブジェクトにした後の頂点の状態>


※ 1つのオブジェクトにまとめない場合、後で「頂点をスムーズに」等の処理ができなくなるので、必ずやっておく。これはobj形式でもply形式でも同じ。
<やらない場合の例:「頂点をスムーズに」の処理の結果(obj形式)>

<やらない場合の例:「頂点をスムーズに」の処理の結果(ply形式)>


● ボーンの設定
 ○ オブジェクトを選択し、左上のモード切替プルダウンメニューで「オブジェクトモード」に変更
 ○ 左上メニューの「追加」−「アーマチュア」を選択する
 ○ 追加されたアーマチュアはオブジェクトに隠れてしまうため、最前面に表示するように設定を変える。
  ・ 画面右の縦並びアイコンのうち、「オブジェクトデータプロパティ」アイコン(緑色の人型アイコン)を選択する。
  ・ 「ビューポート表示」内に「最前面」のチェックがあるので、これにチェックを入れる。
 ○ アーマチュアを編集・追加する。
  ・ アーマチュアを選択し、左上のモード切替プルダウンメニューで「編集モード」に変更(これを切り替えないとオブジェクトが一緒に移動したり拡大縮小されたりする。)
  ・ 移動・拡大縮小して設置する。アーマチュアの端末から新たなアーマチュアを生やしたい場合は、端末の丸部分を選択したのち、左上メニューの「アーマチュア」−「押し出し」を選択すると新たなアーマチュアが生える。
    (メニューから選ぶとマウスとの位置関係がズレるので、選択した状態で「E」キーを押すとやりやすい。)
<アーマチュアの埋め込み>


※ 左右対称なアーマチュアを作りたい場合
 ○ 対象にしたいアーマチュアの名前の末尾に「.L」を付ける。
  ・ 画面右上の「シーンコレクション」のツリーのうち、「アーマチュア」を開いていき、対象とするアーマチュアを選択する。(「Bone.001」等の名前がついている)
  ・ 画面右の縦並びアイコンのうち、「ボーンプロパティ」アイコン(緑色の骨型アイコン)を選択する。
  ・ 名前欄を選択し、最後に「.L」をつける。(アーマチュアを右側に生やしていたら「.R」)
  ・ 一通り設定したならば、左上のモード切替プルダウンメニューで「編集モード」に変更
  ・ 名前を変えたアーマチュアを選択し、左上メニューの「アーマチュア」−「対称化」を選択すると、反対側に追加される。(全部一緒でも可能なので、全選択してから行うと早い)

※ アーマチュアを追加した時のデフォルト名は「Born.001」だが、これは逐次変えておいた方がよい。追加する度に番号が増えていくが、全てのアーマチュアを追加する前に対称化の処理をすると名前が「Bone.001.L」〜に変わるため、新規に追加するとまた「Bone.001」の名前が付けられる。この際、新たに追加した「Bone.001」も対称化しようとして「.L」をつけようとすると、先にあった方と同じ名前になるので入力が修正されてしまう。

● オブジェクトとアーマチュアの親子関係の設定(ペアレントの設定)
 ○ オブジェクトがアーマチュアの動きに合わせて動くように、それぞれを関連付ける。
 ○ 左上のモード切替プルダウンメニューで「オブジェクトモード」に変更
 ○ 「オブジェクト」を選択し、次に「Shift」キーを押しながら「アーマチュア」を選択する。(順番に意味があるので、この順番でやる。)
 ○ 左上メニューの「オブジェクト」−「ペアレント」−「自動のウェイトで」を選択する

● 動かして検証
 ○ 何の調整もせずに動かした場合は以下のとおり。

<基準のポーズ>

<腕を基準から前に回す>

<腕を基準から下ろす>


→ 腕の動きに足が引っ張られているので、調整が必要

● 連動して動く部分の調整(ウェイトの調整)
 ○ 左上のモード切替プルダウンメニューで「オブジェクトモード」に変更
 ○ 「アーマチュア」を選択し、次に「Shift」キーを押しながら「オブジェクト」を選択する。(親子関係の設定の時と順番が逆となる。)
 ○ この状態になると左上のモード切替プルダウンメニューで「ウェイトペイント」を選択できるので、これに切り替える。
 ○ 「Ctrl」キーを押しながらアーマチュアを選択すると、そのアーマチュアを動かしたときに連動して動く部分が赤〜青の色で表示される。
  ・ 「赤」が完全に連動して動く部分。左上の「ウェイト」の数値は1.000が該当
  ・ 「青」がまったく連動しない部分。左上の「ウェイト」の数値は0.000が該当
  ・ 途中のつながっている部分は、「ウェイト」の設定値に応じて伸び縮みする。
 ○ 今回の例の場合は、「股」の部分と、「内側の一部」が連動するよう設定されたため、腕の動きに足が引っ張られていた。

<「自動のウェイトで」のままの外観>

<股の部分と内側の部分の設定状況>



 ○ 左上の「ウェイト」の数値を設定したのち、マウス色を塗るように撫でれば設定できる。
 ○ 対称にあるアーマチュアの色も同じに塗りたい場合は、「ミラー」操作の設定をして色を塗ればよい。
  ・ 中央の3Dビューと画面右上の「ツリー」の間の辺にある「<」を選択して「サイドバー」を表示する。「N」キーでもよい。
    (なお、閉じるボタンは見当たらないので、「N」キーを押して閉じるしかない?)
  ・ 「ツール」タブ中、「対称」−「ミラー」を選択する。通常はX軸だが、キャラの向きによってはY軸を選択する。
  ・ この状態で片方のアーマチュアのウェイトを調整すると、反対側も同じ調整がされる。ただし。キャラの形が左右非対称の場合は個別に調整する必要がある。
 ○ 色塗りの時、一筆の間にポリゴンの「頂点」と「頂点」が含まれた場合に色が変わるため、頂点と頂点の間だけ塗っていても何も変化がないので注意が必要である。
 → ポリゴンが少ないと微調整が難しくなる。特にボクセルをは平面となる部分が多いので、obj形式の場合は大きなポリゴンが割り当てられる場所が生じてしまう。すなわち、obj形式で微調整したい場合は、別途処置が必要となる
 ※ 「内側」にウェイトが設定されたのは、今回使用しているモデルがボクセルで作られたため、内側に積みあがったボクセルがあることによるもの。このため、ボクセルキャラをインポートしたならば、ウェイト設定時に内側も確実にチェックする必要がある

● ウェイト調整後の状況確認
  調整した後のポーズ状況は以下のとおり。
<腕を前・上に動かした状態>

大きな歪みはみられない。
<ちょっとしたポーズを取らせた状態>

大きな歪みはみられない。
<コートの張り付き状況>

コートは足と一体化しているので、足に張り付いて移動してしまっている。
コート自体を別オブジェクト化して連結する処理をするか、カメラアングルでごまかすかの処置が必要である。


● レンダリングと画像データの保存
 ○ 背景を透明化(アルファチャンネル化)する。
  ・ 画面右の縦並びアイコンのうち、「レンダープロパティ」アイコン(上から2番目のアイコン)を選択する。
  ・ 「フィルム」の中の「透過」にチェックを入れる
 ○ メニューバーの「レンダー」−「画像をレンダリング」でカメラから取った画像がレンダリングされる
 ○ レンダーウィンドウのメニューバーにある「画像」に「名前を付けて保存」から保存する。

<保存したピクチャ>

これをドットで打とうとすると影や斜めの部分が大変なので、結構いい感じ。

● ツクールに取りこむ
 ○ 取りこんだ結果はこんな感じ。

 ○ 色合いは整合を図るために調整が必要
 ○ 解像度は悪くない感じがするが、腕が四角になっているのがやや目立つ。ただしドット絵キャラで統一すれば目立たない可能性あり。
 ○ Blenderでの設定はあまり時間がかからず比較的簡単である。「Blenderの使い方・機能の場所」を調べるのに圧倒的に時間がかかったが、一度わかってしまえば設定は難しくはなく、比較的簡単に設定できる。使えそう。


【ply形式でエクスポートした場合】
● インポート及び色を付けた表示への変更
 ○ 「ファイル」−「インポート」でインポート
 ※ 次がobj形式の場合と違う。
 ○ MagicaVoxelで作ったボクセルモデルをply形式でエクスポートした場合、色情報は「頂点カラー」と呼ばれる形で保存される。これをBlenderにインポートした場合、設定を変更しないと色がついた状態で表示できない
  ・ 右上にある「○が4つ並んだアイコン」のうち、右から3つめの「3Dビューのシェーディング:ソリッドモード」を選択
  ・ 右上にある「○が4つ並んだアイコン」の右端にある「v」を選択してオプションを開き、「カラー」の「属性」を選択
<インポートして色を付けた後>


● ポリゴンの一体化
  obj形式に同じ。

<1つのオブジェクトにした後の頂点の状態>

ボクセル単位で頂点が作られるため、大きな面でも複数の頂点がある。

● ボーンの設定
  obj形式に同じ。


● 動かして検証
 ○ 何の調整もせずに動かした場合は以下のとおり。

<基準のポーズ>

<腕を基準から前に回す>

<腕を基準から下ろす>


→ objと同じく若干引っ張られるところがあるので、調整が必要である。(若干歪みが少ないか)

● 連動して動く部分の調整(ウェイトの調整)
  obj形式に同じ。

<「自動のウェイトで」のままの外観>

<股の部分と内側の部分の設定状況>


歪みの場所は異なるが、ファイル形式の違いが作業負荷の違いにつながる要素は見られない。
ただし、頂点の密度が高く、かつ、正方形で分布しているので、「色塗り」での微調整はobj形式の方がやりやすい。

● ウェイト調整後の状況確認
  調整した後のポーズ状況は以下のとおり。

<ちょっとしたポーズを取らせた状態>

<コートの張り付き状況>

元が変わっていないので、やはりコートは足に張り付く。

● レンダリングと画像データの保存
 ○ 背景を透明化(アルファチャンネル化)する。
   obj形式と同じ
 ※ 次がobj形式と異なる。
 ○ このままレンダリングすると、表面がグレーの状態で描画されてしまう。


 ○ MagicaVoxelからply形式にエクスポートしたため、色情報が「頂点カラー」となっている。これをレンダリングした際に色を付けて表示するには、次の設定が必要である。
  ・ 右上の「3Dビューのシェーディング」を一番右の「レンダープレビューを表示」にする。
  ・ オブジェクトを選択(アーマチュアは選択しないので、全選択ではダメ。オブジェクトだけを選ぶ)
  ・ 画面右の縦並びアイコンのうち「オブジェクトデータプロパティ」アイコン(オブジェクトを選択した状態では「緑色の逆三角形」のアイコン)を選択する。
  ・ 「オブジェクトデータプロパティ」内の「カラー属性」を開き、そこに表示されている名前を記録する。
    例:Col
  ・ 画面右の縦並びアイコンのうち「マテリアルプロパティ」アイコン(「オレンジ色の○」のアイコン)を選択し、「新規」を選択する。
  ・ 「サーフェス」を開き、「ベースカラー」の左にある黄色い●を選択してウィンドウを表示する。
  ・ 表示されたウィンドウの左側の「入力」欄にある「属性」を選択する。
  ・ 「ベースカラー」の下に名前を入力する欄が表示されるので、そこに先ほど「カラー属性」で記録した名前を入力する。

 ○ 色を付けてレンダリングした結果は以下のとおり。

見た目はobj形式と違いはない。

● 評 価
 ○ 最終的な見た目はobj形式と違いはない。
 ○ 色を付けて表示するために若干の設定変更が必要である。
 ○ 動きを調整する際のウェイトの色塗りにおいて、ply形式の方が頂点の密度が濃いため、作業がやりやすい。



【解像度を上げる方法】
【比較する内容】
● Blenderによる方法
 ○ 「サブディビジョンサーフェス」による方法
 ○ 「スムーズシェード」による方法
 ○ 「頂点をスムーズに」による方法
● 元のボクセルキャラの解像度を上げる方法

【Blender:「サブディビジョンサーフェス」による方法】
● インポート及び頂点のマージ
  これまでと同じ。

<頂点マージ後のオブジェクト>


● サブディビジョンサーフェスを適用
 ○ 頂点の位置を変えず、描画する見た目だけなめらかにする処理である。
 ○ レンダリングするときに面がなめらかになっていると仮定して計算する。
 ○ 「オブジェクトモード」で対象となるオブジェクトを選択する。
 ○ 画面右の縦並びアイコンのうち「モディフィアープロパティ」アイコン(「青いスパナ」のアイコン)を選択し、「モディファイア―を追加」を選択してウィンドウを表示する。
 ○ 表示されたウィンドウの「生成」中、「サブディビジョンサーフェス」を選択する。

<処理後の外観>


● obj形式とply形式の比較
obj形式ply形式
基本姿勢
ポーズ
処理なし

● 評 価
 ○ ojb形式の方が丸っこくなる。腕が明らかに違う。
 (ポリゴンの頂点の配置の違いによるものと思われる。)
 ○ レンダリング後の質感は、同じ条件にもかかわらずobj形式の方が乾いた感じになる。(紙粘土細工みたいな感じ。)
 ○ 頭が「ボクセルによる球形」であるため、中途半端にスムーズ化されて気持ち悪い感じがする。
 ○ 現状では、むしろ処理しない方が「明らかなボクセルキャラ」としてなじみやすい気がする

● ツクールに取りこむ。
  取りこんだ結果はこんな感じ。なお、ツクール2000の画面と同じようにするため、キャラの規格は「64×96」にしてある。

<ツクール画面>

縮小後は処理した方は髪の気持ち悪い感じが少なくなるが、ぼつぼつした感じが違和感として残る。
というか、若干の違いがあるものの、ここまで縮小すると未処理のものと顕著な違いが見当たらない。


【Blender:「スムーズシェード」による方法】
● インポート及び頂点のマージ
  これまでと同じ。

● スムーズシェードを適用
 ○ サブディビジョンサーフェスと同じで頂点の位置を変えず、描画する見た目だけなめらかにする処理である。
 ○ 光の反射方向が角で変わるとき、その変化量を一気に変えるのではなく、徐々に変えるようにして見た目をなめらかにする。
 ○ 「オブジェクトモード」で対象となるオブジェクトを選択する。
 ○ 左上にあるメニューから「オブジェクト」−「スムーズシェート」を選択する。

<処理後の外観>
obj形式ply形式
処理なし
処理あり
処理あり

サブディビジョン
サーフェス処理
処理あり
光源位置
変更

● 評 価
 ○ いずれの形式も丸くなる場所と丸くならない場所が発生する。
  ・ いずれの形式も、背景や遠近で生じる境界線の部分には効果がない。
  ・ obj形式では腕が丸くなっているが、コートの襟や裾は四角いままであり不統一感がある。
  ・ 頭の気持ち悪い感じは変化がない。
  ・ ply形式では境界線の部分を除いて丸まり具合が概ね一定である。
  ・ ply形式の方は光沢が出る。
 ○ サブディビジョンサーフェス処理と同時に使用した場合、サブディビジョンサーフェスの効果の方が強いように思える。同時使用の利点はこれといって見られない。

 → 「スムーズシェード」による処理は、ボクセルキャラの解像度を上げる方法として現時点で採用する理由は見られない。

● 参 考
 ○ ボクセルキャラの構造上、「髪と服がくっついている」ので、下を向いたときに服が髪に引っ張られる。(または、髪が服にくっついたまま伸びる。)
首を曲げた状態首を曲げていない状態
 ○ このため、「頭は別のパーツ」とした方がよいと考えられる。
 ○ 頭を別パーツ化することで、顔だけ書き換えたバージョンを用意することが比較的簡単になる利点もある。
 ○ なお、手足はこれまでの結果からみて十分動かせるため、別のパーツにはしなくても問題ないと考えられる。


【Blender:「頂点をスムーズに」による方法】
● インポート及び頂点のマージ
  これまでと同じ。

● 「頂点をスムーズに」を適用
 ○ ポリゴンの頂点の位置そのものを調整して表面を滑らかにする処理である。
 ○ オブジェクトを選択したのち、「編集モード」に変更する。
 ○ 頂点をすべて選択する。(「A」キーで全選択できる。)
 ○ 左上メニューの「頂点」−「頂点をスムーズに」を選択する。
 ○ 左下に数値設定ウィンドウがあるので、この数値を変化させる。いずれも数値が大きい方が変化量が多い。

obj形式 ply形式
デフォルト
数値: 0.25
リピート: 1
数値: 0.25
リピート: 2
数値: 0.25
リピート: 3
数値: 0.50
リピート: 1
数値: 0.50
リピート: 2
数値: 0.50
リピート: 3
数値: 0.75
リピート: 1

● 評 価
 ○ obj形式は全体形状・細部形状ともに、歪み崩れていく。
 ○ ply形式は全体形状の歪みは少なく、徐々に丸みを帯びていくが、頭の違和感が消える前に体の凹凸がなくなってしまう。

 → 「頂点をスムーズに」による処理は、ボクセルキャラの解像度を上げる方法として現時点で採用する理由は見られない。


【元のボクセルキャラの解像度を上げる方法】
● インポート及び頂点のマージ
 ○ パーツごとにインポートし、頂点をマージする。
 ○ 原点からずれている場合は、原点に合わせる。そうしないと、ウェイトペイント作業の時、「ミラー」を使っても適用されない。
   (「ミラー」はあくまで座標軸を中心に対象の操作となる。オブジェクトの中心ではない。)

● 各パーツへのボーンの埋め込み
 ○ これまでと同様にアーマチュアを埋め込む。
 ○ 先に配置したアーマチュアとは「くっつかない別のアーマチュア」を追加する場合は次のとおり。
  ・ 先に配置したアーマチュアを選択し「編集モード」にする。
  ・ 何も選択していない状態で、左上メニューの「追加」−「単一ボーン」を選択する。
 ○ パーツごとにアーマチュアとオブジェクトの親子関係を設定する。(前の処理と同じ)
 ○ パーツごとにウェイトを設定する。(前の処理と同じ)

<パーツ「コート下」へのアーマチュアの埋め込み>

<パーツごとのウェイト調整>


● パーツ同士の親子関係の設定
 ○ いまのままではパーツごとがバラバラに存在しており、体の座標を動かしても他のパーツは元の座標のまま動かないので、連動して動くように親子関係を設定する。
 ○ 基本的な考え方として、「体」の「特定のボーン」を「親」にして、「頭」「コート下」の「アーマチュア」(ボーンの集合体)を子供にする。
   (そうしないと、体のボーンが動いたときに連動して動かない。)
 ○ 「オブジェクトモード」にする。
 ○ 子の「アーマチュア」を選択する。
 ○ シフトを押しながら親の「アーマチュア」を選択する。
 ○ 「ポーズモード」にする。
 ○ シフトを押しながら「親にしたい特定のボーン」を選択する。
 ○ 左上メニューの「ポーズ」−「ペアレント」−「ボーン」を選択する。
 ○ 各パーツごと繰り返す。
 ○ 「オブジェクトモード」にする。
 ○ 子供である「頭」の「アーマチュア」を選択する。(オブジェクトの方ではない。)
 ○ Shiftを押しながら、親である「体」の「アーマチュア」を選択する。(オブジェクトの方ではない。)
 ○ 左上メニューの「オブジェクト」−「ペアレント」−「オブジェクト」を選択する。
 ○ 「コート下」についても同様の操作を行い「体」を親に設定する。


<2倍キャラのレンダリング結果>

<「スムースシェード」の適用>

<「頂点をスムーズに(0.5,1)」の適用>

<両方を適用>

※ この解像度になると「明らかなボクセルキャラ」とは若干異なった感じになる。
 そのためか、「スムーズシェード」処理を加えた方が、やや自然な感じになる。
(顔の輪郭の作り方はもっといい形があると思うので、今後確立する必要がある。)

<ツクールに取りこんだ結果>

※ この解像度だと、デフォルトは違和感が出る。
「スムーズシェード」処理を加えたものは自然な感じになる。
「頂点をスムーズに」処理を加えたものは、デフォルトに比べて光沢がない分、若干角ばって感じる。
両方適用したものが一番良い。

● 評 価
  現状では、元のボクセルキャラの解像度を2倍にし、「頂点をスムーズに」「スムーズシェード」の処理を加えたものが最も良い。

<参考> 今のパーツの作り方では、頭を上に向けたときに「首が開く」ので、何らかの処置が必要である。
 (ボーンの追加・ウェイトの調整等?)
○ 頭のパーツについては、首の根本が動かないようにするため、根本に1ボクセル分のボーンを埋め込み、これを起点として他のボーンをつないでいく。

○ 頭のパーツについては、首の根本が動かないようにするため、全てのボーンにおいて首の根本のウェイトが0になっているかどうかをチェックする必要がある。
<何も処置しない状態>

<根本が動かない状態>



【最終的にはこんな感じ】
<ヒーロー着地と翻るコート>



戻る