2008年07月14日
テクスチャブラウザを作ってみた
テクスチャの選択面倒だよな~
-----
テクスチャブラウザもいまいち分からないよな~
-----
というわけで 自分で作ってみようと思って作り始めてみた
-----
すぐツールを作りたがるのは悪い癖だが なかなかしっくりくるものがないからな~
-----
というわけでこうなった ^^
-----
-----
-----
-----
WS HUD 流用したので小さい w
-----
-----
初期状態
-----
-----
調べたいテクスチャをコンテンツにドラッグアンドドロップし クリックするとこうなる
-----
というわけでリストもあげておきます
-----
まずは本体側から
-----
テクスチャブラウザもいまいち分からないよな~
-----
というわけで 自分で作ってみようと思って作り始めてみた
-----
すぐツールを作りたがるのは悪い癖だが なかなかしっくりくるものがないからな~
-----
というわけでこうなった ^^
-----
-----
-----
-----
WS HUD 流用したので小さい w
-----
-----
初期状態
-----
-----
調べたいテクスチャをコンテンツにドラッグアンドドロップし クリックするとこうなる
-----
というわけでリストもあげておきます
-----
まずは本体側から
//次にボタンというか実際にテクスチャを表示している部分
// File: TextureBrowser.lsl
// Date Author number of nodes
// 2008/7/14 walkinglint 41
// 2008/7/13 walkinglint 20
// 2008/7/13 walkinglint 18 (TexturePresenter->TextureBrowser)
// 2008/6/20 walkinglint 18
//
integer num_of_texture;
integer num_of_button = 64;
integer i;
default {
touch_start(integer total_number) {
num_of_texture = llGetInventoryNumber(INVENTORY_TEXTURE);
for (i = 0; i < num_of_button; i++) {
if (i < num_of_texture) {
string nm = llGetInventoryName(INVENTORY_TEXTURE, i);
key ky = llGetInventoryKey(nm);
if (ky != NULL_KEY) {
llMessageLinked(2 + i, 0, nm, ky);
} else {
llMessageLinked(2 + i, 0, nm, "89556747-24cb-43ed-920b-47caed15465f");
llOwnerSay(nm + " may be no copy or no modify or no transfer");
}
} else {
llMessageLinked(2 + i, 0, "", "89556747-24cb-43ed-920b-47caed15465f");
}
}
}
}
//
// File: TextureBrowserButton.lsl
// Date Author number of nodes
// 2008/7/13 walkinglint 8
//
default {
link_message(integer sender_num, integer num, string str, key id) {
llSetText(str, <0.0, 0.0, 0.0>, 1.0);
llSetTexture(id, 2);
}
}
Posted by walkinglint at 12:39│Comments(0)
│walking のスクリプティング講座