Script程式檔(Python 語言)系列教學─動畫範例(一)

pages:1-2

適用版本:trueSpace4以上

發表日期:1999/5/5


寫程式來控制物件,是 trueSpace 的一個新突破,您可能會認為寫程式很難,更何況來操控物件,只要您看了我們這一系列的Script 系列教學,您就會知道─其實很簡單。下面範例是設計一個正方體,每移動一個單位就旋轉5度,如果以傳統的最快方式可以使用關鍵畫面編輯器來設定,現在我們教您使用Python 語言來撰寫,只要9個步驟即可。

撰寫程式

首先在場景中加入一正方體,按下「程式檔編輯器」圖示(圖1),來開啟「Python Script 」視窗。鍵入下列的內容於視窗中。

pic02.JPG (16931 bytes)(圖一)

from math import *            

def ontimestarted():

      global index;index=0             

def ontimechanged():

      global index

      me.Translate(.3*cos(index/10.0),0,0.0)     

      me.Rotate("x",5)                  

      index=index+1                     

      doc.Draw()

在鍵入內容時要注意“縮排”及“字母大小寫”要符合規定,否則有錯誤訊息並無法執行動作。如果偵錯區沒有任何訊息,表示您的內容沒有錯誤,您就可以按下視窗中的「開始播放」按鈕(圖二),場景中的物件就會有動作,最後按下「停止播放」按鈕來中斷動作。

pic01.JPG (23642 bytes)(圖二)

內容說明

接下來一一說明程式的內容所代表的意義。

from math import * ─ 使用數學函數

def ontimestarted():─ 為內建常式,時間開始只執行一次下面的步驟

def ontimechanged():─ 為內建常式,偵測時間是否改變。該常式會不停執行,形同為一迴路,直到使用者中斷。

global index; index=0  ─宣告一個全域變數,並設定初始值為0

me.Translate(x,y,z)─為移動函數必須給予三個軸的值,(.3*cos(index/10.0),0,0.0) 在此X軸是個變動值。

me.Rotate("x",5)─為旋轉函數,在此設定旋轉X軸5度,另外,me.Rotate("y",5)me.Rotate("z",5)分別是旋轉Y及Z軸。


下一頁