Houdini 創(chuàng)建函數(shù)實例
上節(jié)教程我們學(xué)習(xí)了Houdini Python編程實例,本文主要講解如何創(chuàng)建自定義Houdini函數(shù)(如果對Python不了解的同學(xué)可以查看,Python教程)。
自定義函數(shù)的結(jié)構(gòu)如下:
[返回值] 函數(shù)名([[參數(shù)類型1] 參數(shù)1 [, [參數(shù)類型2] 參數(shù)2] ...]) { 函數(shù)體 }
返回值的類型包括float(浮點小數(shù)), string(字符串), vector(向量), or matrix(矩陣)。
特別注意:
如果你沒有明確列出的返回類型或參數(shù)的類型,Houdini將假定它是一個浮動,將會默認(rèn)將其他數(shù)據(jù)類型改變成一個浮點類型。如果你忘記指定一個參數(shù)是一個字符串,Houdini將它轉(zhuǎn)換為浮點類型,可能會導(dǎo)致難以發(fā)現(xiàn)的Bug。
函數(shù)定義的主體,可以使用額外的語法,如賦值(=,+=, - =),if,while等使用return 獲取返回值。
使用#開頭的行是注釋,Houdini將忽略。
創(chuàng)建自定義函數(shù)過程:
打開函數(shù)編輯器
-
選擇Edit > Aliases and Variables 打開 Aliases(別名)和Variables(變量)編輯器。
-
點擊 Expressions 選項.
創(chuàng)建新的自定義函數(shù)。
-
打開函數(shù)編輯器 (見上面)。
-
在大的文本框中輸入自定義函數(shù)。
-
點擊Apply Changes。 我們定義的函數(shù)將會在左邊的函數(shù)列表中出現(xiàn)。
從外部文件中加載
-
右下角的自定義函數(shù)編輯器中單擊加號圖標(biāo),并選擇要加載的文件。
-
也可以使用 exread 命令。
在外部編輯器中編輯函數(shù)源碼:
-
在右下角的自定義函數(shù)編輯器,點擊“Edit”按鈕。
-
在外部編輯器中編輯函數(shù)源碼,然后保存關(guān)閉返回給Houdini。
-
也可以使用 exread 命令。
測試新的函數(shù)
-
在自定義函數(shù)的左下角點擊Textport按鈕。
-
在文本框中輸入
echo `yourfunction()`
函數(shù)實例:
# 比較兩個數(shù)的大小,沒有定義返回值類型,默認(rèn)返回浮點類型。 min(v1, v2) { if (v1 < v2) { return v1; } else { return v2; } } # 返回字符串 string strreverse(string in) { float len = strlen(in); string result = ""; for (src = len-1; src >= 0; src--) { result += in[src]; return result; } } # 返回最小的向量 float vecmin(vector vec) { min = vec[0]; for (i = 1; i < vsize(vec); i++) { if (vec[i] < min) min = vec[i]; } return min; }
- Tags:Houdini
-
分享到:
全部評論:0條