ソラマメブログ › ユ・キ・ウ・サ・ギ › 2012年06月

  

Posted by at

2012年06月23日

メッシュ備忘録_17

おはようございます、Shirousagi Noel です。


今回は、「リグメッシュのテクスチャーの読み込み速度」のお話です。
以前から、自分で作っているメッシュヘッドのテクスチャーの読み込みが、
購入した他店のメッシュ服よりも極端に遅いことが気になっていました。

装着している他店のメッシュ服は、
ログインした直後に、すぐにテクスチャーが読み込まれるのですけど、
自分で作っているメッシュヘッドは、なかなかテクスチャーが読み込まれません。

UP時の画像フォーマットがいけないのかと思って、tgaやbmpやpngで
UPして読み込み速度を試したりしていましたのですけど、多少読み込み
速度に変化はあるのですけど、根本的な解決にはなりませんでした。
(読み込まれたテクスチャーは全てjpeg2000フォーマットに変換されます)

いろいろ試行錯誤をしてみて、こちらも解決方法がわかりました w
問題はUP時のリグメッシュの大きさでした。

前回LODのお話をさせていただきましたけど、それと同様に
SLのテクスチャーは、面積の大きなものから読み込まれます。
例えば、IN直後に建物の壁や床のテクスチャーなど、大きな
オブジェクトのテクスチャーから先に読み込まれるのはそのためです。

頭部は、シャツやコートなどの装着物に比べて
体積が小さいので読み込みが後回しにされていた上に、
まつ毛や歯などの小さな面積のパーツも含まれていますので、
カメラをUPするまではテクスチャーが読み込まれなかったのです。

さて、解決方法ですけど、これは簡単、
リグメッシュを大きくUPすればいいだけですw


リグメッシュ(骨付きメッシュ)はUP時の大きさに関わらず、
装着するとリグ(骨)の効果で、丁度よい頭の大きさに変化してくれます。

つまり、シャツやコートと同じくらいの大きさでメッシュヘッドを
UPして、それを装着すればテクスチャーの読み込みは
お洋服と同じくらいに早くなるんです。
装着したリグメッシュは虚像のようなもので、テクス読み込みの
基準は、Rezした時の大きさに依存するみたいなんです。

UP時の大きさを変更するのは、こちらの数値をいじれば簡単にできます。


もし、メッシュで小さな靴やアクセサリーを作っている人が
いらしたら、少しだけ大きめにUPしてあげれば
テクスチャーの読み込みが早くなると思います ^^

※リグメッシュは大きくUPするとランドインパクトの値が
  増えてしまうので,大きくしすぎないよう注意が必要です。

では、また~  ^。^)/

  


Posted by Shirousagi Noel at 06:18Comments(13)Mesh

2012年06月21日

メッシュ備忘録_16

みなさまこんばんは、Shirousagi Noel です。

「メッシュ備忘録」は、
メッシュ製作を通して、悩んだり理解できたことなどをしたためて、
同じようにメッシュ製作をしている方々と
情報交換をしようと思って始めたのですけど、
最近は、単なるSSアップブログになっていました。

今回は初心に戻って、気が付いたことを
いくつか書いてみようと思います。

1.テレポート時のLODの崩れ回避

SLでは、遠くのものは荒く見えて、
近くのものは詳細に見えるような仕組みがあります。

カメラの視界に入るものを全て詳細に表示していたら、
SLはとても重い世界になってしまうので、
その対策として、必要のないものは
細かく表示しないようにしているのです。
この仕組みをLOD(Level Of Detail)といいます。

メッシュにも同じ仕組みがあって、1つのメッシュは実際には
4段階の細かさの違うデータを兼ね備えているんです。

いつもは問題なく表示されているLODですけど、
リグメッシュ(骨付きメッシュ)の場合、
何のいたずらか、テレポートした時にLODが崩れて、
リグメッシュがカクカクした形に見えてしまうことがあります。

お洋服の場合には、気が付かない場合もあるのですけど、
メッシュの顔の場合には、大きな問題になります。
この場合、大抵他人からは問題なく見えているのですけど、
自分の顔を見たときに、カクカクの顔になってしまうのは
ちょっと嫌ですよね ><

こうなった場合、元に戻す方法は通常2つあります。
1.リログ
2.形の崩れたリグメッシュに触れる。
  (リグメッシュは普通さわることができませんけど、
  何か別のリグメッシュ以外の装着物にさわった状態からなら
  さわることができるんです)
でも、2つともめんどうですよね・・・・><;

そこで、表示のおかしいリグメッシュを
自動で直してくれる方法はないのか考えてみました。
いくつか実験をやってみて、ひとつの答えが見えてきました w
クリエーターさんが、商品に少し加工をしてくれれば、
問題は解決しそうです。

回避方法は、テレポート直後に一瞬だけリグメッシュの
透明度を0にしてもとに戻すだけです。


これで、リグメッシュの装着がリロードされるので
表示が正常になります。
テレポ直後の一瞬なので、装着リグメッシュが透明になったことさえ
わかりませんので、服が透けて見えてしまうこともありません。

次のスクリプトでこれを行うことができます。
※うちのスクリプターのなほちゃんは、誰にでも書けるスクリプトだと
 言うのですけど、私みたいに1行もスクリプトを書けない人もいるので
 一応紹介しておきますねw

default
{
state_entry()
{
}
on_rez(integer num)
{
llSetAlpha(1.0,ALL_SIDES);
}

changed(integer chgParam)
{
if ( (chgParam & CHANGED_REGION) || (chgParam & CHANGED_TELEPORT))
{
llSetAlpha(0.0,ALL_SIDES);
llSetAlpha(1.0,ALL_SIDES);
}
}

}

【ご使用の際には下記の注意事項を守ってください】
1.お使いになる場合は、保障やサポートはできませんので、
  ご自身の責任でご使用されるようお願いします。
2.上記スクリプトを商用の商品に入れても構いませんけど、
  どのような場合でも苦情対応は致しかねます。

長くなってしまったので、残りは次回にします。
次は、「リグメッシュのテクスチャーの読み込み速度」についてお話します。

  


Posted by Shirousagi Noel at 03:21Comments(2)Mesh

2012年06月17日

メッシュ備忘録_15

おはようございます、Shirousagi Noel です。

製作中のメッシュヘッドですけど、
実際に製作しているメッシュ部分は、こういうものです。
※インワールドで上半身のスキンを消して、白バックで撮影したものです。



このような作りですので、もちろん首の周辺にノーマルシェイプ(スキン)との
つなぎ目があります。
このつなぎ目ができるだけ目立たないように
メッシュとシェイプの形状合わせをして、スキンを調整します。



実際につなぎ目をすべて消すことは、どうやってもできません。
服を着ていればあまり目立つことはないと思うのですけど、
水着になってカメラをUPにして、いろいろな角度から見てみると
少しつなぎ目がわかる位置もあります。
これはどうしようもないので、発売の際にはDEMOでお確かめくださいね。

  


Posted by Shirousagi Noel at 07:01Comments(14)Mesh