
課程名稱:虛擬實境(多媒體四AB)
謝慧民的網站 > 課程網站 > 首頁 > 致遠多媒體_謝慧民_97_2_虛擬實境

第十四週期末考:(2009.5.21)
- 期中、期末繳交狀況及成果連結:vr972_link。
- 不管做到什麼程度,請一定要將你的成果打包成"學號.rar"檔寄到我的信箱,或燒光碟放到系辦我的信箱,或當面交給我電子檔。
- 第十四週期末考(2009.5.21上午9:00-12:00)占30%:
- 考試形式:openbook
- 繳交方式:使用一個目錄存放考試操作的成果將目錄壓縮寄到hmhsieh@ms3.hinet.net
- 考試內容:(當天email繳交最佳,允許遲交到期末考週的星期天2009.5.24)
- 使用Sketckup或六角大王找出題目要的3d物件,可能有三個,存檔並轉出為obj格式,
- 到3ds mas 9將obj檔匯入並處理貼圖及polygon為正確,轉出成.nmo格式,
- 到virtools匯入這些物件調整大小,並設定控制物件移動轉動的程式,操作時攝影機跟隨這個物件,設定活動攝影機並輸出為web格式。
- 2009.5.27日後再公佈成績。
- 期末考試題目:考題連結,最終檔案.cmo
- 期末參考答案:成果連結
- 期中作業參考成果:web檔展示連結

第十三週上課:(2009.5.14)使用Virtools整合人物設定動作及各種互動。
- 期中作業成果佔學期成績50%,將放置於我的網站做超連結,允許遲交到期末考週的星期天(2009.5.24)
- 期中作業內容:(第十四週上課期末考當天前交,將目錄壓縮寄到hmhsieh@ms3.hinet.net )
- 製作一個兩手為姓名(對稱),身體為學號的人物,套骨架設定動作,匯入virtools。
- 作一個外景(上半球體),匯入Virtools
- 海洋物件放入場景內,做一個凹凸面加上水貼圖,設定流動及蕩漾。
- 在海洋上放入一條船,將這個人物放到船上,由鍵盤及滑鼠控制行走,船在海洋中預設直線行走,可以由A及D鍵控制左有轉向。
- 在左前方加入一個島,島上有樹,攝影機跟隨人物移動。
- 介紹今天要完成的功能,轉出成web格式。
- 以3ds max 9將之前做好的人物含動作轉為virtools的.nmo檔(使用新的設定,並調影格到需求的格數,後面避免空白影格),輸出為動畫並轉存到resource檔內,到virtools專案檔將動作拉給人物並重新設定unlimited control動作,修改攝影機附屬位置為floor ref:新的resource檔,範例13-0,螢幕操作錄製13-0。
- 製作人物在地板上的影子,在visuals的shadow拉進shadowcaster給人物,加入一個燈光,調整其位置在人物的側上方,在船、海洋及島上設屬性加入shadowcaster receiver,調整燈光的位置使投影較為正常:如範例13-1,螢幕操作錄製13-1。
- 當調整攝影機位置導致restore ic及執行時畫面不一致,可以先將所有附屬關係先解除,等調整各項物件到正確位置設定IC後不再有不一致時,再將附屬關係建立起來,調整船前進的速度及轉彎角度:範例13-2,螢幕操作錄製13-2。
- 點選地板人物走過去:在3ds max作一個圓柱,貼好圖,設自發光80, 匯出為object的.nmo檔,匯入virtools專案調整位置及大小將他先隱藏並命名為position,在船物件產生程式碼,增加wait message,2d picking,set position及character go to,設好各階段的參數,即等待按左鍵後,進行確認點按的物件為boat,得到位置,將position物件設定在此並顯示show出來,然後人物走到position物件的地方,如範例13-3,螢幕操作錄製13-3。
- 上下左右鍵可以操作人物走動以及匯出:加入keyboard mapper,設定各鍵的對應訊息,可以用behavior graph打包程式碼,也可以將程式匯出提供其他專案或物件使用,或者整個物件含程式碼save as一個.nmo檔,提供給其他專案使用,如船的程式及模型nmo檔,設定固定障礙物或移動障礙物給相關物件,在船及人物程式碼加prevent collision,這時操作船到島的地方就不會開到島上或穿越島,匯出成web格式,設定大小為800x600,如範例13-4,範例13-5,螢幕操作錄製13-4。
- 最後匯出成果:web檔展示連結。
- 加分練習:在Virtools完成執行時點選地板人物會走過去。

第十二週上課:(2009.5.7)使用Virtools整合人物設定動作及島等場景物件。

第十一週上課:(2009.4.30)使用3ds max 9套人物骨架套動作。
- 以3ds max 9將之前做好的人物套骨架,先將人物物件全部轉為editable poly,再將這些物件Attach在一起改名為你的學號,再加resetXform及階層的reset pivot、reset transform、reset scale再轉為editable poly,Front讓人物臉朝向你,調整順序為front、Left、Top、perspective,先選取模型全部,做冰凍,選facet+highlight,要選骨架中心切到motion,按下小人物,移動骨架中心到對的位置,調整Front視窗的骨頭fit模型:如範例11-0,螢幕操作錄製11-0,人物貼圖下載。
- 使用copy/paste改變一邊骨架可以對稱套到另一邊,切到left視窗調整骨架厚度,拉直腳骨及手骨,在透視視窗再檢查一下骨頭是否有調整好,讓模型fit骨頭:如範例11-1,螢幕操作錄製11-1。
- 模型套骨架步驟:選全部模型,reset Xform,加入modified list的physique(蒙皮),按紅點小人物選bip01,按initialize,做出結合,打開包絡線,檢查重疊部分,調整重疊部分分開,再選bip01進行拉骨架移動看是否結合好,如範例11-2(將來套動作都要開啟這個檔去作業),螢幕操作錄製11-2。
- 套骨架,設定步伐數,調步伐位置,計算關鍵影格,播放走路動作,取名walk,如果有些模型的點沒有備影響要去調整包洛線,下載CS_motion套動作準備,使用位套動作的檔將剛剛的人物load file套動作,取名idle,套神氣的走取名walk1,自調退後動作的設定,取名back,螢幕操作錄製11-3,範例11-4,螢幕操作錄製11-4。
- 後退動作也可以用套走路的動作,只需將步伐調到人物後方,然後將腳丫子的按選取消,再按autokey拉其他搭配動作,範例11-5,螢幕操作錄製11-5。
- 加分練習:在3ds max 9完成套骨架及套一種動作。

第十週上課:(2009.4.23)使用3ds max 9修改船物件,匯出成virtools格式,virtools加入相關場景並設定船的鍵盤操作程式。

第九週上課:(2009.4.16)使用3ds max 9製作海洋物件及使用virtools製作波浪。
- 期中考改為期中作業,下星期繼續上課,期中作業作為期中考成績,並放置成果在網站連結系網。
- 期中作業內容:(第十四週上課期末考當天前交,將目錄壓縮寄到hmhsieh@ms3.hinet.net )
- 製作一個兩手為姓名(對稱),身體為學號的人物,套骨架設定動作,匯入virtools。
- 作一個外景(上半球體),匯入Virtools
- 海洋物件放入場景內,做一個凹凸面加上水貼圖,設定流動及蕩漾。
- 在海洋上放入一條船,將這個人物放到船上,由鍵盤及滑鼠控制行走,船在海洋中預設直線行走,可以由A及D鍵控制左有轉向。
- 在左前方加入一個島,島上有樹,攝影機跟隨人物移動。
- 3ds max 9製作平面物件並加入noise的modifier,貼圖並打包:如螢幕操作錄影9-0。
- 以Google Sketch up pro 7下載期中作業的物件包括船、小島、樹等成obj格式,並安裝Virtools_Max_Exporter_4_1_0_80.zip到3ds max 9的目錄,螢幕操作錄影9-1。
- 匯入obj的船物件,並設定貼圖並轉出成nmo檔:螢幕操作錄影9-2。
- 開啟virtools開啟新的resource檔,將相關物件複製到相關目錄,將海洋物件匯入virtools,在mesh物件上寫程式碼(create script),加入texture scroller及texture sine:如範例9-1,螢幕操作錄影9-3。
- 如果匯入的物件很多請在max就將這些物件attach在一起,減少複雜度,刪除物件請選full dependent :如範例9-2,螢幕操作錄影9-4。
- 加分練習:在virtools完成會流動的海洋貼圖。

第八週上課:(2009.4.9)使用3ds max 9製作人物。
- 3ds max 9安裝及操作說明:輸入你的姓名,字的大小約50點字,在modify list選extrude將amount=20,可以將他smooth,左右各有一個名字,右手名字順序由右到左,左手名字順序由左到右,如螢幕操作錄影8-0。
- 以學號為身體的頭、頸及身體作法如前,將這個物件轉成editable poly,可以選擇polygon去做局部調整,做出身體的粗細感,腳使用圓柱,然後一樣將粗細做出來,腳掌使用方塊,如範例8-1,螢幕操作錄影8-1。
- 上網找人物各部位的貼圖,使用影像處理軟體做裁剪:如圖8,螢幕操作錄影8-2。
- 腳掌的編輯有粗細,做人物各部份貼圖設定:如範例8-2,螢幕操作錄影8-3。
- 製作外景貼圖,製作一個球轉成editable poly,modified list選normal將法線向量轉到內部,完成貼圖貼到內部,底部壓縮再位移讓下半球變成地板,分別對地板分綠色,對天空上藍色:如範例8-3,螢幕操作錄影8-3。
- 材質球的著色換成貼圖更像實景:如範例8-4,圖8。
- 加分練習:完成上面的操作作出一個你的學號姓名的立體人物。

第七週上課:(2009.4.2)抓娃娃遊戲Virtools操作。
- 請到網站下載範例6-6:設定三個角色的障礙屬性,娃娃設為移動障礙物,加入一個3D Frame物件,更名為娃娃碰撞物件,設定移動位置在爪子底下,如範例7-0,螢幕操作錄影7-0。
- 娃娃碰撞物件用階層拉到爪子底下附著在爪子上,並在娃娃寫程式碼,如範例7-1,螢幕操作錄影7-1。
- 娃娃寫入box box intersection,設定第一個物件為娃娃,第二個為娃娃碰撞物件,加入set position設定參考爪子,y值設為-28,讓娃娃吸附到爪子下方,加set parent,選爪子當父物件,加入娃娃下降:如範例7-2,螢幕操作錄影7-2。
- 加入timer停留一段時間再讓娃娃下降到洞口:如範例7-4,螢幕操作錄影7-3,螢幕操作錄影7-4。
- 加入娃娃到洞口後碰到另一個3D frame然後發出聲音並show一個成功的圖片在左上方,這個新的3D Frame放到洞口位置,設定y值為2,新產生2D Frame調到左上角,加入設定一個有貼圖的metrial,先將眼睛關閉設IC:如範例7-5,螢幕操作錄影7-5。
- 在timer底下加入set position迴圈讓娃娃跟隨爪子移動,到時間完成後跳出回圈:如範例7-6,螢幕操作錄影7-6。
- 加分練習:完成上面的操作讓爪子可以正常下去抓娃娃,娃娃隨著移動到洞口掉下去。

第六週上課:(2009.3.26)抓娃娃遊戲Virtools操作。
- 請到網站下載範例5-3:將爪子設在洞口上方,如範例6-0,螢幕操作錄影6-0。
- 將漸漸下降的程式Draw behavior graph,拉線連接並在出口增加一個add behavior output,點兩下打包起來,按右鍵打入中文,複製該方塊改名右臂抓取,打開改裡面的程式碼,把translate改為rotate,增加一個對象改為右臂,更改multiplicate的vector為angle,再複製右臂抓取改名為左臂抓取,更改對象及旋轉方向,如範例6-1,螢幕操作錄影6-1。
- 複製爪子下降改成爪子上升,並更改值為38,爪子抓取的旋轉方向調為Z軸的1及-1,keywaiter改為keyevent,然後連結關掉讓space按鍵只產生一次作用:如範例6-2,螢幕操作錄影6-2。
- 加入Move to的程式,加一個目標物設為爪子,將移動的座標設為洞口出發點、move to的loop in連到loop out,再複製右臂及左臂抓取,改成放開,改一下旋轉軸的符號:如範例6-3,螢幕操作錄影6-3,範例6-4,螢幕操作錄影6-4。
- 加入透視攝影機,攝影機改名為操作視角攝影機,產生程式碼,加入keyboard camera orbit,或者是mouse camera orbit,設定攝影機的IC:如範例6-5,螢幕操作錄影6-5。
- 加入top View的攝影機,到level產生程式碼,並使用set as active camera設給操作攝影機,加入switch on key,設定T及O鍵分別接 set as active camera的top view攝影機及操作攝影機:如範例6-6,螢幕操作錄影6-6。
- 加分練習:完成上面的操作讓爪子可以正常下去抓娃娃及上來回到原點放開爪子。

第五週上課:(2009.3.19)六角大王匯入模型套骨架+Virtools操作。
- 請到網站下載抓娃娃資源檔:螢幕操作錄影5-0。
- 將檔案解壓縮,並且使用Virtools載入資源檔doll.rsc,然後由左邊將物件拉進編輯區,然後調整位置及大小到適當成果,讓娃娃機上面放著娃娃,爪子則在上方並且在Top視窗調整位置在娃娃機的範圍內。
- 在爪子上設程式碼、設快照給這個程式及設程式背景顏色、加入switch on key、增加key並設定translate給上下做右鍵、設定爪子為移動障礙物及娃娃機為固定障礙物、程式碼加prevent collision :如範例5-1,螢幕操作錄影5-1。
- 加入keywaiter按space鍵可以往下掉、加入Bezier progress及add parameter operator依序設定float,vector, multipliaction, vector、將貝茲的data連到float,vector設為translate的數值,輸出的vector接線到translate的座標位置:如範例5-2,螢幕操作錄影5-2。
- 加入per second程式在switch on key的translate之前,讓項下移動的速度為固定:如範例5-3,螢幕操作錄影5-3。
- 加分練習:完成上面的操作。

第四週上課:(2009.3.12)六角大王匯入模型套骨架+Virtools操作。
- 六角大王匯出模型存成DXF或OBJ格式及姿勢,開新檔案載入剛剛的模型,然後從特別人物拉入骨架姿勢,移動骨架位置到模型,調整大小符合模型,確定模型打散,工具列骨骼功能表打開,然後全選加入骨架,讓骨骼有效,調整骨架姿勢模型也會隨著調整:範例4-0,螢幕操作錄影4-0。
- 到我的課程網站下載遊戲數位動力資源檔,螢幕操作錄影4-1。
- 解壓縮、打開Virtools、載入資源檔、新開資源檔、拉進怪物、物件的移動轉動放大縮小操作、視景攝影機的操作:螢幕操作錄影4-2。
- Virtools軟體介紹:連結投影片。
- Level Manager頁籤介紹、程式頁籤介紹、收起來設定及打入中文:如範例4-3,螢幕操作錄影4-3。
- Building Block行為模組介紹、物件的Setup可以調位置縮放、各階段調整完成設定Initial condition(IC):如範例4-4,螢幕操作錄影4-4。

第三週上課:(2009.3.5)Sketch Up+3ds max匯入貼圖操作。

第二週上課:(2009.2.26)六角大王操作。
- Virtools及3ds max未安裝完成。
- 使用六角大王的人物資料庫匯出人物模型成.wrl,.obj及.x等三種格式:範例2-1,螢幕操作錄影範例2-1。
- 使用大字型人體照片製作一個3d人物,操作過程需要載入人體圖片、點相關部位、使用滑鼠拖拉調整不符合的曲線、最後使用標準格式輸出完成3d模型製作,照片貼圖融入模型中,可以使用工具伸縮、移動、旋轉骨架讓模型變形,範例2-2。

第一週上課:(2009.2.19)VR介紹。



版權所有©2009 謝慧民