看板 GameDesign 關於我們 聯絡資訊
大家好 目前在練習opengl的時候遇到一些問題 我想作一個2D動作遊戲的畫面 類似小朋友下樓梯這種 然後場景全部都是黑的 玩家腳色有一個手電筒照出來 被照到的地方才會顯示 像這樣http://ppt.cc/vX8b (照到餐桌) 目前想法是用一個大的黑色圖片 挖出照明的地方設為透明 這樣只要把場景畫完 把這張圖蓋上去就好了 不過有幾問題 第一個就是這樣照地板/天花板的話 光會穿透照到樓上或樓下的空間 另外就是沒辦法在場景中增加第二個獨立光源 因為兩個光源彼此位置會不同 沒辦法用遮罩的方式來做 不知道該用什麼方式解決 我知道opengl本身有光源設定 不過這種光源我不知道要怎麼設定才能像圖片這樣黑白分明 不會散射? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.234.103 ※ 編輯: TheGate 來自: 140.114.234.103 (11/17 22:58)
tsl3333:Stencil Buffer可以解決你一些問題 11/18 00:14
這個似乎是內建的遮罩? 研究看看
Bencrie:之前不是有板友分享過即時軟體陰影的演算法? 11/18 00:25
Bencrie:#1FCCfWSG 這篇不知道是不是你要的 XD 11/18 00:27
這方法太強大了ORZ 可能不適用 畢竟我不用影子 而且希望光線只有一個距離 而不是慢慢減弱到無 ※ 編輯: TheGate 來自: 140.114.79.114 (11/18 11:01)
tsl3333:你可以用你說的方法 一張類似你要照亮的地方設成透明 11/18 11:31
tsl3333:蓋上去之後 在用stenil buffer去濾掉你說的可能會照到 11/18 11:32
tsl3333:樓上樓下的問題 11/18 11:32
tsl3333:stencil buffer一.一 打太快漏字 11/18 11:33