パーツをカーブ状にぴったり複製する方法(素材制作メモ)
| 固定リンク
clip studio paintでは今のバージョンではlwsファイルを正常に読み込めなかったりする事があるので、私が作った一部の3D素材については、少しずつクリスタで使える形式に変換しています。
私自身は3D素材はコミスタで使っているのですが、クリスタを使う方も増えてきたという事で、時間のある時に少しずつ変換しています。
で、その変換にはclip studio cordinateを使うのですが、このソフトでlwsファイルを読み込んだ時に、一部のパーツが変な位置に移動している事があるよう。
修正が結構面倒くさい。
変な位置に飛んでしまったパーツを適切な位置に戻すやり方はマニピュレーターを使うのですが、このcordinateを初めて使うと「マニピュレーターが表示されているのにパーツを動かせない。なんで?」と焦る人が結構いると思います。
私もマニュアルをきちんと見てない段階で適当に操作してやろうとしたら、マニピュレーターの矢印をいくら触っても全然パーツが動かなくて焦りました。
パーツの動かし方にはこのソフト独特の作法があって、clip stuio cordinateのマニュアルをきちんと見てないとまず無理です。
他の3DCGソフトみたいに「マニュアル読まなくてもなんとなくで動かせる」にはなってないので注意を。
あと、昔のバージョンのclip studio paintを使っていると、その位置の修正をしたはずのパーツがまた変な位置に戻っているという事があるようです。
最新のバージョンだと大丈夫っぽいですが、少し前のクリスタだと、素材作者側でパーツの位置を修正して素材をアップしたはずなのに、使う側で素材を読み込むと、パーツの位置が変なとこに戻ってしまってたり。
| 固定リンク
パイプ状の形状の断面方向の分割数と、コミスタEXで3DLTレンダリングした場合の結果の比較画像です。
基本的に線の検出精度は100でレンダリングしています。
断面方向の分割数が4の場合。
断面方向の分割数を16にした場合。
まだところどころに目立つ線が出ます。
断面方向の分割数を20にした場合。
輪郭近くに線がかすかに残ってるものの、だいぶ目立たなくなりました。
断面方向の分割数を32にした場合。
20の時より改善されているものの、さほど差は無い感じです。それでいてポリゴン数は1.6倍に。
不正な線は後で修正すればいいのですが、あまり修正の手間をかけないよう、3DLT時に不正な線ができるだけ出ないようにしつつ、ポリゴン数を増やしすぎないようにするには、こういうパイプ状の形状は断面の分割数は20くらいにした方がいいみたいです。
ちなみに断面の分割数が16で線の検出精度を30まで落とした場合。
まだ線が残ってますね。
しかも線の検出精度を下げてしまうと、他のオブジェクトで本来線がきちんと出て欲しいところで、線が出ない場合があります。
| 固定リンク
現在のコミックスタジオ(ver4)では、EXに搭載されている3DLTレンダリングに若干クセがあるようです。
以前も平面を分割しても3DLT時に無視されてしまうようですというエントリで書いた事がありますが、現状の3DLTでは分割して意図的に線を出そうとしても曲面上ならともかく"平面的につながってる場合"は、線が出ません。
3D下描きの時は何故か線が出ていても、いざ3DLTレンダリングすると必要な箇所の線が消えてしまったりします。 (線の検出精度を100にしても)
例えば上記のように二つの形状があって、離れている場合はいいのですが、隙間なくぴったりとくっつけると・・・
という風に別形状なのに真ん中の線が消えてしまいます。
線が出るようにするにはある程度離さないといけないのですが、距離をうまく調整しないと、
という風に線が二重に出てしまったり、形状によっては隙間から向こう側の線が出てしまう場合があります。
かといって近すぎるとやっぱり線が消えてしまったり・・・。
で、別の方法で線を出させようとテストしてみました。
わりと綺麗に線がしっかり出たようです。
何をやったかというと、線を掃引のラインとし、サイズのかなり小さい四角形を断面として、パイプ状に掃引したのです。
表示が小さいので、断面はポリゴン数を節約するために頂点数の多い16角形や32角形ではなく、四角形で掃引しています。
ただし、これも断面のサイズがあまりに小さすぎると、以下のように
線が消えたり途切れ途切れになったりするようです。
3DLTレンダリング時にどれくらいのサイズでレンダリングされるかどうかで同じ形状でも線がきちんとレンダリングされたり、線が途切れ途切れになったりする場合があるようなので、太すぎないように注意しつつ、そこそこの断面サイズで掃引した方が良さそうです。
上記はパイプ掃引で線を出す事によって平面にレンガ状の模様をテクスチャを使わずに出したものです。
分割した後に距離を離す方式ではこういうレンガ模様を表現するのはわりと手間がかかりますが、パイプ掃引で線を出す方式では、あまり手間をかけずにこういう線が簡単に出せるようになります。
手順としては、平面(の複製)に縦横ナイフを入れた後、横線を4本パイプ掃引→縦線を1本パイプ掃引した後、奇数段用と偶数段用の二つの形状に分割→奇数段の形状を1ブロック分横方向にずらして複製→偶数段の形状はまず半ブロック分スライドさせて、その後横方向に1ブロック分ずらして複製・・・・・で完了。
レンガの線が元の平面とは別形状となっているため、後から不必要な箇所を削除する事によって、例えば
みたいに、単純な四角形ではない平面にも、そこそこの短時間でレンガや格子模様を壁面に追加できると。
注意点としては、パイプ掃引した形状はポリゴンの法線の向きが内側になってると3DLT時に線が出ないため、3Dソフト上で面の法線の向きが外側になるようにきちんと調整しておくか、コミスタ上で「両面」チェックボックスをONにして3DLTレンダリングしてもらうようにしないといけないみたいです。
| 固定リンク
トゥーンレンダリング時にあえて線を出すためにポリゴンを分割してオブジェクトを作るという事をよくやっています。
上記の平面は、1枚の四角ポリゴンを8x8の64ポリゴンに分割した後、チェック模様状にポリゴンを32個選択して切り取り、別形状として貼り付けしたものです。
分割したおかげで、コミスタの3D下描き時にはタイル状に線が描画されています。
ところがこれを3DLTでレンダリングしてみると・・・・
検出精度を100にしても線が描画されないようです。
clipで配布しているこのオブジェクトも屋根の部分などを線が出るように分割して作ったのですが、おかげで3D下描き時には線が出ています。
でもこれを3DLTでレンダリングすると
という風に、線が出るように分割したはずが実際は描画されないようですね。
将来的には3D下描き時のように、こういう部分の線もきちんとレンダリングされるように改善して欲しいですね。
| 固定リンク
一年以上前にキャンペーンで安くなっていたlightwaveを購入したものの、コミスタで正常に読めるlwsファイルを作成できるようになったのは、情けない事にごく最近の事です。
「シーンで使うlwoファイルは、コンテントディレクトリのObjectsフォルダか、Objectsフォルダ内に作ったフォルダにのみ作成する事」という決まりがあるみたいですね。
これに気づかず無駄に時間を費やしてしまいました。
てっきり「Objectフォルダ外でも、コンテントディレクトリ下層にlwoファイルを保存すれば、lwsとlwoファイルは相対パスでリンクされる」と思ってましたが、この場合は確かにlightwaveでは正常に読み込めるのですが、コミスタでは読み込みエラーが起きるみたいです。
とりあえず、以下は使い慣れた他ソフト(shade)でオブジェクトをモデリングし、lightwave v9.6で読み込ませて、レイアウトでlwsファイルを作成、コミスタで正常に読み込みできるまで、の手順です。
同じように「せっかくlightwave買ったのに、コミスタで正常に読めるlwsファイルが作れない」と悩んでる方の参考になれば。
摩耶薫子さんのブログの「LightWaveレイアウトで、コミスタ用の親子関係のあるlwsファイルを作る際の注意」も参考にしています。
私のPC環境では、「G:\install\lw96」にlightwaveをインストールし、モデラー・レイアウトともに「G:\install\lw96」をコンテントディレクトリに設定しています。
インストール時に、「G:\install\lw96」内に「Objects」というフォルダが自動で生成されています。
他の方のPCでは「G:\install\lw96」の部分を「lightwaveをインストールしているフォルダ(コンテントディレクトリを設定しているフォルダ)」に置き換えてください。
検証のためshadeで簡単な形状のみで構成されたシーンを作ってみました。
・床
・円柱
・球二個(パートに入れてある)
をobj形式で三つ出力します。
(各形状あるいはパートを選択し、ファイル>エクスポート>wavefront OBJで、出力は「選択された形状」、「法線(スムージング)」と「UV値」「V方向を反転」をONにしています)
出力先は、lightwaveのコンテントフォルダの「G:\install\lw96」の中の「Objects」フォルダ内に「test110202」というフォルダを作って、三つともそこに保存しました。
「G:\install\lw96\Objects」内に「test110202」フォルダを作らずに、直接「G:\install\lw96\Objects」に形状ファイル(obj)を保存してもいいのですが、lightwaveのシーンに形状を読み込みする際や、Objectsフォルダ内がごちゃごちゃする事、その他諸々の手間を考えると、コミスタ用の3Dシーンを一つ作成する際に毎回フォルダを1個ずつ作っていった方が良さそうです。
順にyuka.obj、hasira.obj、tama2.objという名前で「test110202」フォルダ内に出力しました。
この出力時の命名が大事で、後でlightwave上でlwo形式で保存しなおす際に別名で保存しても、何故かこの出力した時の元の名前がコミスタ上ではパーツ名として表示されてしまうみたいです。
(一度シーンからオブジェクトを全削除して、名前変更した後のlwoファイルを新しく読み込みなおしても)
日本語名はlightwaveではやめた方がいいので、英文字で命名します。
出力前は、各形状の法線の方向が外側を向いているかをチェックしておきます。(コミスタで片面表示時にポリゴンの表示がおかしくならないため)
製作メモ:obj形式エクスポート時のバグ?に書いたように、一部のポリゴンが真っ暗になるのを回避するため、面倒ですが一度obj形式で出力した後、shade側でパートを新規作成してその中に読み込み、そのパート選択状態で改めて同名のobj形式で出力した方がいいかもしれません。
lightwaveのレイアウトをhubありで起動します。
+キーを押して、先ほどの「G:\install\lw96\Objects\test110202」フォルダ内の三つの形状(obj)をシーンに読み込みます。
(*メタセコなどでlwo形式で出力した場合は、lwoファイルで読み込みをし、以下のモデラーでのlwo形式での保存しなおしの必要はありません)
正常な位置にオブジェクトが読み込まれました。
モデラーに移動します。
モデラー右上のセレクタでオブジェクトを切り替えながら、「保存」で「G:\install\lw96\Objects\test110202」内に同名のlwoファイルを保存していきます。
yuka.lwo、hasira.lwo、tama2.lwoの三つのファイルが元のobjファイルと同じ場所に保存される事になります。
レイアウトに戻ります。
コミスタ用lwsファイルでは、摩耶薫子さんのブログの情報どおり、「シーンに存在するオブジェクトは、必ず一番上の親の子以下になっていないとだめ」という鉄則があるため、親子関係をレイアウトでつけます。
今回はyuka.lwoを一番上の親とします。
シーン編集>シーン編集クラシックでパネルを開いて、オブジェクトをドラッグして親子づけします。
今回はこんな感じで親子づけしてみました。
コミスタ用lwsファイルはlw6.0形式で保存する必要があるとの事ですので、「ファイル>出力>lw6.0形式でシーンを保存」を行います。
保存フォルダですが、ここがまだよくわかってませんが、コンテントディレクトリである「G:\install\lw96」に「testscene110202」という名前で保存しました。
一つ下の階層の「G:\install\lw96\Scene」内に保存しても同じくうまくいくみたいです。
別PCで正常に動作するかどうか、別の場所にlwsファイルとlwoファイルをコピーしてからコミスタに読み込ませてみます。
(lwsファイルとlwoファイルが相対パスでリンクされてるなら、別のフォルダに移してもそのリンクは正常に機能して読み込めるはず)
今回はlightwaveをインストールしたのとは別のドライブに作った「testcomista」というフォルダ内に先ほど作ったlwsファイルとlwoファイルをコピーしてみます。
(フォルダの場所や、フォルダ名は任意で結構です)
まず「testcomista」内にtestscene110202.lwsをコピー&ペースト。
次に「testcomista」内に「Objects」というフォルダを作り(すべての文字が半角、先頭の「O」は大文字である事に注意)、「G:\install\lw96\Objects」フォルダ内の「test110202」フォルダを中身のlwo(&obj)ファイルごとまとめてコピーします。
testscene110202.lwsファイルと同じ階層に「Objects」フォルダがあり、「Objects」フォルダ内には「test110202」フォルダがあり、「test110202」フォルダ内には三つのlwoファイルと三つのobjファイルがあると思います。
そのうち三つのobjファイルは不要となったので、lwo形式のファイルのみ残してobjファイルは全て削除します。
これでコミスタで正常に読み込めるlwsファイルが作成できました。
コミックスタジオを起動し、testscene110202.lwsをコミスタへドロップすると、親子関係のあるlwsファイルが正常に読み込めるのが確認できます。
素材配布の際は、 testscene110202.lwsが入ってるフォルダ(今回はtestcomista)をzip圧縮してclipに登録したり、自ブログなどで配布すればいいでしょう。
(testcomistaというフォルダ名は別の任意の名前に変えても問題ありません)
今回は、lighwave上でオブジェクト毎に中心位置を変更するなどはやりませんでした。
(自分でもこの点はまだ理解できてないため)
モデラーやレイアウトで中心位置を設定すると、コミスタで読み込んだ後に何故かオブジェクトの位置がずれてしまうのです。
雅遥さんのブログ「β-えんどるふぃん」の「TIPSブログ」カテゴリに中心点の設定についての検証がありますので、特定の位置を回転の中心としたオブジェクト(ドアや車輪など)があるシーンを作りたい場合は、そちらを参考にされると良いかと思います。
| 固定リンク
バーチェアカスタムパーツセットやリモコンパーツセットなどは、「3Dソフトで各パーツをインポートして、それらを組み合わせてからobj形式などで出力してコミスタで使用する」という風になっていますが、3Dソフトによってはインポート時にポリゴンメッシュのスムーズ角度(ポリゴンとポリゴンの交差角度がこの値以下なら滑らかにシェーディングし、この値以上なら角としてエッジを立たせる)の設定がそのソフトのデフォルト値にリセットされる場合があるようです。
試しにshadeにインポートしてみると、スムーズ限界角度を120度とかにして滑らかだった物体などは、スムーズ限界角度がデフォルトの30度に自動で変更されてしまいカクカクになったりする場合も…。
3Dソフトで組み上げた後、パーツがカクカクしてないか再確認し、もしカクカクしてるパーツがあって滑らかなシェーディングにしたいならそのパーツ(ポリゴンメッシュ)のスムーズ限界角度を挙げてからobj形式で出力してコミスタで使用した方が良さそうです。
パーツを組み合わせる場合だけでなく、完成済みのモデルを3Dソフトに読みこんで加工してコミスタで利用する場合も、スムーズ限界角度がリセットされてないかどうか気をつけた方が良いでしょう。
↑shadeで球を作成した後、分割を「粗い」にしてポリゴンメッシュ化したものをそのままobj形式で出力してコミスタで表示したもの
デフォルトのスムーズ限界角度は30度なので、カクカクしています
↑スムーズの限界角度を120度に変更してからobj形式で出力し、コミスタで表示したもの
シェーディングが滑らかになっています。
↑でもそれをshadeにインポートして、そのままobj形式で出力すると、スムーズの限界角度がデフォルトの30度にリセットされてしまいます。
↑別の3Dソフトcarraraの場合はインポート時にスムーズの限界角度がリセットされず値はそのままなので、再びobj形式で出力してコミスタで読み込んでも滑らかなシェーディングになっています。
shade・・・・インポート時に全てのパーツのスムーズの限界角度が30度に変更される
carrara・・・インポート時もスムーズの限界角度はそのまま
六角大王super6・・・・インポート時にスムーズの限界角度を聞かれ、全てのパーツのスムーズ角度がその値に変更される
imocea・・・インポート時に全てのパーツのスムーズの限界角度が89度に変更される
メタセコイア・・・・インポート(オブジェクトの挿入)時に全てのパーツのスムーズの限界角度がデフォルトの60度に変更される
みたいな感じになっているようです。
| 固定リンク
以下は直方体の上に暗めの単色テクスチャを設定したポリゴンの板を6枚載せたもの。
一番左上が一番密接して乗っており、右(および下段)へ行くほど距離を離して乗せてあります。
密接の度合いが高いほどテクスチャ欠けがきつくなりますね。
ある程度離せばテクスチャ欠けは起きなくなるようです。
ポリゴンの板を使って線を出す際は、浮かしすぎてもダメだけど、密接させすぎてもテクスチャONの時に不具合が出てしまう、という事に注意しないといけないようです。
| 固定リンク
shadeでUV設定をする場合は、表面材質で設定したUV設定(「UV」か「距離補正」)と、UVウインドウの「UVモード」(UVか距離補正)をきちんと一致させてから作業を開始しないと、後でやり直しするはめになります。
(表面材質の方ではデフォルトで「距離補正」の方が選択されており、UVウインドウのUVモードの方ではデフォルトで「UV」の方が選択されてしまってます。)
また、obj形式でエクスポートする場合は「UV値オプション」の「V方向を反転」にチェックを入れてエクスポートするとコミスタ側でいちいち「テクスチャの上下反転」をしなくてすみます。
特定のパーツが黒くなるバグが出て、その修正のために一度shadeにインポートしてからすぐにエクスポートする場合、インポート時の設定でも「V方向を反転」のチェックは入れておきます。
なお、
・パート
ポリゴンメッシュA
ポリゴンメッシュB
ポリゴンメッシュC
のような感じで複数のポリゴンメッシュから構成されるモデルを一つのobjファイルとしてエクスポートする場合、例えばポリゴンメッシュAだけにUV設定とテクスチャを設定してBとCには特に何も設定しない場合、コミスタ側で読み込むとBとCにまでAに貼ってるテクスチャ(とマテリアル)が設定されてしまいます。
対処法ですが、BとCに独自のマテリアルを設定するだけではダメのようで、独自のUV設定とテクスチャも設定しないといけないようです。
新たにテクスチャを用意するのもいいですが、A用のテクスチャの一部に白いエリアを用意し、テクスチャはそのAの物を流用して、UV設定でその白いエリアにBとCのポイントを縮小して載せるというのが手軽でいいでしょう。
白以外にも明るめの灰色や暗めの灰色のエリアを用意しておくと、パーツ単位で手軽に色(コミスタではモノクロですが)を設定できます。
| 固定リンク
「shade形式で保存したファイルをコミックスタジオで読み込むとシェーディングがおかしくなる」というのは昨年指摘したのですが、どうやらdxf形式で保存したファイルでも同じ症状が出るようです。
こちらのcomicstudio テクニカルインフォメーションでもオブジェクトのスムージングや3DLTレンダリング時の線についてメーカーに問い合わせしてる人がいますね。
リンク先ではobj形式でもシェーディングがおかしくなってますが、多分これは出力ソフトの問題かと。
shade10.5でshade形式で出力するとシェーディングがおかしくなりますが、obj形式だと正常にシェーディングされてます。
<立方体を出力してコミスタで取り込んだ場合>
lwo形式、obj形式の場合(正常)
shd(shade)形式、dxf形式の場合(不正)
昨年アップロードしたshade形式のファイルは、シェーディングを正常にするためにパーツを分割したりしたのですが、パーツを分割した場合は3D下描き機能では線が二重になって表示されてしまいます。(3DLTでも多分同じように線が二重になるのではないでしょうか?)
アップデータでshd形式の3Dモデルを読み込んだ際のシェーディングがおかしいバグが修正されるかと思ったのですが、何故かこれは放置されたままですね。
次のバージョンのコミックスタジオで改善するんですかね?
とりあえずdxf形式やshd形式のファイルはコミスタで使う場合はlwoやobj形式に変換してから使った方が良さそうです。
なお、obj形式やlwo形式で出力した3Dモデルでも、辺を意図的に溶かす事ができます。
たいていの3Dソフトではポリゴンメッシュの設定で「スムージングの制限角度」みたいな設定があり、「この設定角度以上の辺は『角』として認識してエッジを立たせ、この設定角度以下は『角ではない』と認識して滑らかにシェーディングする」というのをユーザーが制御できるようになっています。
例えばスムージングの制限角度を「160度(面と面の交差角度が160度以下の辺はスムーズにシェーディングする)」にして出力すると、
みたいにlwo形式やobj形式であっても角が立ってないシェーディングとなってしまいます。
また、一部のソフトでは「角を立たせる(エッジクリースあるいはハードエッジ)」「立たせない(エッジスムースあるいはスムースエッジ)」が辺単位で設定して出力できるものもあったりします。
(shadeやimoceaでは残念ながら辺単位での設定は不可。手持ちのソフトではcarraraとxsiで辺単位で設定可能)
上記は正面の縦の辺一辺だけをスムースエッジにし、残りの辺はハードエッジにして出力したものです。
これをうまく使えば3DLTレンダリング時に特定の辺(たとえ面と面の交差角度が90度以上であっても)に線を入れる事が可能かもしれません。
| 固定リンク
3Dモデル 3Dモデル(一覧) その他 コミスタの3D機能への要望 ジャンクパーツ・テスト製作 モデル製作メモ 画像素材 素材追加のお知らせ