? 猫咪AV成人永久网站在线观看,天堂国产+人+综合+亚洲欧美,欧美成妇人在线播放
聯(lián)系我們

給我們留言

聯(lián)系我們

地址:福建省晉江市青陽街道洪山路國際工業(yè)設(shè)計園納金網(wǎng)

郵箱:info@narkii.com

電話:0595-82682267

(周一到周五, 周六周日休息)

當(dāng)前位置:主頁 > 3D教程 > 圖文教程

Houdini 創(chuàng)建函數(shù)實例

來源: 未知 | 責(zé)任編輯:嘀咕 | 發(fā)布時間: 2014-05-30 16:17 | 瀏覽量:

上節(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ù)編輯器

  1. 選擇Edit > Aliases and Variables 打開 Aliases(別名)和Variables(變量)編輯器。

  2. 點擊 Expressions 選項.

創(chuàng)建新的自定義函數(shù)。

  1. 打開函數(shù)編輯器 (見上面)。

  2. 在大的文本框中輸入自定義函數(shù)。

  3. 點擊Apply Changes。 我們定義的函數(shù)將會在左邊的函數(shù)列表中出現(xiàn)。

從外部文件中加載

  • 右下角的自定義函數(shù)編輯器中單擊加號圖標(biāo),并選擇要加載的文件。

  • 也可以使用 exread 命令。

在外部編輯器中編輯函數(shù)源碼:

  1. 在右下角的自定義函數(shù)編輯器,點擊“Edit”按鈕。

  2. 在外部編輯器中編輯函數(shù)源碼,然后保存關(guān)閉返回給Houdini。

  3. 也可以使用 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;
}

 

還有相關(guān)教程,如Houdini 流體基礎(chǔ)教程,歡迎閱讀!

相關(guān)文章
網(wǎng)友評論

您需要登錄后才可以發(fā)帖 登錄 | 立即注冊

關(guān)閉

全部評論:0條

推薦
熱門