2007/05/19
[教學][筆記]以Boujou製作實拍與電腦動畫合成
攝影機對位技術(Matchmoving)是一特殊的科技 能夠讓虛擬的物體以正確的大小 角度 方位整合到實拍的影片當中, 使最終的合成影像
好像虛擬物體就存在於影片當中似的.----維基百科(英文版)
攝影機對位技術又被稱為Camera tracking或是 Camera matching. 在這個快速上手的教學影片裡 您將學習利用Boujou 4把二維的實拍影片轉換出虛擬的攝影機運動路徑. 然後輸出此路徑到3ds max 7進行實拍與電腦動畫的合成.
製作流程在Boujou 4當中
1. 輸入實拍影片
2. 加入 Target track
3. 執行track features
4. 執行camera solve (結果請參考上圖)
5. 選取數個點, 執行Scene geometry/add Plane constrain/Adjust solve
6. 選取數個點, 執行3D Tasks/Generate Mesh using 3d view
7. 選取數個點, 執行add test objects8. 輸出 Camera solve (為maxscript格式)
9. 輸出meshes
在3ds max 7當中
1. 執行maxscript
2. 輸入meshes
3. 設定背景為實拍影片
4. 選擇mesh 移動他的頂點
5. 建立燈光
6. 設定Matte材質
教學影片 (總長18分鐘)
低解析度版本(320X240) 請點這裡
高解析度版本(720X480) 請點這裡
[更多的教學]
做一個肉包子steamed bun
用blubber script製作胸部晃動breast bounce (熱門!)
2007/05/18
[tutor][video]Matchmoving with Boujou 4 and composite in 3ds max 7
Matchmoving is a special effects technology to allow the insertion of virtualMatchmoving also known as "Camera tracking", "Camera matching". In this quickstart video tutorial you will learn how to create 3d camera track from 2d footage by using Boujou 4, then import in 3ds max creating a CGI-footage composite.
objects into real footage with the correct position, scale, orientation and
motion in relation to the photographed objects in the scene.---Wikipeida
Work flow:
In Boujou 4
(1)import a video clip
(2)add Target track
(3)track features

(4)camera solve (see the picture above)
(5)select points, Scene geometry/add Plane constrain/Adjust solve
(6)select points, 3D Tasks/Generate Mesh using 3d view
(7)select points, add test objects
(8)Export camera solve to maxscript format
(9)Export Meshes
Video tutorial(Running time: 18mins)
320x240 on Youtube
click HERE
720X480 on blip tv
click HERE (New!)
[More video tutorial]
Sea cucumber-like skin texture
NURBS a car: part 1 bonnet (hood)
making a broken window without using a plugin (Very very hot!)
2007/04/28
[教學][筆記]island製作熱帶島嶼的兩種解決方案
方案一

利用E-on software Vue 6建立島嶼, 以Vue特有的Ecosystem生態系統建立棕櫚樹與自然的島嶼貼圖. 在Vue 6當中渲染.
教學影片 (長度為9分鐘)
-->320x240 on Youtube
-->720x480 on Blip tv
方案二

利用SitniSati Dreamscape 2.0建立海面 與移動的雲. 以IDV Speedtree 3.0 為島嶼加上棕櫚樹. 最後以3ds max 7內建的渲染器渲染.
教學影片 (長度為12分鐘)
-->320x240 on Youtube
-->720x480 on Blip tv
最終效果影片:
兩種方案的比較:

整體而言, Vue 6較能產生自然的樹木 天空效果, 但是方案二對於與3ds max整合度較高. 請注意Cebas Finalrender與Speedtree並不完全相容. 而Dreamscape也可以產生3D (不是只有本例平面的雲) 只是要消耗大量的運算時間.
[相關文章]
Vue 5與Bryce 5 地形建模功能比較terrain modeling
[tutor][video]Palm tree island production solutions
Solution 1

By using E-on software Vue 6 to crate island, palm trees and see. Render in Vue 6.
video tutorial (Running time 9 mins)
-->320x240 on Youtube
-->720x480 on Blip tv
Solution 2

Using SitniSati Dreamscape 2.0 to create sea surface and flying clounds, adding palm trees to your island by using IDV Speedtree 3.0 . All render in 3ds max 7 with default renderer.
video tutorial (Running time 12 mins)
-->320x240 on Youtube
-->720x480 on Blip tv
Tutorial results:
Comparison of two solutions:

Overall, using E-on software Vue 6 will create more realistic island animation. But the solution 2 is much better when integration with 3ds max. Please note that Cebas Finalrender is not fully compatible with Speedtree 3. And the Dreamscape can create 3D clouds (not just a flat clouds) but will increase rendering time a lot.
2007/04/18
[教學]ID4外星人摧毀中正紀念堂影片製作教學


電影ID4星際終結者裡面美國白宮被外星飛碟以雷射砲摧毀 這個教學裡面我們要以台灣著名建築物---中正廟來重現這樣的視覺特效. 我們將利用low polygon的方式為中正廟建模 上貼圖 用Quickdirt製作舊化效果. 然後我們將利用Cebas Thinkparticles外掛製作爆破的特效, 以Greeble外掛快速製作飛碟母船的模型. 以ky_trail 3.0製作雷射砲效果. 最後我們將用Sony Veags做音效處理與視訊剪接.
再看一次外星人摧毀中正廟影片
爆破與後製教學影片(25分鐘):
[tutor][video]Making of Alien attack CKS gate


中文版教學請看這裡:
[教學]ID4外星人摧毀中正紀念堂影片製作教學
Continue of "Making of CKS gate", this time we are going to destroy it. In this video tutorial you will learn to optimize CKS gate model mesh, demolish it with Cebas Thinkingparticles, use ky_trail 3.0 to create lazer effect and finally edit the video with SONY Vegas 7. The space ship was model by using the famous plugin: greeble.
The final result:
Video tutorial (Runing time: 25 mins)
Low quality (320x240 on YouTube)
Hight quality (720x480 on Blip tv) (New!)
[Related tutorials]
[教學]ID4外星人摧毀中正紀念堂影片製作教學
Making of CKS gate
Building demolition in 3ds max 7
Sparkler writing in 3ds max with Trail 3.0
[特別新增]
面對古蹟的應有態度......(朱學恆的路西法地獄)
[tutor][video]Making of CKS gate 中正紀念堂




In this video tutorial you will learn how to polygon model a Chinese style building---CKS gate in 3ds max 7. This gate is the gate of Chiang Kai-shek (CKS) Memorial Hall. After modeling, we will use Quickdirt plugin to add dirt to this building. (Chiang Kai-shek is a notorious Chinese dictator who was defeated by Mao Zedong's Communists.)
2007/04/10
[筆記]Suao historic 3D數位化蘇澳郡役所---準備篇
清明節回家 和哥哥去拍攝離家5分鐘路程的---蘇澳郡役所. 根據蘇澳鎮文化導覽手冊所述: “大正11年(1922年)5月蘇澳郡役所廳舍落成, 後作為鎮公所使用…”. 這座蘇澳少見的古蹟第一眼看上去還蠻現代感的 大樓當中的木材樓板根據父親所述已經被拆除 剩下水泥與磚塊的主體 空盪盪的. 現在的大樓正前有”新台礦業股份有限公司”的題字 顯示在棄置前還曾作為工廠用. 大樓兩側原本還有磚瓦的房舍 現在已經被拆除. 這座古蹟建構方正簡單 來把它當作我第一個3D數位化建築的練習吧!
2007/04/04
[tutor][video]Building demolition in 3ds max 7

In this video you will learn how to (1) convert building mesh to particles with Cebas Thinkingparticles (2)create dust and smoke with Superspray plus Sitni Sati AfterBurn 3.0 (3)Create debris with Particle Flow. You need: 3ds max 7, Cebas Thinkingparticles, AfterBurn plugins to make this effect.

Scene setup:One simple building (create by boolean union several boxs), one plane. One gravity, two deflectors (with different bounce strength) and one wind force.Particles: One thingkingparticles (building fractures), one superspray for dust, one superspray for smoke. One particle flow for debris.Environment: two AfternBurn effect for each superspay particles.Lighting: One skylight for 3ds max advanced lighting, one target spot light for the AfterBurn effect.
Video tutorial (Running time: 63 mins, split into 2 videos)
video 01
video 02
Parameter for Thinkingparticles:



Parameters for Superspray

Parameter for Particle Flow:
-Cebas Finalrender stage-1 is not compatabile with AfterBurn, so I use 3ds max default renderer.
[Related tutorial]
2007/03/27
[教學][筆記]電腦動畫世界裡的角色行為behavior

在3D電腦動畫的世界裡面 經常需要製作出大量的角色互動 例如一群海鷗飛翔 一群蝙蝠飛出洞穴 或是一群暴民逃離爆炸現場. 這些複雜的動畫是由角色依照環境而產生不同的行為 最終所表現的視覺效果 由於這種動畫過於複雜 動畫師不可能是以key-frame的方式手動地調整角色. 還好複雜的動畫可以經由簡單的行為模組 相互變化組合出來. 本文將由簡單的 陽春的軟體 介紹到複雜 完整的軟體: Endorphin, AI implant, Kynogon與Massive software. 經由介紹各個軟體的內建角色行為 讓讀者能夠一窺電腦動畫 或是第一人稱射擊遊戲當中 角色行為 人工智慧的概念. 行為可以分成多個層次 第一就是個體的行為 本文將以Endorphin為例; 另一就是群體的行為 更細分的話 群體當中還可分成小隊 這在擬真的射擊遊戲當中常常遇到.
一. 首先介紹Endorphin (漢字翻譯是腦內啡的意思). Endorphin是屬於Natutalmotion(自然動作)公司的產品, Natutalmotion是一家具有英國牛津大學背景的一家英國軟體公司. Endorphin所產生的角色動作是根據實際量測真實人體動作後 將資料最佳化好後寫成的軟體合成動作. 以下就介紹Endorphin 2.6所提供內建的人體動作:
(1)Arms Crossed On Chest 手臂交叉於胸前. 這個行為會讓角色產生雙手交叉於胸前的動作. 應用: 當角色需要保護胸部的時候?
(2)Arms Raised Above Head 手臂舉起. 這個行為會讓角色產生手臂舉起高過頭的動作. 應用: 打招呼或是接球.
(3)Arms Wide Of Head 雙手張開. 這個行為會讓角色產生手臂展開. 應用: 做出我也不知道的動作?
(4)Arms Windmill手臂旋轉. 這個行為會讓角色產生手臂如風車般旋轉的效果. 應用: 常常見於角色失去平衡時會有這類動作.(5)Arms Zombie 殭屍動作. 顧名思義 手臂打直伸前如殭屍般. 應用: 鬼片 恐怖片?
(6)Hands Covering Face雙手遮臉. 這個行為會讓角色的手掌遮住臉. 應用: 保護臉 或是 羞於見人?
(7)Hands From Behind Back 手由背後伸回來. 感覺有點抽象 其實就是稍息動作的倒帶. 根據官方的說明 這個動作可以應用在各個行為的轉換動作 讓手臂回歸到平時的位置.
(8)Hands Protecting Groing手保護鼠蹊. 應用: 踢足球的時候
(9)Hands Reach And Look At 手伸出並注視目標物. 這個行為會讓角色的手伸出碰觸目標物 同時注視目標物. 相當實用的行為. 應用: 當你跟攤販老闆買一條香腸時 就會用到這個動作.
(10)Legs Kick踢腿. 相當簡單. 說實在Endorphin很多行為還在發展階段 動作有些看起來不自然.
(11)Legs Reach腿碰觸目標物. 應用: 踢足球.
(12)Legs Straighten 腿伸直. 應用: 兩腿一伸 準備投胎?
(13)Balance維持平衡. 相當重要的一個行為 在新版的軟體新增的行為. 很實用 幾乎在各種動作模擬都需要平衡.
(14)Balance With Props 提物體時同時維持平衡. 也是相當重要實用的行為. 應用: shopping回家後提著一包包袋子.
(15)Body Foetal身體做出如胎兒般動作. 有點抽象 這個動作是人在危急的情況 做出保護頭 身體與內臟時的反射動作 相當實用的行為.
(16)Catch Fall跌倒. 相當重要的一個行為讓角色跌倒時防止頭與身體直接碰觸到地面. 這個型危能讓跌倒的角色看來更有意識而不是昏迷.
(17)Fall Back, Twist And Catch Fall 臉朝地面跌倒. 有點抽象用圖片來解釋吧. (見上圖, 本圖取自官方網站的pdf說明文)(18)Fall Back, Twist And Cover Face 臉朝地面跌倒同時手保護臉.
(19)Fall Back, Twist With Passive Arms臉朝地面跌倒同時做出類似俯立挺身的動作.
(20)Jump跳躍. 很陽春 還不夠好的行為.
(21)Jump And Dive. 跳水的動作很適合.
(22)Land And Crouch 跌倒同時做出下跪的動作.
(23)Stagger蹣跚走路. 當重要的一個行為讓角色跌倒前維持平衡一下. 應用範圍很廣.
(24)Tackle擒抱摔倒. 這是美式足球的專門術語 意思就是保住對手牽制對方運球.
(25)Writhe甩動四肢. 我是不知道這個行為能幹嘛 讓角色看起像是活著?
(26)Writhe In Mid-Air在半空中甩動四肢.
(27)Body Stiffness身體僵直倒下. 被催眠?
(28)Whole Body Stiffness連頭部一起 全身僵直倒下.
(29)Hold握著目標物. 當重要的一個行為讓角色握著目標物. 應用: 抓著籃球.就這樣Endorphin軟體內建了大約30種的人體行為資料庫. 這是劃時代的軟體設計 把動作合成的概念帶入了電腦動畫世界 而非純粹套用真實的人體動作資料(motion capture data) 如此的優點是動作更為多樣化 可變性的參數多 而且動作能夠隨著環境改變而做調整 更接近真實的人類行為. 然而很顯然Endorphin目前還是發展的初期 相信將來5年會成為人體角色動畫的主流應用之一.
二. 接下來介紹個體與個體之間的交互作用行為 就是更大尺度的角色行為. 先以AI implant為例.(1)Avoid Barriers避開路障. 這個行為會讓角色在距離路障一定距離前避開路障.
(2)Avoid Obstacles避開障礙物. 與避開路障很類似. 差別在於避開路障不用指定目標物而Avoid Obstacles必須指定目標物 而且目標物可以也是AI控制的角色
(3)Accelerate At對目標物加速. 當重要的一個行為. 應用: 獵豹看到羚羊時.
(4)Maintain Speed At 針對目標物維持相同的速度. 應用: 狗仔隊在跟拍某位明星的座車.
(5)Wander Around閒晃. 很常用到的一個行為 讓角色不是走一直線而是點隨機的移動. 應用: 找食物的螞蟻
(6)Orient To朝向某目標物. 應用: 狗仔隊用長鏡頭跟拍某名人.
(7)Seek To找尋某目標物. 很常用到的一個行為 應用: 鯊魚搜尋小魚.
(8)Flee From逃離敵人. 很常用到的一個行為 應用: 小魚逃離鯊魚.
(9)Look At看著目標物. 與Orient To很類似.
(10)Strafe繞行移動當中的目標物. 有點抽象的行為. 應用: 例如一隻盡責的牧羊犬 一面繞行保護羊群 一面面對周圍的野狼.
(11)Go Between使角色移動到兩個目標體之間. 可以做為保鑣的行為. 例如歌手的保鑣總是位於歌迷之間 保鑣保護歌手.
(12)Follow Path沿著路徑移動. 例如操場上的選手沿著跑道跑步.
(13)Seek To Via Network經由網絡找尋目標體. 例如警方在巷弄當中搜尋嫌犯. 巷弄的交錯結構就相當於網絡.
(14)Align With與群體對齊. 常見於閱兵典禮士兵對齊的移動 或是在古代的戰爭場景裡 士兵排排站.
(15)Join With加入群體. 湯姆漢克在電影世界大戰當中 他的兒子要加入軍方對抗外星人 所用到的行為就是加入群體的例子.
(16)Separate From脫離群體. 臨陣脫逃的士兵.
(17)Flock With與隊友形成群體. flock這個自是用在一群鳥的時候. 所以這個行為以一群鴿子飛行為例最適當
(18)State Change On Proximity 靠近目標物時就改變狀態. 有點抽象但是很重要的行為. 例如大雄看到老師就會緊張 大雄就是接近目標物(老師) 就會改變狀態(緊張)的行為. 這裡可以改變角色的速度 死亡等等狀態.以上18種的行為 看起來很複雜 其實AI implant算是相當陽春的軟體 能夠處理的情況也相當簡單 但是經由適度的組合行為 還是能產生令人信服的動畫.
三. 接下來介紹Kynogon公司出品的Kynapse. Kynapse是Synapse單字的變體 synapse是神經突觸的意思 代表該軟體有人工智慧的意思. Kynapse被廣泛應用在遊戲與軍事訓練當中 例如知名法國出品遊戲Ureal魔域幻境 便整合了Kynapse的人工智慧引擎 用來控制遊戲當中的電腦人(Bot). Kynapse的專長是及時複雜的路徑計算 能夠很有效率的計算出角色的最佳移動路徑 同時Kynapse能夠提供團隊的概念 使角色之間能夠互相溝通形成戰爭小隊. Kynapse的設計架構當中 角色具有Perception感知, Decision決定以及Action行動. 角色能夠感受聲音 視覺或是小隊之間的無線電溝通來做行動的決定 而這些決定都是即時的在遊戲當中做出運算 而不像是AI implant角色的移動路徑是預先由軟體使用者刻意產生的 這就是Kynapse強大的地方. 以下介紹Kynapse所提供的行為(在Kynapse當中行為的控制稱為agent代理人. 不同代理人產生不同行為):(1)Goto agent到達目標代理人
(2)Follower agent跟隨代理人
(3)Flee agent逃離代理人
(4)Pathway agent沿著預先設定路徑移動的代理人
(5)Wander agent閒晃代理人. 以上代理人的行為在AI implant當中都可以看到.
(6)Hide agent躲藏代理人. 這個看似簡單的行為其實有點複雜 首先他不像是Flee agent那樣只是逃離危險的敵人 而且他還要能在立體的空間當中把自己藏匿起來 算是相當複雜的行為.
(7)Shooter agent射擊代理人. 這比look at行為還要複雜 首先角色要能夠依照自己手上的武器(狙擊槍或是手槍) 知道自己的射程 進而移動身體來幫助攻擊敵人的行為.除了代理人外Kynapse還具有及時運算路徑的能力
(8)Euclidian distance pathfinding heuristic最短距離演算法 這是在不考慮敵人 環境危險度的情況下 演算出移動路徑的演算法.
(9)path cost pathfinding heuristic最佳抱償路徑演算法. 能夠在相當複雜的場景當中 計算出敵人位置 路徑等等因素後 對角色最有利的路徑.Kynapse還有許多其他強大功能 足以應付現今熱門的第一人稱射擊遊戲 例如躲在角落射擊敵人, 分散躲藏的小組 之間以無線電連絡 或是動態的路徑運算(在被破壞的公路當中找到替代道路)等等 請到官方網站觀看影片.
四. 最後介紹最強大也最昂貴的軟體---Massive software. Massive因為在動畫電影Happy Feet快樂腳當中應用 被獲選奧斯卡獎. Massive雖然不如Kynapse專門用來處理3D遊戲當中的角色行為 但是AI implant有的行為它都有 除此之外Massive還提供了AI implant沒有卻很重要的功能.
(1)Smart Stunts智慧型的特技演員. Massive的Smart Stunts很類似Endorphin的功能 就是依照環境產生相對的行為. 這點讓Massive具有結合Endorphin與AI implant兩者優點的優勢.
(2)Cloth Editor衣服編輯器. Massive本身就支援角色具有衣服動態模擬的功能 讓其運算結果的擬真度更上一層樓.
(3)Agents可以立即使用的代理人. 即使不懂動畫的人也能夠利用預先設定好的虛擬人物進行動畫. 目前提供的代理人有Locomotion Agent移動代理人, Stadium Agent觀眾席代理人, Ambient Agent背景人物代理人, Mayhem Agent暴動代理人, Combat Sword Agent古代戰爭代理人...幾乎可以應付大部分的需求了.以上就Endorphin, AI implant, Kynapse與Massive做了簡單的介紹 雖然離真正人類的行為還很遠 但相信經由這些簡化的虛擬人物行為 將來會慢慢發展出更接近人類的行為(例如吃醋 忌妒 賴床...等等)
[延伸閱讀]faking human motion with ragdoll maxscript (利用免費軟體達到類似Endorphin的效果)
2007/03/20
[筆記][教學]拿Google adsense check支票的心得與照片分享
在累積Adsense廣告獎金至寄發支票的最低條件(100美元)前, Google Adsense會先寄發一封認證信 含有個人識別碼(PIN). 當你收到這封信時 代表你的部落格經由有成 有機會領到Google的支票.
這封含個人識別碼的信 其實很小張 如上圖般明信片般大小 下方用圓形貼紙封條 上面寫著"內附重要訊息"
如此這般 如同兩張明信片大的信紙 摺疊起來 被面印著大大的Google標誌.
打開信封後你會看到如下文字: "您的Google Adsense個人識別號碼(PIN). 歡迎使用Google Adsense...". 為什麼要寄這封認證信給你呢? 個人猜測是因為Google Adsense目前沒有提供直接匯入銀行的服務 只有寄支票給使用者 是故藉由啟動個人識別碼的方式 證明收件者的地址就是部落格經營者的地址. 當下次獎金累積到100美金 寄出支票後 才不會寄錯地址 造成不必要的麻煩.
在你啟動你的PIN碼後 若是累計獎金到100美金 你就會收到上面這封信. 內含支票所以大小比明信片大了一點. 有點像是電信局的帳單那樣的封裝方法.
打開信封 你會看到一面是寫你家地址 另一部分是支票本身.
仔細看看支票 好像不是很起眼 會不會是偽造的啊?
翻過來看支票背面 有個地方要你簽名 (去銀行兌換時需要)
如果你仔細一看支票摺痕的地方那條綠色的花紋 上面寫著"THIS CHEQUE PAPER CONTAINS A CHAIN WATERMARK" 本支票上有鏈子圖案的浮水印. 於是對著日光燈一照 哇! 有沒有看到浮水印啊 整個支票上面都是鏈條圖案哩.
後記:
2007/03/16
[教學][筆記]AI implant action selection決定樹

上圖是該AI character的Action slection左側的第一個值: RunspeedDatum. 可以藉由Create New Datum產生. Datum就是資料的意思 這裡這個值是作為一個運算變數.

第二個值是RunSpeed Sensor.可以經由Create Speed Sensor產生. 然後再由Is value in Range Datum選擇步驟一產生的變數"RunspeedDatum"使兩者連結在一起. 意思就是說 當速度在6-12之間 數值RunspeedDatum就為真.

最後一個就是decision tree決定樹.可以經由Create Decision Tree產生. 其中Condition Comparator要選擇Boolean, 如此Add child時就會產生兩個分支: then, else 則 否則. 而If如果則要選擇變數RunspeedDatum. 而then當中 activate jog可以經由ActivateAnimationCommand產生. 整體的意思就是 當RunspeedDatum為真(速度在6-12)時 執行then分支當中的指令(撥放jog動畫 以及 執行accelerateAt行為); 當RunspeedDatum為假時(速度非6-12間)則執行else當中命令.
這只是一個簡單的決定樹. 角色有兩個固定動畫 一為走一為跑 行為只有加速行為. 利用RunSpeed Sensor偵測器 偵測速度快或是慢. 慢的話就經由決定樹決定撥放走的動畫 快的話就撥放跑的動畫. 但不管速度如何 都執行AccelerateAt加速的行為. 可見這裡RunSpeed Sensor偵測器占了關鍵性的地位. 如果你是要偵測角色是生是死 偵測器就要改成PropertySensor.
2007/03/14
[tutor][video]Crabs and Taiwan (by using CAT plugin)

By using Character studio toolkits (CAT) plugin to create motion of the crabs in 3ds max 7. You will learn to create a line and a dummy, then path constrain to the line. Create a crab with CAT and attach node (select the dummy). Very quickly you will create motion of crab that looks real. Click HERE to see the tutorial result.
Video tutorial (Running time: 15 mins)
click HERE
[tutor][video]Crowd simulation (biped) with AI implant

This is the outline for this tutorial:
1.Create biped mesh from CS
2.Baking animation
3.Create block controller
4.Create AI character
5.Set behavior
6.Duplicate characters
7.Prepare for rendering
Video tutorial (Running time: 40mins, splitted into two parts)