SecondLifeのテクスチャ

ごきげんよう、たいこです。
この記事はセカンドライフ技術系 Advent Calendar 2017の為に書いています。

毎年12月に企画されるもので、毎日25日まで、テーマに沿った記事を皆でリレーして書いていくという企画です。何かネタのある方は、今からでもぜひご参加くださいね。


というわけで、何について書こうか、、、と思っていたのですが、11月にTwitterでもちょっと話題になったテクスチャの事を書いてみたいなと。

テクスチャの一時アップロードという機能があります。残念ながらFirestorm限定の機能です。
ご存知の方も多いと思いますが、これがとても便利。

どう使うのかというと、、、

とりあえず、今回は箱を出しています。この箱に一時アップロードのテクスチャを貼ってみます。

1.テクスチャのサムネイルをクリック
2.テクスチャウインドウが出たら、Localを選択。
3.Addボタンを押して、作ったテクスチャを選択。

 

4.テクスチャが仮アップされました。このテクスチャを選ぶと、
5.箱にテクスチャが貼られました。

 

この仮アップの何が素晴らしいか。それはローカルのファイルと同期していることです。

こういう感じに。。。

モデリングツール内でのテクスチャの見え方とインワールドではどうしても感じが変わってきます。ので、このように仮UPしたものを編集していくことで、実際にどんな感じになるのか見ながら修正がかけられます。とても便利。

ちなみにこの仮アップしたテクスチャは、仮アップした本人にしか見えません。
テクスチャが完成したら、本番アップします。その前に、仮アップしたテクスチャを削除しましょう。

 

このように、仮アップしたテクスチャは灰色になります。
これをしておけば、本番テクスチャの貼り忘れを防ぐことが出来ます。


テクスチャ繋がりでもうひとつ。

SLのテクスチャの圧縮の不思議について少し。
テクスチャをアップロードする時、基本的には512px * 512pxとか、1024px*1024pxとかの正方形のサイズで画像を作る人がほとんどだと思います。
アップロードする際に、この縦横比を気にせず作っても、アップロードすることは出来ます。が、アップロードした際に、この画像は強制的に、1:1か1:2の正方形/長方形にリサイズされます。
更に、アップロード自体は2048pxまで対応しています。が、これも現在は1024にリサイズされます。
この強制リサイズがちょっと曲者で、ユーザーのPC環境やSIMの環境や何かで、強制リサイズしたテクスチャがぼやけて見えなくなる、という事態がたまに起きます。このバグは、人によって発生したりしなかったりするので、確認するのが難しい厄介なやつです。できるだけテクスチャは、1:1か1:2で作ってアップするのが望ましいかな、、と思っています。

1:1とか1:2のサイズじゃない画像を使いたい!という場合は、一度テクスチャを作ったあとで、画像の比率を1:1か1:2に変えてからアップロードするとよいですよ。


テクスチャ繋がりでもう一個。

テクスチャの読み込み負荷のお話。
単純に、1024px の画像より512pxの画像のほうが読み込み負荷は低いです。
では、512pxのテクスチャ4枚と1024px1枚のテクスチャ、負荷が低いのはどちらなのか?
負荷が低いのは1024px1枚の方、とのことでした。(UBUMEの時にスクリプターさんに聞いた)

読み込むファイル数>読み込むファイルの大きさって事なのでしょうかね。。
なので、カラバリ4種のベンダーテクス、みたいなもののときは、512pxを4枚つなげて1024pxでアップロードすることもあります。
ゲームでなくてもイベント会場は重たいです。きれいな画質のベンダーを見せたい気持ちは私もありますが、いつまでたっても灰色で、もしくはぼやけてしまって商品画像が見えないことのほうが、リスキーかなと考えます。


SLにはいろいろな環境の人がいます。10年前から比べると、別のゲームか!というくらいきれいな世界になっていると思います。その分ユーザーに要求されるPCスペックもどんどん上がっていっています。
ロースペックの環境にどこまで合わせるのか、どこまで配慮するのか、ということは、イベントを運営していて一番悩むところです。今だと高度なライティング設定や、マテリアル設定などでしょうか。
あと、わりと侮れないのが透過を含む複雑なテクスチャ。具体的に言うと、メッシュ製の草とか蔦とかそういったもの。あの仕様に弱い環境の人というのもいます。

新しいものはスペック要求されがちで、毎年私達も悩みながらイベントづくりをしています。これはきっとこの先もずっと続く課題なんだろうなあと思っています。