こちらは、Qiita湯婆婆アドベントカレンダーの23日目の記事になります。
みなさんがいろいろな言語で湯婆婆しているのが楽しそうで、勢い余ってエントリしてしまいました。よろしくお願いします。
さて、この記事で湯婆婆が降臨するのは仮想世界セカンドライフ。2007年ごろに日本に紹介され、当時は電通がブーム捏造したのなんのと騒がれ、その後も「まだあったのかー」などと揶揄され続けながらも、2020年の今に至るまでしっかり生き残っているサービスです。
セカンドライフの大きな特色の一つが、ユーザーが仮想空間内で様々なものを作れること。ボックスや球、円柱などの基本立体を組み合わせたり外部でモデリングしたメッシュオブジェクトをアップロードして、空間内に飾ったりできます。さらに、そこにスクリプトを書くことでオブジェクトを移動させたり外見を変えたりチャット欄に文字を表示させたり、様々な操作をすることができます。このスクリプトに使われている言語がLinden Script Language、通称が今回タイトルにうたっている「LSL」です。
LSLそのものについては数年前、これもアドベントカレンダー企画内で紹介させていただきましたので、そちらをご覧ください。
LSL(Linden Script Language)のご紹介 - Qiita
さて、本題に入りたいところなのですが、実は事前に下書きしてみたところ、意外と長い記事になってしまいました。他言語で湯婆婆実装できる程度のプログラミング知識がある方向けに、セカンドライフならではの要素の説明を入れながら書いてみたのですが、とりあえず動くところまででほぼ1記事分のボリュームを使い切ってしまいました。なので、数回に分けて記事を書き、こちらからリンクする形式としたいと思います。実装記事を読みたい方には、二度手間を取らせることになり申し訳ありません。
1日目の記事はこちらです。
LSLを使ってセカンドライフで湯婆婆 その1 - Qiita
この先、足りていない個所の実装を加えていく形で記事を書いていきます。湯婆婆カレンダーは1日だけ、当記事のみをリンクしています。