エンジン〜実例〜
まず、今回から解説するエンジンスクリプトだが、バイクだけでなく、車、飛行機、ボートなど、さまざまな乗り物で使用されている。
エンジンスクリプト〜全体〜
スクリプトは下図のようになる。
かなり長い。少しビックリしただろうか。前回のパーティクルでは、かなり長いスクリプトを一度簡単な形にして、徐々に内容を増やしながら解説していった。今回は、このスクリプトを長いまま、いくつかのブロックに分けて一歩一歩解説していってみよう。その際、物理法則などについても少し説明する。
そもそも、Second Lifeという3次元の仮想世界はデジタルの世界だ。現実の世界をデジタルで再現しようと言うのだ。現実世界をどうすればデジタルで再現できるのか?それには、物理法則が適用された仕組みが必要となる。当然、スクリプトにも少し概念的に難しい関数がいくつか登場する。それを極力わかりやすく説明しようと思っている。
エンジン〜概要〜
さて、上記のソースコードを「イベント」ごとに分けると、以下のようになる(イベントについては、第26回を参照)。
- 「state_entry ()」イベント
- 「changed ()」イベント
- 「run_time_permissions ()」イベント
- 「control ()」イベント
それでは、1の「state_entry ()」イベントから始めることにしよう。