1. 程式人生 > 實用技巧 >3dsMaxMax指令碼的入門講解之怎樣定義控制元件和工具條(2)

3dsMaxMax指令碼的入門講解之怎樣定義控制元件和工具條(2)

>>> hot3.png

一。我們首先要知道MAX的幾個和指令碼編寫和測試有關的地方。

 單擊命令面板中的\ 按鈕,開啟應用程式面板,再單擊MAXScript按鈕,在應用程式面板出現MAXScript捲簾窗,如圖1-1所示。

\


指令碼監聽器視窗

指令碼監聽器又叫指令碼跟蹤器,單擊MAXScript捲簾窗中的Open Listener按鈕,也可選擇選單欄中的 MAXScript/MAXScript Listener
命令,快捷鍵F11。如圖所示。

\

也可右擊使用者介面左下方的Mini-Listener(迷你監聽器)開啟指令碼監聽器視窗,如圖所示。

\


指令碼監聽器視窗是一個命令編輯和執行視窗,它由兩部分組成,上半部分為巨集記錄視窗,下半部分為指令碼執行結果輸出視窗。如圖所示。

\

指令碼編輯視窗

單擊MAXScript捲簾窗中的New Listener按鈕,或者選擇選單中的 MAXScript/New Scrip 命令開啟指令碼編輯視窗,如圖1-5所示。

\

下面我們就直接進入正題用指令碼編輯視窗來編輯下自定義的一些控制元件:

1。浮動對話方塊的製作:

\

Rollout floater "浮動視窗":定義視窗的型別是一個rollout 視窗的標題名稱是“浮動視窗”

Createdialog floater:表示建立這個浮動的視窗 注重定義的變數名稱“floater”上下不得不一致,width和height表示視窗的寬度和高度,最後的2個參分別表示背景色和前景色,中間不得不用括號分開,在括號內書寫我們定義的內容。然後我們求解ctrl+E或者是tools下的evaluate all 得到如下的結果:

\

當然這種浮動視窗也可以定義一些選單攔,下面我們就來定義下選單。首先我們來看下我們下面的語句:

\

我們首先在定義浮動視窗上面寫出定義選單的語句,然後我們在定義ROLLOUT的後面加上menu:TDHmenu其中TDHmenu是定義選單的變數括號依然是我們所定義的內容,現在我們只是語句的格式說明,內容都為空。我們執行可以得到需要的結。

\

在我們的視窗上出現了我的定義的submenu的選單的名字。下面我們在進一步的編寫,在我們的選單裡面定義下拉的子選單的方法:

\

如上圖,紅色的框內是新加的2個字選單的語句 2個子選單的名字分別是開啟和關閉。

執行後就可以得到想要的效果

下面我們就為我們的浮動窗口裡面寫入控制元件,在MAX裡面有許多控制元件,如下圖:

\

我們首先在浮動的窗口裡加入上面的控制具體的語句如下:

\

其中range表示spinner控制元件的值的範圍是-100到100 預設的是0 fieldsidth:表示spinner控制元件的寬度 tooltip:表示當滑鼠移動到上面的提示字元。其中scale表示每點一下spinner所變化的最小數值,另外每個控制元件的屬性的定義不一樣,大家可以參考質料,具體的編寫方法都是這樣的,在如下

\

其中如#center前面加有“#”的表示是名稱

上面的教程我們簡單的寫了下製作這樣的控制面板的一個方法,這個只是其中的一個,下面我們就來運用這些知識寫個小指令碼製作一個

\

如上圖是一個浮動窗口裡在做一個rollout的卷展欄,然後建立一個按牛“gonghu”點開它又彈出一個浮動的視窗,在浮動的視窗的選單上點第一個子選單,彈出一個“你看懂沒有”的提示對話方塊

下面在做個簡單的建立一個BOX的指令碼具體如下:

\

其中如上面,spinner的觸發事件是“on ..changed val do”

For i in selection do表示 當i處於選擇的時候做什麼

下面是一個建立鏈子的指令碼。

\

執行後執行的結果如下圖:

\

以上的中間的事件和函式定義等等知識參考MAX的幫住檔案幾可查到相關的命令

我本人也是個CG愛好者。平時無聊的時候就看下指令碼,功能十分的強大,我也是初學者。寫的不好的地方請指正,希望熟悉更多的寫指令碼的朋友,一起提高進步。

下面副上我的美術作品以及一些骨骼的裝配作品:

\

\

\


  本文僅為提供更多資訊,不代表火星時代同意其觀點或描述,如需轉載請註明出處。

轉載於:https://my.oschina.net/jieshu/blog/103678