これは、機能的且つ拡張性?のあるビルボードを作ろうと考え、着手し始めた物。 勿論、商用展開は無視。 個人的に質の良い大型広告は景観材料であると結論付いている。
下記は単純に、実験タイプの低負荷(非タイマー)で「テクスチャに記述されたデータを読み込もうと四苦八苦している」物である。
最終的には2枚重ねでタイマーを用いたフェイドインアウトする画像が望ましい。しかし、「タッチでURL情報を読み込む」と云う前提をどの様にクリアするのか、現段階ではノープランである。
1) 最低条件
テクスチャネームと説明から情報を読み込む
「そこから店名とURLを引き出す」 設定をスクリプトから切り離すことで、ユーザープライオリティをキープしたい。
2) 完成条件
データ(テクスチャ)情報をルートプリムで一元管理
2プリムを利用しタイマーを用い、画像のフェイドインアウトを行う *1
タッチでURLを引き出し、マーケットプレイス(or official site)へ誘導
*1 グラフィカルにすることで、存在感など諸々助長し様々なポジティブエフェクトを生むのだが、フェイドインアウト(透過を用いた前後面の視覚的入れ替え)は、「タッチによる動作」に弊害を与えてしまう。その為の打開策はポップアップメニューで全店のデータダイアログを引き出すか、或いはその都度2択(インデータ/アウトデータ双方から選択)にするのか。 いずれにせよ一筋縄ではいかないだろう。
string URL;
string name;
web(){
llSay(0,URL);
llLoadURL(llDetectedKey(0), name, URL);
llResetScript();
}
default
{
state_entry()
{
list p = llGetPrimitiveParams([PRIM_DESC,PRIM_NAME]);
URL = llList2String(p,0);
name = llList2String(p,1);
llOwnerSay("
Thank you for your Interest.
1) 貴方のPR画像をオブジェクトに入れる。
(Texture sizeは512*512が推奨されます。)
2) オブジェクト名と説明を変更します。
(オブジェクト名:ストアネーム/説明:URL)
3) オブジェクトの背面にタッチ。
入力データを読み込みます。");
}
touch_start(integer total_number)
{
integer i=llDetectedTouchFace(0); // タッチした面の番号
if (i == 0) {
llSay(0,"0");
web();
}
else if (i == 4){
llSay(0,"4");
list p = llGetPrimitiveParams([PRIM_DESC,PRIM_NAME]);
URL = llList2String(p,0);
name = llList2String(p,1);
}
else if (i == 5) llSay(0,"5"); // 面番号5だったら次のLM表示
else if (i == 6) llSay(0,"6"); // 面番号5だったら次のLM表示
else if (i == -1) llSay(0,"-1");
}
}
この試みに関して、俺は商用利用を考えていない「ネットワークの基盤作りと購買者支援」だけが目的である。 故に、仮に貴方が「これを完成させてやろう」と想い抱いてくれる場合、心から感謝したい。 その際に貴方が行える商用利用に関して、俺は言及しないとするが「非商用の為のNo-Mod(非改変)利用の許可」は頂きたい。
俺は所詮、オープンソースを活用しまくって変なものを作れる程度ですヨ。