arz Nitelyってシステム屋どうよ?

SecondLifeとWebとの融合を模索するセミプロWeb屋の挑戦

テクスチャーの練習

2009年01月12日 – 00:48

すっかりご無沙汰してます

最近は何をやっているかというと…
テクスチャーの練習ですw

環境光(ポイントライト / 点光源)を使わずにどれだけ光と影をテクスチャーに描き込めるか…
そんなことばっかりやってますw

以下、練習作品

※ 深夜モードにて
※ 光源ナシ



LSL x PHP オーダー第1号納品^^

2008年09月07日 – 01:39

アクセ屋さんからオーダー頂いた非常に緻密なテクスチャーチェンジスクリプトを
LSL x PHPで仕上げ、先ほど納品しました

オーダーメイドスクリプトとしては、はじめてPHPをからめての納品という形になり
数日前からおっかなびっくりβテストをお願いしていたのですが
「問題もなく、とても使いやすい」と、お褒めの言葉を頂きました^^

 

さてさて、どのようなスクリかと言いますと…

『どんなアクセサリーにも汎用的に利用でき
 テクスチャーに関するパラメータ(オフセットや繰り返し、明るさ全開、グロウなど)を
 商品ごとに全て異なる設定ができるもので
 ちなみにテクスチャーの枚数はアクセサリーごとに異なるし
 テクスチャーを変える場所も大きさもプリム数さえも違う』

という、ちとスクリプター泣かせなww ものでしたwww

そう、商品ごとに「全てのパラメータを個別に設定しなければならない」わけで
その「入力をできるだけ簡単に行いたい」というオーダー内容

要するに、
「アクセを購入したお客さんが使いやすいスクリプトであることは当然ながら
 クリエイターさんが商品をつくるときに、いかに設定が簡単であるか」を課題として出されたわけですねw

 

ウン、これはPHPをからめてコレの要領でLSLを動的に生成させるしかないっしょ〜

というわけで、テクスチャーチェンジという原理は単純なLSLながら
入力時のストレスを最小限に抑えるためにUIにHTMLを採用
また、入力されたパラメータをPHPで条件分岐させつつ動的にLSLを生成させるという
かなりトリッキーな仕上がりにw
(たぶん、日本初のシステム!!)

ちなみに、コレには保存機能がないですが
オーダーいただいたものには保存機能も付け
「後からちょっとだけ手直ししたい」という場合にも対応させています^^
(保存個数は理論上無限に可能で、瞬時に呼び出すことができます)

クリエイターさんが設定する際のUIはこんな感じです



サイト上でSL内のテクスチャーを表示するためのURL

2008年06月05日 – 18:18

http://secondlife.com/app/image/<ココにテクスチャーのUUID>/0 → 60×45
http://secondlife.com/app/image/<ココにテクスチャーのUUID>/1 → 256×192
http://secondlife.com/app/image/<ココにテクスチャーのUUID>/2 → 320×240



テクスチャーサーバ

2008年05月27日 – 05:38

ものづくりをしていると異常にふくれあがるテクスチャーの枚数…
んでもって、複数のメンバーとコラボしてるとこれまた面倒なテクスチャーのやり取り…

ハイ、一発解消(かもw)

え〜、テクスチャーサーバつくってみました

2プリムで
ラッキーボードと同じ大きさ(見た目もほぼ同じ)で
理論上、1台のサーバに無限にテクスチャーを保存しておくことが可能^^

タッチでダイアログが出てテクスチャーを選択

さらにダイアログから「メニュー」を選択すると…

「削除」か「ゲット」を選択できます^^

 

ちなみに、操作できるのはグループメンバーのみですので(削除はオーナーのみ)
コラボで建物を建てたり、SIM全体で統一感を出したりする際に
限られたメンバーでテクスチャーを共有することができます^^
(ただし、フルパーのテクスチャーでないとUUIDが取得できませんので表示不能)

また、このサーバをグループ分担にしておくと
グループメンバーが自分の手持ちのテクスチャーをいつでも追加することができますのでとても便利♪
(テクスチャーの著作権には注意しないといけませんね^^)

 

設定は不要w

サーバにテクスチャーを入れるだけです^^

 

うひw

どですか?



便利? テクスチャーUUIDメモ

2008年05月20日 – 02:36

インビジプリム用
e97cf410-8e61-7005-ec06-629eba4cd1fb(tga)
38b86f85-2575-52a9-a531-23108d8da837(j2c)

白無地
5748decc-f629-461c-9a36-a35a221fe21f(tga)

完全透明
f54a0c32-3cd1-d49a-5b4f-7b792bebc204(j2c)

ダークグレー無地
267e26d3-e0e1-41b8-91b1-3b337102928d(tga)

MISSING IMAGE
32dfd1c8-7ff6-5909-d983-6d4adfb4255d(tga)

スクリプトエラーアイコン
7775b5cc-93a5-6efd-0d9b-4e079afac217(tga)

ゴミ箱アイコン
88ad072e-ea0b-aabd-5ac0-b37862a6eb66(tga)

リンデンが準備しているテクスチャーですので
利用OKだろうと思いますがw
自己責任で^^

default{
    state_entry(){
        llSetTexture("32dfd1c8-7ff6-5909-d983-6d4adfb4255d", ALL_SIDES);
    }
}

みたいな感じでOKですw