☝1
今天要教運鏡哦!
一樣到老師的網站 https://jsyeh.org/3dcg10/ 下載檔案
data win32
打開 Projection.exe 檔
可以玩玩看運鏡
center 以誰為中心 或是 看他哪裡
展示以左手為中心 看他左手
看他右手
看他大鼻子
看他腳
up 稍微難理解 我們想像有台攝影機在拍他
把攝影機往右轉 出現的畫面是 頭在左上 腳在右下
攝影機往左轉 頭在右上 腳在左下
忘記的時候拿出手機拍一下就理解了
攝影機拿正的 拿反的
fovy: field of view (y視角) 視野的方向
最大到180就看不到了
aspect: aspect ratio 長寬比 !如果視窗比例改變 他也必須改
因為把視窗拉到 2:1
所以調成 2.0 比例才會正常
zNear zFar 是在 z方向近的地方切一刀,遠的地方切一刀,決定哪個範圍裡的內容會被投影到方塊中再壓扁畫出來
因為近的切在身體中間所以看起來像破圖了
因為遠的切在身體中間所以身體從中間剖半了
新增一個 GLUT 專案
修改程式碼 比較一下
第一個 glFrustum(-ar, ar, -1.0, 1.0, 2.0, 100.0);
第二個 glOrtho(-ar*3,ar*3,-1*3,1*3,-100,+100);
解釋一下程式碼
第三個要比較的 gluPerspective(60, ar, 0.01, 1000);
他們三個是好朋友,可以放在一起看
✌2
今天的第二個程式,新增 GLUT 專案
我先展示部分程式碼
跟著一步一步走
不是形狀改變了!是因為茶壺本身是3D模型,我們的鏡頭現在離茶壺很近,所以看起來圓圓胖胖的
我們新增motion函式
其實內容和上面都是一樣的
只是多了可控制的 eye
然後不要忘了 不管是motion mouse display等等等 都要加在底下,不然不會出現效果
Save everything!先備份上雲端
👌3
繼續寫 Final_Project
切換不同關節,改變不同角度!
我們用陣列 讓他們旋轉
現在只要按對應的鍵盤 就可以到對應關節
原先TRT中的 angle 要加上對應陣列
motion中的 angle 往上拉
mouse中的 angle 註解掉
最酷的一部分!
現在我們除了原先可以透過鍵盤切換關節、滑鼠轉動角度外
在每次做到滿意動作後,按鍵盤 s,會儲存在 motion.txt 中
重新打開後,每按一次 r 將播放儲存過的動作!
可以打開 motion.txt檢查一下是不是真的有存到
為什麼後面很多 0
因為我們 angle[20] 所以有 20 筆
但現在只做了幾個關節而已
👋最後
上傳github



















沒有留言:
張貼留言