驅(qū)動(dòng)器原理說(shuō)明(1))
驅(qū)動(dòng)器原理說(shuō)明
我們現(xiàn)在有兩個(gè)主要操作目標(biāo)。
1、使用球體來(lái)控制立方體的縮放。
2、使用自定義的參數(shù)來(lái)控制立方體的縮放。
要實(shí)現(xiàn)以上兩個(gè)目標(biāo),我們需要分別展示兩種操作方式。但是這兩者核心都是使用了在立方體上創(chuàng)建驅(qū)動(dòng)器并且綁定驅(qū)動(dòng)它的媒介的方式來(lái)實(shí)現(xiàn)。
要實(shí)現(xiàn)使用求其的位置來(lái)控制立方體的縮放,我們采用如下的步驟:
1、首先我們創(chuàng)建了一個(gè)立方體和一個(gè)球體,我們的目的是讓球體通過(guò)控制自己的Z位置來(lái)控制立方的縮放。
2、我們先左鍵點(diǎn)擊立方體,然后再立方體的變換屬性的部分右鍵點(diǎn)擊縮放Z,選擇添加驅(qū)動(dòng)器。

點(diǎn)擊添加驅(qū)動(dòng)器之后我們發(fā)現(xiàn),立方體的Z軸的縮放顯示成了紫色,這也就表示它需要使用一個(gè)外部的媒介來(lái)控制它,且不建議使用直接縮放的方式進(jìn)行控制。也就是說(shuō),一旦某一個(gè)物體或者骨骼的某一個(gè)屬性被設(shè)定為被驅(qū)動(dòng)物,它就完全受控于它的控制媒介。這里我們看到被驅(qū)動(dòng)屬性中物體還沒(méi)有被指定,因此我們下一步將為其指定一個(gè)驅(qū)動(dòng)物。

3、為了查看物體的被驅(qū)動(dòng)詳情,我們?cè)诤蠓椒指罹€的位置右鍵點(diǎn)擊分割線,選擇垂直分割,將目前的視圖分割成兩半。

下面是被分割之后的結(jié)果。

然后我們點(diǎn)擊右邊半部分上左上角的編輯器類(lèi)型,選擇驅(qū)動(dòng)器,就可以看到驅(qū)動(dòng)窗口了。

4、在驅(qū)動(dòng)窗口中,我們看到了左上角有一個(gè)Z縮放的標(biāo)識(shí),標(biāo)識(shí)本驅(qū)動(dòng)器目前控制立方體的Z縮放,當(dāng)我們點(diǎn)擊Z縮放標(biāo)識(shí)的時(shí)候,我們發(fā)現(xiàn)有一根紅色的線顯示在了坐標(biāo)軸上。

我們按住Ctrl 和鼠標(biāo)中鍵上下移動(dòng)和左右移動(dòng),均可以調(diào)整這條曲線的顯示縮放。我們把它調(diào)整到一個(gè)比較善于觀察的大小。

5、接下來(lái)我們把這個(gè)驅(qū)動(dòng)媒介指定為絨球。

然后我們把驅(qū)動(dòng)媒介絨球控制立方體的類(lèi)型指定為Z位置,這樣,我們可以讓絨球通過(guò)調(diào)整Z位置來(lái)控制立方體的Z軸上的縮放。

6、目前我們已知絨球的位置Z是0的位置。然后我們?cè)倏从曳健?/p>
通過(guò)觀察發(fā)現(xiàn)我們目前絨球的Z軸位置就是0 ,也就是Var值,這里面有一個(gè)通過(guò)腳本表達(dá)式來(lái)最終確定控制立方體縮放大小的表達(dá)式。
這個(gè)表達(dá)式是? ?立方體縮放比例 = var+1?
其中var就是絨球Z軸位置。當(dāng)然我們除了通過(guò)表達(dá)式方式確定這種控制,還有其他方式,一會(huì)兒進(jìn)行講解,另外我們發(fā)現(xiàn)
在當(dāng)前情況下,我們紅色的這條線上有一個(gè)虛線的交匯點(diǎn),而這個(gè)交匯點(diǎn)正號(hào)在1的位置。

7、下面我們嘗試的修改絨球的Z的位置為2,我們看下立方體的情況。

我們看到由于絨球的Z位置調(diào)整成為了2.0,因此通過(guò)腳本表達(dá)式Var+1 = 2+1 =3 ,因而驅(qū)動(dòng)了立方體變成了之前的三倍。這就是通過(guò)絨球的Z軸位置來(lái)控制立方體Z軸縮放的例子。當(dāng)然我們也可以擴(kuò)展開(kāi)來(lái),我們目前確定了一個(gè)模式。就是我們可以使用一個(gè)物體上的某一個(gè)值,來(lái)通過(guò)表達(dá)式的處理控制另外一個(gè)物體的各項(xiàng)指標(biāo)。

8、我們現(xiàn)在調(diào)整表達(dá)式為立方體Z縮放=var(絨球Z位置),然后我們調(diào)整絨球Z位置為3的時(shí)候發(fā)現(xiàn)立方體Z縮放也變成了3。


9、下面我們討論一些其他的驅(qū)動(dòng)方式,我們這里調(diào)整驅(qū)動(dòng)方式為平均化值。這種情況下,我們的表達(dá)式將作廢。

然后我們繼續(xù)調(diào)整球體的Z軸上下。我們發(fā)現(xiàn)球體Z軸的位置決定了立方體Z的縮放值。

10、但是平均化值其實(shí)并不是給一個(gè)驅(qū)動(dòng)器使用的,而是當(dāng)有多個(gè)驅(qū)動(dòng)器驅(qū)動(dòng)它的時(shí)候,可以用多個(gè)驅(qū)動(dòng)器的值的平均數(shù)來(lái)控制這個(gè)立方體。我們舉個(gè)例子。假設(shè)我們現(xiàn)在再創(chuàng)建兩個(gè)驅(qū)動(dòng)器,并加到這個(gè)立方體上。具體做法如下:
首先我們創(chuàng)建三個(gè)物體,分別是不同的形狀,但是他們共同的特點(diǎn)是X軸的位置值都是0,我們打算利用這三個(gè)值得平均值來(lái)控制立方體的縮放。
我們選擇立方體,在驅(qū)動(dòng)器的面板上點(diǎn)擊添加輸入變量,讓變量增加到三個(gè)。

指定物體為這三個(gè)物體,且指定類(lèi)型為平均化值。

然后我們針對(duì)三個(gè)物體分別設(shè)定X的位置為1 2 3.我們發(fā)現(xiàn)最后我們得到了立方體的縮放為 1+2+3 除以3 也就是2.0 。因此通過(guò)分別控制這三個(gè)物體,來(lái)共同控制這一個(gè)立方體。

11、因此,像是最大值最小值這種類(lèi)型的情況,我們就應(yīng)該能理解了。舉個(gè)例子,如果你是用三個(gè)物體來(lái)控制一個(gè)物體的縮放最小值。這個(gè)物體的縮放大小將根據(jù)三個(gè)物體設(shè)定指標(biāo)的最小值來(lái)控制這個(gè)物體。比如說(shuō)如果三個(gè)物體在Z軸上位置調(diào)整為2、3、 4,那么當(dāng)我們選擇縮放這個(gè)立方體的Z軸的時(shí)候,如果選擇最小值,那么這個(gè)立方體的縮放將變?yōu)?2、3、4 中的最下值,也就是2.0。如下圖:

12、另外,我們也可以根據(jù)對(duì)控制曲線的操控,來(lái)控制一個(gè)物體的縮放大小。
我們按住Shift 點(diǎn)擊鼠標(biāo)右鍵,即可挪動(dòng)添加關(guān)鍵幀的位置,然后在這個(gè)位置按I增加一個(gè)關(guān)鍵幀。

點(diǎn)擊控制線路的杠桿的圓點(diǎn),來(lái)控制曲線彎折。

再次使用Shift+右鍵更換藍(lán)色線的交叉單,然后再增加一個(gè)關(guān)鍵幀。


通過(guò)以上這種方式我們調(diào)整出來(lái)一條曲線。

這條曲線我們的理解就是當(dāng)你把控制器的X軸從0開(kāi)始調(diào)整到10,那么你會(huì)發(fā)現(xiàn)立方體的Z軸縮放是先上升,在下降,然后反向縮放到負(fù)2左右,然后有上升到3倍左右,當(dāng)我們繼續(xù)把X軸從10繼續(xù)加大的時(shí)候我們發(fā)現(xiàn)這個(gè)立方體不會(huì)再繼續(xù)增大了。

由于時(shí)間有限,我們將在下一節(jié)講述使用自定義的參數(shù)來(lái)控制立方體的縮放功能,這和我們屬性骨控制骨骼息息相關(guān),請(qǐng)大家繼續(xù)關(guān)注后續(xù)的操作。
?
?
?
?
?