朱峰社區(qū)首頁(yè) 朱峰社區(qū)

搜索資源 注冊(cè)|登陸

等待

返回 展開菜單
按功能 按軟件

Maya材質(zhì)

Maya材質(zhì)

包含14節(jié)視頻教程

從零基礎(chǔ)開始講解maya強(qiáng)大的材質(zhì)編輯。包括uv、貼圖技術(shù)、各種材質(zhì)疊加,還有手繪材質(zhì)貼圖等技術(shù)!

關(guān)閉

MAYA表達(dá)式的運(yùn)用

關(guān)注:1626 留言:1 樓主:艾瑪呀 發(fā)帖時(shí)間:12年1月7日

艾瑪呀

普通會(huì)員

艾瑪呀

社區(qū)新人:1級(jí)

關(guān)注3074人

  • 性別

  • 年齡

    21

  • 積分

    21

  • 登陸

    6

  • 發(fā)帖

    11

  • 留言

    5

間隔線

一提到表達(dá)式和 mel 語(yǔ)言,不少網(wǎng)友總是嘆氣。似乎這一類的東西是我們,尤其是非編程者遙不可及的。其實(shí)我也沒有學(xué)過(guò) c++ 、 delphy 語(yǔ)言,和不少學(xué)習(xí)文科的朋友一樣美術(shù)才是我的專業(yè)。現(xiàn)在也是如此。我想只要具有高中程度的數(shù)學(xué)、英語(yǔ)和物理知識(shí),學(xué)習(xí)表達(dá)式動(dòng)畫就足以了。三維的世界像海洋一樣,堅(jiān)持下來(lái),我們每個(gè)人都是采珍珠的勇士。 一functions-- 函數(shù) 首先我們來(lái)分析一下一段含有 maya 內(nèi)嵌函數(shù)的表達(dá)式語(yǔ)句 object.translatey=sin(time)+6; object 當(dāng)前場(chǎng)景中要設(shè)表達(dá)式的物體 . 分隔符 translatey 屬性 = 指定運(yùn)算符 sin 函數(shù)    () 邏輯運(yùn)算符 time 變量 + 數(shù)學(xué)運(yùn)算符 6 常量 ; 終結(jié)符    目前要討論的范圍是以 sin 為代表的函數(shù),它們的作用是將物體按一定的特殊規(guī)律運(yùn)動(dòng)。上例中 object 從世界坐標(biāo)軸的中心沿 y 軸以 sin 三角函數(shù)圖像運(yùn)動(dòng)規(guī)律進(jìn)行往返運(yùn)動(dòng)。 二數(shù)學(xué)函數(shù)的用法    了解這一部分的內(nèi)容最好能夠參考高中教本關(guān)于三角函數(shù)的章節(jié)。 abs 是 absoulte 的縮寫意思是取決對(duì)值。    例如: int abs(int number) float abs(float number) vector abs(vector number)    函數(shù)名是 abs, 它將返回 number 的絕對(duì)值。絕對(duì)值是沒有正負(fù)數(shù)之分的數(shù)值。    本例說(shuō)明 abs 函數(shù)有 3 種格式。每種格式要求一個(gè)不同數(shù)據(jù)類型的參數(shù)并返回一個(gè)不同數(shù)據(jù)類型的值。    第一個(gè)格式說(shuō)明用戶可以鍵入整數(shù)類型參數(shù),并且函數(shù)返回一個(gè)整數(shù)。比如, abs(-3) 返回?cái)?shù)值 3 。    第二個(gè)格式說(shuō)明用戶可以鍵入一個(gè)浮點(diǎn)類型參數(shù),并且函數(shù)返回一個(gè)浮點(diǎn)數(shù),比如, abs(-7.54) 返回 7.54 。    第三個(gè)格式說(shuō)明可以鍵入一個(gè)向量,而且函數(shù)返回一個(gè)向量。比如, abs(<<3, -6.3, -2>> 返回 <<3, 6.3, 2>> 。 acos    返回的是一個(gè)數(shù)值的反余弦弧度值,其范圍是 0~ pi 。 float acos(float number) number 是角的余弦值,其范圍是 -1~1 。    例如: acos(1)    返回值是 0 。 acos(-0.5)    返回的是 2.0944 弧度。 acosd    返回的是一個(gè)數(shù)值的反余弦角度值,其范圍是 0~180 。 float acosd(float number) number 是角的余弦值,范圍是 -1~1 。    例如: acosd(1)    返回值是 0 度。 acosd(-0.5)    返回值是 120 度。 asin    返回值是一個(gè)數(shù)值的反正弦弧度值,其范圍是 -pi/2 到 pi/2 。 f loat asin(float number) number 是角的正弦值,其范圍是 -1~1 。    例如: asin(0.5)    返回值是 0.525 弧度。 asind    返回的是一個(gè)數(shù)值的反正弦度數(shù)值,其范圍是 -90 到 90 。 float asind(float number) number 是角的正弦值,范圍是 -1~1 。    例如: asind(0.5)    返回的是 30 度。 atan    返回的是一個(gè)數(shù)值的反正切弧度值,其范圍是 -pi/2 到 pi/2 。 float atan(float number) number 是角的正切值,可為任何值。    例如: atan(1)    返回值是 0.785 。 atand    返回的是一個(gè)數(shù)值的反正切角度值,其范圍是 -90~90 度。 float atand(float number) number 是角的正切值,可為任何值。    例如: atand(1)    返回的是 45 度。 atan2    返回的是一個(gè)在 x,y 坐標(biāo)軸中指定的反正切弧度值。這個(gè)角是以 x 軸為一邊,另一邊是由原點(diǎn)和坐標(biāo)系    中一點(diǎn)形成的直線構(gòu)成。返回的角以弧度為單位,范圍是 -pi 到 pi 。 float atan2(float y, float x) x 是點(diǎn)的 x 坐標(biāo)。 y 是點(diǎn)的 y 坐標(biāo)。    例如: atan2(1,1)    返回的是 0.785 弧度。    今天就寫到這,已經(jīng)很晚了,歡迎與我共同討論 to be continue   今天加上 math functions 的最后一部分,來(lái)結(jié)素這個(gè)話題。其他的函數(shù)由于他們比較好理解,就不做說(shuō)明了。畢竟一個(gè)人的能力是有限的。有點(diǎn)對(duì)不住大家了。 atan2d    返回的是一個(gè)在 x,y 坐標(biāo)系中指定的反正切角度值。返回的角以度為單位,范圍是 -180 到 180 度。 float atan2d(float y, float x) x 是點(diǎn)的 x 坐標(biāo)。 y 是點(diǎn)的 y 坐標(biāo)。    例如: atan2d(1,1)    返回 45 度。 hypot    返回的是從原點(diǎn)到在 x, y 坐標(biāo)系點(diǎn)的二維向量值 . angle    返回向量間的弧度角 . float angle(vector vector1, vector vector2) vector1 是一個(gè)向量。 vector2 是另一個(gè)向量。    返回角是兩個(gè)向量所夾角中的最小角,它通常小于 180 度。    例如: angle(<<2,-1,1>>,<<1,1,2>>    返回 1.0472 弧度,它等于 60 度。 cross    返回由兩個(gè)向量定義的叉乘值。    對(duì)于兩個(gè)向量,叉乘值是由兩個(gè)向量定義而成的面的法線, vector cross(vector vector1, vector vector2)    若叉乘值是 0 ,那么可能是兩個(gè)向量平行或在同一條直線上。若一個(gè)或兩個(gè)向量是 <<0,0,0>> ,那么叉乘    值返回 <<0,0,0>> 。 vector1 是一個(gè)向量。 vector2 是另一個(gè)向量。    例如: cross(<<1,2,-2>>,<<3,0,1>>    返回值是 <<2, -7, -6>> 。 dot    返回兩個(gè)向量的浮點(diǎn)點(diǎn)積。點(diǎn)積把兩個(gè)向量作為自變量并返回一個(gè)標(biāo)量值。 float dot(vector vector1, vector vector2)    如果點(diǎn)積返回 0 ,那么兩個(gè)向量是垂直的。 vector1 是一個(gè)向量。 vector2 是另一個(gè)向量。    例如: dot(<<1,2,-2>>,<<3,0,1>>    返回 1 ,這個(gè)例如的點(diǎn)積是 (1 * 3) + (2*0) + (-2*1), 它等于 1 。 mag    返回向量的值,它是向量的長(zhǎng)度, float mag(vector vector) vector 是所要得到數(shù)值的向量。 mag 函數(shù)使用下列公式把向量轉(zhuǎn)換為一個(gè)浮點(diǎn)數(shù)。    例如: mag(<<7,8,9>>    返回值 13.928 。 rot    返回一個(gè)向量,它代表以指定軸旋轉(zhuǎn)一定弧度后點(diǎn)的位置。 vector rot(vector point, vector axis, float angle) point 是在世界坐標(biāo)系中點(diǎn)的位置。 axis 是點(diǎn)圍繞之旋轉(zhuǎn)的軸。這個(gè)軸是一條經(jīng)過(guò)原點(diǎn)的有指定方向的線。 angle 是點(diǎn)所旋轉(zhuǎn)的弧度。    例如: rot(<<3,3,0>>,<<1,0,0>>,0.5)    返回值為 <<3, 2.633, 1.438>> 。這是一個(gè)向量,它是沿 <<1,0,0>> 的軸旋轉(zhuǎn) 0.5 弧度后點(diǎn)的位置在 <<3,3,0>>    的向量。    例如: particleshape1.position = rot(position,<<0,1,0>>,0.1);    假定在場(chǎng)景中有一個(gè)單粒子物體,它的位置是 <<4,6,0>> ,并為它的粒子形節(jié)點(diǎn)寫了上面的 runtime 表達(dá)    式。播放動(dòng)畫時(shí),粒子將沿 y 軸旋轉(zhuǎn)成一個(gè)圓形圖案。    在每幀中,粒子旋轉(zhuǎn) 0.1 弧度,約為 5.7 度, unit    返回一個(gè)和向量相應(yīng)的 unit 向量。 unit 向量具有和指定向量相同的方向,但是它的數(shù)量是 1 。 vector unit(vector vector) vector 是和 unit 向量相應(yīng)的向量,    例如: unit(<<1,1,1>>    返回 <<0.577, 0.577, 0.577>> 。

贊3 踩3

2樓:你懂了嗎? 留言時(shí)間:12年1月7日

你懂了嗎?

普通會(huì)員

你懂了嗎?

社區(qū)朋友:2級(jí)

關(guān)注5191人

  • 性別

  • 年齡

    20

  • 積分

    26

  • 登陸

    6

  • 回復(fù)

    20

間隔線

好東西呀 不過(guò)好亂

贊5 踩5

未知用戶

2005-2024 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號(hào)-1
2005-2024 ZhuFeng Community All Rights Reserved

VIP

朱峰社區(qū)微信公眾號(hào)

回頂部

1.復(fù)制文本發(fā)給您的QQ好友或群、微信等;好友點(diǎn)擊鏈接以后,轉(zhuǎn)發(fā)就成功了。 2.如朋友點(diǎn)擊您的鏈接,您需要需刷新一下才行;同一個(gè)好友僅能點(diǎn)擊一次。
購(gòu)買VIP,觀看所有收費(fèi)教程!