BlackSheep-LSL@Wiki 基礎知識 > スクリプトとは?
※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

「スクリプト」の意味


スクリプトという言葉は、日常生活の中ではまず耳にすることが無いかと思います。
英語で書くとscriptですが、まずはこの単語の意味から調べてみることにします。もし英和辞書をお持ちでしたら引いてみて下さい。何と書かれているでしょうか?

辞書が手元にない方のために、私が調べた答えを載せますが、


演劇や映画、ラジオ、テレビなどの台本。脚本。


これがscriptの意味です。


台本とスクリプト


台本や脚本というと、場面に応じた動きや台詞が書かれたものです。

シーン1、魚屋・昼下がり
 魚屋が手に鯖を持って笑顔で店頭に立っている。
 魚屋「らっしゃい、らっしゃい」
 カメラ:上方向にPAN
 魚屋の屋根の上に不適な面構えの猫が仁王立ちになっている。
 猫、忍者のように屋根を駆け下りる。
 魚屋、猫の気配に屋根を見上げる。
 魚屋「はっ!?」

この例では、昼下がりの魚屋という場面における魚屋、カメラ、猫の動作が記述されています。
台本というのはこのように、いつ・誰が・どこで・何をするのかを明確に書いていきます。
スタッフやキャストはこれを読んで、
「自分がどの場面のどのタイミングで何をしなければいけないのか」
を把握します。

映画やドラマの台本は、スタッフやキャストの動作を書いたものですが、セカンドライフにおける「台本」すなわちスクリプトは、オブジェクトの動作を書いたものです。
ここで言うオブジェクトとはセカンドライフの世界にあるあらゆる物体のことです。

例えばドアです。

シーン2、豪邸・玄関
 ドアは閉じている。
 アバターがやってきて、ドアにタッチする。
 ドアが手前に向かって90度開く。
 30秒経過した後、ドアは自動的に閉じる。

ドアの動きを台本風に書いてみました。
スクリプトを使うと実際にこのような動きを実現することができます。
まさにオブジェクトの動きを書いた台本が、スクリプトなのです。

ドラマや映画の台本は、キャストやスタッフがわかるように書かれていれば十分です。
ある程度決まった書き方などはあるでしょうが、相手が人間ですので多少変則的な書き方がしてあっても理解してもらえます。
しかし、スクリプトはコンピュータ相手の台本です。
コンピュータは人間のように臨機応変な判断ができませんので、スクリプトの書き方というのはきっちりと書式が決まっており、間違った書き方をするとコンピュータはまったく理解してくれません。
また、人間の役者のように、細やかな演技を指示することもできません。
あくまでもコンピュータが出来ることしか指示できません。
自分の望む動作をコンピュータにさせるためには、限られた動作の中から、どれとどれを使うのか、どんな順番で使うのか、パズルのように頭を悩ませることになります。

台本との違い


ドラマや映画の台本とセカンドライフのスクリプトとは、もちろんイコールではありません。
例えば台本では、様々な登場人物の台詞のやり取りや動作が一冊にまとめられていますが、スクリプトでは基本的に一つのオブジェクトの動作だけを記述します。
例えば二つのオブジェクトが関連して動くような仕組みを作りたいときには、それぞれのオブジェクトに別々のスクリプトを書いてやる必要があります。

また、台本というのは通常、決まった動作が書かれているものです。
ところがスクリプトは状況に応じて動作を変えることができます。

例えば先ほどのドアの台本を少々書き換えてみると、

シーン3、豪邸・玄関
 ドアは閉じている。
 アバターがやってきて、ドアにタッチする。
 もしもアバターが家の持ち主であったなら、ドアが手前に向かって90度開く。
 アバターが家の持ち主でなかったなら、ドアは開かない。
 30秒経過した後、ドアは自動的に閉じる。

太字で書いてある部分がスクリプト特有の内容です。
通常のドラマや映画の台本ではこんな表現は出てこないでしょう。

決まりきった動作だけでなく、状況に応じて動きを変えることができるからこそ、スクリプトは面白いと言えます。
ですが逆に言うなら、いろいろな状況を想定して台本を書かなければいけないわけですから、きちんと状況を考え、どんなときにどのような動きをさせるのかを把握しておかなくてはなりません。

さらにもう一つ、台本とスクリプトの大きな違いがあります。
台本は時間の流れに沿ってシーンとカットが書かれていますが、スクリプトは必ずしも時間の流れに沿って書かれているわけではありません。

シーン4、豪邸・玄関
 アバターが閉じたドアにタッチした時、ドアは手前に向かって90度開く。
 30秒が経過した時、ドアは自動的に閉じる。
 アバターが開いたドアにタッチした時、ドアは閉じる。

スクリプトでは上記のような動作を実現できますが、これは時間の流れに沿っていません。
ドアを開けたあと、再びタッチしてドアを閉じるかもしれないし、30秒後に自動的に閉じたドアに再びタッチして開けるかもしれません。
つまり上記の内容は順不同で起こり得ます。

まとめ


セカンドライフのスクリプトは、正確にはThe Linden Scripting Languageと言い、略してLSLと呼ばれます。
つまり「リンデン社による台本用言語」というわけです。
先ほどまで「スクリプト」という表現を使ってきましたが、今後はLSLという名称で統一させていただきたいと思います。
もしも今後文脈の中で「スクリプト」と出てきた場合には、LSL以外のスクリプト言語を含む一般的な表現として理解してください。

  • LSLとは、セカンドライフ内のオブジェクトの動作を指定するための台本のようなものです。
  • LSLには一つのオブジェクトの動作を書くことができます。
  • LSLは状況に応じて動きを変えることができます。
  • LSLは必ずしも時間的な流れに沿って書かれているわけではありません。


名前:
コメント: