顯示具有 3D電腦動畫 標籤的文章。 顯示所有文章
顯示具有 3D電腦動畫 標籤的文章。 顯示所有文章

.bvh檔案匯入3dsmax biped模組

最近工作上遇到一個有趣的問題,需要將動作擷取的動作資料轉換到3dsmax的biped模組上,而委託者希望擷取時能同步觀看模型的動作,一開始聽到這樣的需求,腦袋直覺的就是想說利用motionbuilder擷取動作後,將動作資料plot到骨架上,匯出.bvh格式,再到3dsmax的biped模組匯入即可。
問題來了,不管是在motionbuilder內指定biped template還是character都無法順利將.bvh匯入,雖說可以直接使用.fbx格式將模型整個用3dsmax開啟,但就失去biped的編修功能了,骨架命名也改過了,但還是會出現如下圖的問題。



將.bvh打開,發現.bvh的內容跟character那些關系不大,重點在於骨架的階層關系,解決方式是,上網開始尋找各式免費的.bvh格式及修改工具如bvhacker,將下載回來的.bvh一個一個匯入至3dsmax biped模組中,直到找到能正確匯入的為止,比對一下跟原先的骨架,果然差很多。


將可以匯入的.bvh用motionbuilder打開,會出現一組帶有keyframe的骨架,選取骨架並右鍵/ZERO/Rotation,骨架的關節會歸零,然後將骨架上之keyframe砍光後調整骨架如圖中所示之"T Pose",指定一character至環境內,然後將此T pose骨架指定成一character(這邊建議用手動拖拉的方式指定,因為骨架命名格式與標準character格式有所差異)
注意!一定要先將骨架調整成T pose狀態,要不然動作會有問題。




接下來就不是什麼問題了,將動作資料套在骨架上,


匯出成.bvh檔,骨架架構應該如下圖


要注意位移資料要勾選寫入


進3dsmax biped模組匯入.bvh檔案(一開始還會有警告視窗,但可以不用理它)


可以看到biped骨架已經有動作出現,但是骨架變的很怪



直接使用biped模組的存檔功能,將檔案存成.bip檔


reset整個3dsmax,開啟一個新的biped,匯入剛剛存好的.bip檔,可以看到骨架是正常的且套入.bvh的動作資料了








其實這樣的作法只是將骨架轉換成biped模組可用的骨架階層而已,當然也可以土法煉鋼直接用修改的方式將骨架改到對為止,但是這樣的方法很麻煩且必需一直測試。要是動作相當多的話motionbuilder本身是可以將動作的take自動匯出成多個.bvh,最後轉換成.bip的部份也可以用批次的方式處理,這樣的作法可以加快不少設定的流程。
最近工作上遇到一個有趣的問題,需要將動作擷取的動作資料轉換到3dsmax的biped模組上,而委託者希望擷取時能同步觀看模型的動作,一開始聽到這樣的需求,腦袋直覺的就是想說利用motionbuilder擷取動作後,將動作資料plot到骨架上,匯出.bvh格式,再到3dsmax的biped模組匯入即可。
問題來了,不管是在motionbuilder內指定biped template還是character都無法順利將.bvh匯入,雖說可以直接使用.fbx格式將模型整個用3dsmax開啟,但就失去biped的編修功能了,骨架命名也改過了,但還是會出現如下圖的問題。



將.bvh打開,發現.bvh的內容跟character那些關系不大,重點在於骨架的階層關系,解決方式是,上網開始尋找各式免費的.bvh格式及修改工具如bvhacker,將下載回來的.bvh一個一個匯入至3dsmax biped模組中,直到找到能正確匯入的為止,比對一下跟原先的骨架,果然差很多。


將可以匯入的.bvh用motionbuilder打開,會出現一組帶有keyframe的骨架,選取骨架並右鍵/ZERO/Rotation,骨架的關節會歸零,然後將骨架上之keyframe砍光後調整骨架如圖中所示之"T Pose",指定一character至環境內,然後將此T pose骨架指定成一character(這邊建議用手動拖拉的方式指定,因為骨架命名格式與標準character格式有所差異)
注意!一定要先將骨架調整成T pose狀態,要不然動作會有問題。




接下來就不是什麼問題了,將動作資料套在骨架上,


匯出成.bvh檔,骨架架構應該如下圖


要注意位移資料要勾選寫入


進3dsmax biped模組匯入.bvh檔案(一開始還會有警告視窗,但可以不用理它)


可以看到biped骨架已經有動作出現,但是骨架變的很怪



直接使用biped模組的存檔功能,將檔案存成.bip檔


reset整個3dsmax,開啟一個新的biped,匯入剛剛存好的.bip檔,可以看到骨架是正常的且套入.bvh的動作資料了








其實這樣的作法只是將骨架轉換成biped模組可用的骨架階層而已,當然也可以土法煉鋼直接用修改的方式將骨架改到對為止,但是這樣的方法很麻煩且必需一直測試。要是動作相當多的話motionbuilder本身是可以將動作的take自動匯出成多個.bvh,最後轉換成.bip的部份也可以用批次的方式處理,這樣的作法可以加快不少設定的流程。

最近弄的一個小東西...



整整一個月沒發文,因為被一些瑣事煩著(一方面也是沒啥東西好寫加上懶)

來說說前幾天進行的一個工作好了,這是因為某些理由,必須在幾天內弄出來的小動畫,動畫本身並沒有什麼內容,只是一個單純的DEMO而以。由於作業的時間很短,可以說很趕(加上魔獸改版,不玩玩怎麼行,雖然我的術士被打爆了...)所以就利用之前擷取的一段動作來作。

動作本身還算OK,也沒太多的時間修正,就把腳跟地板的一些地方處理一下,其他的就先這樣吧,這邊主要是利用MotionBuilder來作動作的處理。

丟到MAYA裡進行材質以及算圖的製作,最主要我也想試試RenderLayer對於後製的應用效率,所以我把人體的質感分成外框線,內部的暈染,還有手部動作畫出軌跡的水墨質感...

內部的暈染使用了之前提過的Sample Info效果,這是一個很實用的技巧,建議大家一定要試試。



人體外框線的部分則是使用了Toon的功能,它在Render模組下的Toon功能,給他加上一個Dark profile即可。然後用RenderLayer分開跑。



原本想說就這樣,但是試跑了一次覺得有點單調,就想說增加點效果,於是對手部的動作就增加了一個Emitter發射器,用父子關系跟手部的骨架連結,然後對分子作設定。particles的speed跟life是設定上的重點,因為筆畫必須消失,要不然整個畫面都是毛筆的黑色。







對分子的Shader進行設定。是利用Ramp,然後加上Noise對材質的透明度作控制所作出來的質感。這邊我弄的可能不是最標準的作法,應該會有更好的效果,但是時間緊,也就不去追究了,有時間再說。


設定好分子,記得對人本身加個Use background的材質,這樣作合成才會讓墨跡跟人有前後關系。


算好之後把檔案丟進AE(其實我不會AE,只好把它當成會動的Photoshop操作)。
覺得外框線感覺不對,太硬了,所以加一點高斯模糊。
增加模糊前


增加模糊後





用photoshop作一張像是泛黃紙質的底圖。





全部加好之後的效果


前面Maya在跑圖時,就用Garage band趕緊把音樂弄一下(這大概也是我Power Book唯二能作的事了吧)

使用Render Layer的方式將所需的質感分開跑圖,在後製修改時增加了不少彈性,而且規畫好進行算圖時也可以減少出錯的機會,就算出錯也不會一次全部陣亡,只要針對那個Layer作調整就好。

完成後發現還有好多要修的地方,但是至少這玩意兒可以先出去了,後續的修整就看啥時有空吧,雖然這玩意兒幾乎是一個人作完的,可是在此還是要感謝小藍幫我處理一些設定上的動作,還有耀宗幫我解決AE無法跑圖的問題,太謝謝你們了。


整整一個月沒發文,因為被一些瑣事煩著(一方面也是沒啥東西好寫加上懶)

來說說前幾天進行的一個工作好了,這是因為某些理由,必須在幾天內弄出來的小動畫,動畫本身並沒有什麼內容,只是一個單純的DEMO而以。由於作業的時間很短,可以說很趕(加上魔獸改版,不玩玩怎麼行,雖然我的術士被打爆了...)所以就利用之前擷取的一段動作來作。

動作本身還算OK,也沒太多的時間修正,就把腳跟地板的一些地方處理一下,其他的就先這樣吧,這邊主要是利用MotionBuilder來作動作的處理。

丟到MAYA裡進行材質以及算圖的製作,最主要我也想試試RenderLayer對於後製的應用效率,所以我把人體的質感分成外框線,內部的暈染,還有手部動作畫出軌跡的水墨質感...

內部的暈染使用了之前提過的Sample Info效果,這是一個很實用的技巧,建議大家一定要試試。



人體外框線的部分則是使用了Toon的功能,它在Render模組下的Toon功能,給他加上一個Dark profile即可。然後用RenderLayer分開跑。



原本想說就這樣,但是試跑了一次覺得有點單調,就想說增加點效果,於是對手部的動作就增加了一個Emitter發射器,用父子關系跟手部的骨架連結,然後對分子作設定。particles的speed跟life是設定上的重點,因為筆畫必須消失,要不然整個畫面都是毛筆的黑色。







對分子的Shader進行設定。是利用Ramp,然後加上Noise對材質的透明度作控制所作出來的質感。這邊我弄的可能不是最標準的作法,應該會有更好的效果,但是時間緊,也就不去追究了,有時間再說。


設定好分子,記得對人本身加個Use background的材質,這樣作合成才會讓墨跡跟人有前後關系。


算好之後把檔案丟進AE(其實我不會AE,只好把它當成會動的Photoshop操作)。
覺得外框線感覺不對,太硬了,所以加一點高斯模糊。
增加模糊前


增加模糊後





用photoshop作一張像是泛黃紙質的底圖。





全部加好之後的效果


前面Maya在跑圖時,就用Garage band趕緊把音樂弄一下(這大概也是我Power Book唯二能作的事了吧)

使用Render Layer的方式將所需的質感分開跑圖,在後製修改時增加了不少彈性,而且規畫好進行算圖時也可以減少出錯的機會,就算出錯也不會一次全部陣亡,只要針對那個Layer作調整就好。

完成後發現還有好多要修的地方,但是至少這玩意兒可以先出去了,後續的修整就看啥時有空吧,雖然這玩意兒幾乎是一個人作完的,可是在此還是要感謝小藍幫我處理一些設定上的動作,還有耀宗幫我解決AE無法跑圖的問題,太謝謝你們了。

崑山科技大學基礎公仔製作班



崑山科技大學基礎公仔製作班

活動時間:97年10月2日至10月3日 上午09:00~下午17 :30
活動地點:崑山科技大學視覺傳達設計系
指導單位:教育部技職司
主辦單位:崑山科技大學 產品開發技術研發中心

課程內容是公仔材料及工具應用、原型燒製、水砂打磨,到開模要領、複製要領、成品修整上色等基礎課程,歡迎有興趣的朋友來報名參加!

講師是特別請到了16年專業模型製作師、台南造研所設計工作室負責人夏宏仁老師

活動洽詢:崑山科技大學 產品開發技術研發中心 黃美瑜小姐
電 話:(06)205-9715轉13

PS.時間以及地點還有可能會更改,所以活動細節還是建議打電話問一下比較好哦!


崑山科技大學基礎公仔製作班

活動時間:97年10月2日至10月3日 上午09:00~下午17 :30
活動地點:崑山科技大學視覺傳達設計系
指導單位:教育部技職司
主辦單位:崑山科技大學 產品開發技術研發中心

課程內容是公仔材料及工具應用、原型燒製、水砂打磨,到開模要領、複製要領、成品修整上色等基礎課程,歡迎有興趣的朋友來報名參加!

講師是特別請到了16年專業模型製作師、台南造研所設計工作室負責人夏宏仁老師

活動洽詢:崑山科技大學 產品開發技術研發中心 黃美瑜小姐
電 話:(06)205-9715轉13

PS.時間以及地點還有可能會更改,所以活動細節還是建議打電話問一下比較好哦!

還是久違的3D..

這是這個禮拜的第二個景了,其實是同一個單位要兩個景,所以這個禮拜都在搞這兩個景,對於有些小地方還是沒有掌握到,不過由於有時間壓力,也只能先這樣了...T_T

一樣,一個簡單的模型。


後來的效果。


這次因為有點趕,在最後的一些地方慌了手腳.........所以....也就這樣吧...先交出去再說,未來有時間再修好了。最近作3D作到有點想吐,打算接下來換玩processing或是virtools舒解一下壓力。

再次感謝小藍陪我跟材質奮戰,讓我在晚上離開無人的校園時不會那麼寂寞。
這是這個禮拜的第二個景了,其實是同一個單位要兩個景,所以這個禮拜都在搞這兩個景,對於有些小地方還是沒有掌握到,不過由於有時間壓力,也只能先這樣了...T_T

一樣,一個簡單的模型。


後來的效果。


這次因為有點趕,在最後的一些地方慌了手腳.........所以....也就這樣吧...先交出去再說,未來有時間再修好了。最近作3D作到有點想吐,打算接下來換玩processing或是virtools舒解一下壓力。

再次感謝小藍陪我跟材質奮戰,讓我在晚上離開無人的校園時不會那麼寂寞。

久違的3D

一段時間沒碰3D了,生疏了不少。
這是某個單位臨時要的一個景,所以這兩天就在搞這個,之前王以斌老師上的課真的幫助很大,這次在某些地方作的比以前好多了。

模型作的很簡單,稍微拉一下型而以。


這是最後的效果


要特別感謝小藍學弟這幾天都陪我,還幫我買便當,有些貼圖問題也是問他的,還有阿權學弟,提供很多資料給我!!在這邊謝謝你們了。
一段時間沒碰3D了,生疏了不少。
這是某個單位臨時要的一個景,所以這兩天就在搞這個,之前王以斌老師上的課真的幫助很大,這次在某些地方作的比以前好多了。

模型作的很簡單,稍微拉一下型而以。


這是最後的效果


要特別感謝小藍學弟這幾天都陪我,還幫我買便當,有些貼圖問題也是問他的,還有阿權學弟,提供很多資料給我!!在這邊謝謝你們了。

【MAYA】Sample Info參數應用

最近用工研院的東西,弄了一個材質效果還挺有趣的,是類似血液的效果,原理是用到sample info這個參數(在此要再次感謝王以斌老師當初上的課),下面是我制作的方法,有興趣的朋友不妨參考看看。
制作好的樣子就像這樣


首先,我們先制作出一個類似流體的模型,如圖


接著,我們打開HyperShade視窗並新增一個Lambert材質


到左邊的Create Maya Nodes找到Ramp這個參數,按一下將它新增到右邊的Work Area視窗內


在Create Maya Nodes的欄位繼續往下找,找到Smaple Info這個參數,按一下新增到Work Area視窗內


按兩下Ramp的參數,將它的設置打開,將顏色調整如圖

在Hyper Shade視窗中用滑鼠中鍵拖拉Sample Info的參數到Ramp的參數上,會跳出一個下拉選單,選擇Default,會出現如圖中的Connection Editor視窗



選擇Facing Ratio跟Uv Coord選單下的v coord,作連結(這邊是從Sample Info連結到Ramp的參數)


我們要用這個Ramp來作材質的透明效果,所以我們把Ramp按住中鍵拖拉到lambert材質的Transparency的位置


此時可以看到材質球的預覽已經改變,接下來調整一下color屬性以及Translucence屬性就OK了!(之所以要調整Translucence是因為這種材質可以利用打光作出透光效果增加細節)


Sample Info是一個相當實用的材質參數,多玩玩有時後會有些意想不到的效果,希望對大家有幫助,謝謝!
最近用工研院的東西,弄了一個材質效果還挺有趣的,是類似血液的效果,原理是用到sample info這個參數(在此要再次感謝王以斌老師當初上的課),下面是我制作的方法,有興趣的朋友不妨參考看看。
制作好的樣子就像這樣


首先,我們先制作出一個類似流體的模型,如圖


接著,我們打開HyperShade視窗並新增一個Lambert材質


到左邊的Create Maya Nodes找到Ramp這個參數,按一下將它新增到右邊的Work Area視窗內


在Create Maya Nodes的欄位繼續往下找,找到Smaple Info這個參數,按一下新增到Work Area視窗內


按兩下Ramp的參數,將它的設置打開,將顏色調整如圖

在Hyper Shade視窗中用滑鼠中鍵拖拉Sample Info的參數到Ramp的參數上,會跳出一個下拉選單,選擇Default,會出現如圖中的Connection Editor視窗



選擇Facing Ratio跟Uv Coord選單下的v coord,作連結(這邊是從Sample Info連結到Ramp的參數)


我們要用這個Ramp來作材質的透明效果,所以我們把Ramp按住中鍵拖拉到lambert材質的Transparency的位置


此時可以看到材質球的預覽已經改變,接下來調整一下color屬性以及Translucence屬性就OK了!(之所以要調整Translucence是因為這種材質可以利用打光作出透光效果增加細節)


Sample Info是一個相當實用的材質參數,多玩玩有時後會有些意想不到的效果,希望對大家有幫助,謝謝!

virtools超超超初階基本操作介紹

話說前幾天原來是我搞錯,是為期四天的virtools教育訊練,就趁著午休時,作了這個小解說。

這個是教育訊練的老師來上課時教我們的第一個小練習,主要是讓大家對virtools的基本操作有一些概念,從新增物件到場景,增加building block,設定參數,以及新增運算元件到播放出來。

首先,我們打開virtools之後,我們到右上角,virtools resoures的選單,將3D Entities下的Object打開,在裡面有很多的3D元件可以拿出來使用,我們隨便選一個飛標的出來用,置入場景的方式非常簡單,只要將飛標拖拉到左方的3D Layout裡即可。




然後我們到下方的Level Manager裡,從Global選單裡找到"Dart"(飛標)的項目,選取並且點一下上方的Set Ic For Select,這是要定義飛標的初始值,讓他未來可以歸零,要不然未來播放後,物件無法還原到播放前的狀態。


然後我們要針對這個場景設置一個Script讓飛標有動作,我們一樣在Level Manager管理視窗下,在"Level"上按右鍵,選"Creat New Script",可以看到下面多了一個"Level Script"。


接下來,到Level Manager的左方,有個Schemetic視窗,可以發現原本沒東西的,現在多了一個Level Script的東西,由於我們要新增資源,而且要新增的是Building Blocks的互動元件,所以要到上方的資源視窗的Building Blocks裡,3D Transfomations下的Basic找到Rotate這個Building Block,將他拖拉到下方的Schemetic視窗裡,就會新增一個Rotate(旋轉)的Building Block,左右兩邊的箭頭是輸入以及輸出端,上方的小箭頭則是可以設定的參數以及屬性,而上方的小方塊是輸入的資料,點一下小方塊,按一下空白,就可以直接看目前的參數設定。





有點不明白的話,點兩下Rotate,可以看到內部設置,其實就跟小方塊的一樣。
我們點開Rotate直接對其作設置,最上方的Target,是要作用的目標,在這邊目標是飛標,所以我們選Dart,要針對Y軸旋轉,所以Y軸設"1",想讓他旋轉的角度是2度,Degrees就設置"2",
Referential則是中心軸的座標是要以那個物件為軸,若要用世界座標,就設置NULL,這裡我們是用世界座標,所以設置"NULL"。


OK!現在我們要啟動Rotate這個Building Block,啟動的方法很簡單,將左邊代表程式開始的小箭頭拖拉一條線到Rotate的輸入端,當線條變綠色時放開就可以了。


這時後這個飛標只會轉一次,流程就會停止,我們必須設定迴圈才能讓他一直轉,設定迴圈的方法只要把Rotate的輸出端拉一條線到輸入端,等線變綠色時放開就好了。


按下畫面最右下角的播放鈕,就可以看到飛標一直旋轉了。


這只是一個非常簡單的小教學,不過可以從這邊了解virtools的基本架構以及操作的方式,希望對里民們有幫助。
話說前幾天原來是我搞錯,是為期四天的virtools教育訊練,就趁著午休時,作了這個小解說。

這個是教育訊練的老師來上課時教我們的第一個小練習,主要是讓大家對virtools的基本操作有一些概念,從新增物件到場景,增加building block,設定參數,以及新增運算元件到播放出來。

首先,我們打開virtools之後,我們到右上角,virtools resoures的選單,將3D Entities下的Object打開,在裡面有很多的3D元件可以拿出來使用,我們隨便選一個飛標的出來用,置入場景的方式非常簡單,只要將飛標拖拉到左方的3D Layout裡即可。




然後我們到下方的Level Manager裡,從Global選單裡找到"Dart"(飛標)的項目,選取並且點一下上方的Set Ic For Select,這是要定義飛標的初始值,讓他未來可以歸零,要不然未來播放後,物件無法還原到播放前的狀態。


然後我們要針對這個場景設置一個Script讓飛標有動作,我們一樣在Level Manager管理視窗下,在"Level"上按右鍵,選"Creat New Script",可以看到下面多了一個"Level Script"。


接下來,到Level Manager的左方,有個Schemetic視窗,可以發現原本沒東西的,現在多了一個Level Script的東西,由於我們要新增資源,而且要新增的是Building Blocks的互動元件,所以要到上方的資源視窗的Building Blocks裡,3D Transfomations下的Basic找到Rotate這個Building Block,將他拖拉到下方的Schemetic視窗裡,就會新增一個Rotate(旋轉)的Building Block,左右兩邊的箭頭是輸入以及輸出端,上方的小箭頭則是可以設定的參數以及屬性,而上方的小方塊是輸入的資料,點一下小方塊,按一下空白,就可以直接看目前的參數設定。





有點不明白的話,點兩下Rotate,可以看到內部設置,其實就跟小方塊的一樣。
我們點開Rotate直接對其作設置,最上方的Target,是要作用的目標,在這邊目標是飛標,所以我們選Dart,要針對Y軸旋轉,所以Y軸設"1",想讓他旋轉的角度是2度,Degrees就設置"2",
Referential則是中心軸的座標是要以那個物件為軸,若要用世界座標,就設置NULL,這裡我們是用世界座標,所以設置"NULL"。


OK!現在我們要啟動Rotate這個Building Block,啟動的方法很簡單,將左邊代表程式開始的小箭頭拖拉一條線到Rotate的輸入端,當線條變綠色時放開就可以了。


這時後這個飛標只會轉一次,流程就會停止,我們必須設定迴圈才能讓他一直轉,設定迴圈的方法只要把Rotate的輸出端拉一條線到輸入端,等線變綠色時放開就好了。


按下畫面最右下角的播放鈕,就可以看到飛標一直旋轉了。


這只是一個非常簡單的小教學,不過可以從這邊了解virtools的基本架構以及操作的方式,希望對里民們有幫助。