青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

清源游民  gameogre@gmail.com

陰影技術
Ogre支持兩種主流的動態陰影技術,模板(stencil)陰影與紋理(texture)陰影,每一種都有兩個變體:modulative 與additive。這四種技術完全兼容固定函數圖形流水線,因此不需要可編程GPU支持。然而,可利用GPU程序進行加速。在場景中只有使用一種陰影技術,應該在場景渲染這前進行陰影技術相關設置(最好是在創建場景管理器之間)。通過調用SceneManager::setShadowTechnique()來設置技術,參數指定技術的具體類型。陰影技術缺省情況下被關閉。對于物體,投射與接收陰影可以在材質中控制,也可以控制物體自己對自己投射。由于模板陰影算法的本質特征,透明半透明的物體要么全部投射實心陰影要么根本不投影影,不可能得到半透明的陰影。而使用紋理陰影技術則可以。燈不能用來投射陰影。
模板陰影算法
模板陰影算法原理上來講比較簡單:從光源的角度看一個可以投射陰影的物體,可以看到物體最外輪廓的
形狀,把這個輪廓沿光的方向延伸,形成一個空間體,就是所謂的陰影錐(shadow volume),很顯然,如果一
個物體被這個陰影錐包圍,那么這個物體就處于前面那個物體所投射的陰影中了。既然陰影錐是通過延伸的方式來增長的,那么可以在延伸方向對錐體的延伸范圍作出控制。在延伸方向上,有一端不能延伸,另外一端的延伸范圍控制按照下面兩個規則。第一,如果使用可編程圖形硬件,頂點程序可以對頂點進行無限延伸。第二,如果使用固定函數圖形流水線,延伸的范圍由光線衰減設置(點光源和聚光燈)或使用
SceneManager::setShadowDirectionalLightExtrusionDistance()來控制。在不使用加速圖形硬件的情況下,應該盡量避免物體離光源過近,這樣會產生過于寬的陰影錐,導致不正確的陰影效果。根據算法原理,產生的陰影邊界非常明顯:一個像素要么在陰影中,要么不在。這帶來的好處是,即使陰影錐的延伸距離很大,也不會影響精度??梢灾v這種技術產生的陰影是一種“硬陰影"。紋理陰影技術可以”軟化“陰影。使用模板陰影技術需要邊列表(edge lists),標準的轉換工具在產生二進制mesh文件時會創建邊列表,如果沒有,在程序中也可以用Mesh::buildEdgeList()來產生。因為有時候,我們會代碼的方式來生成mesh,如果這時我們想使用模板陰影技術,那么就要確保產生出邊列表數據。如果邊列表數據不存在,那么ogre會認為你不希望這個物體投射陰影。
模板陰影優化
Ogre能進行一些一般的優化。例如可使用硬件加速,可能通過光的方向與范圍來檢測它是否會對平截頭體
(frustum)產生影響,從面避免了計算那些不必要的陰影幾何體。ogre支持雙面模板,stencil-wrapping擴展,
這些都能阻止不必要的原型安裝(primitive setup)與驅動過載(driver overhead)。ogre使用相對廉價的Z-pass算法代替Z-Fail算法(當Z-Fail算法不必要時,假如相機處于一個陰影錐中,使用Z-pass算法會有問題,這種情況下應該使用Z-fail算法)。
陰影錐不受封閉幾何的影響。在下圖中,

衛兵投射到地板上,投射的范圍內有個封閉的箱子(此例中設定箱子不投射陰影)。根據現實世界的經驗,箱子上會有衛兵投射的陰影,如圖中所示。但光線經過箱子阻擋后應該不再前進,也就是說陰影錐經過箱子阻擋后不應該延伸了,于是箱子后面的地板上不應該再出現衛兵的陰影(真實世界中出現箱子的陰影,但是此例設定箱子不產生陰影)。圖中的地板上出現了衛兵投射的陰影,這說明了陰影不會受到延伸方向上物體的影響。
在屏幕上看不到的物體也可以把陰影投影到可視的平截頭體(view frustum)中。雖然看不到,但是這些物體
也必須得被渲染,渲染他們純粹是為了得到產生陰影的相關數據。在不使用硬件加速的情況下,盡量避免物體離光源過近。
紋理陰影
紋理陰影算法的基本原理是:首先從光源的角度觀察場景,把觀察到結果渲染到一個紋理,紋理中只保存
深度值(深度緩沖中的值)。這樣做的意義是,在紋理中保存了場景中的物體與光源之間的最短距離。然后從相機的角度進行正常渲染場景,計算每個像素與光源的距離,并與紋理對應的值進行比較,如果大于,那么說明它不是光線方向上離光源的最近的,會有陰影產生。/*可以有點疑惑,每個需要測試的像素如何與紋理中的像素一一對應呢?還是按照生成紋理圖的原理,需要把測試頂點的位置坐標,轉換到光源為視點的空間,也就是說從光源的角度,看看頂點應該在哪里。這樣就可以一一對應比較了。當然這僅僅是為了比較的目的,真正渲染時頂點還是要先轉換到視空間中(從相機角度看)*/。
紋理陰影速度上要比模板陰影算法快,但因為陰影被渲染到紋理中,而紋理具有確定的解析度,因此當陰影被擴展,拉伸時,效果會較差,如產生鋸齒邊等。
因為使用了紋理內存,因此它的尺寸決定了紋理陰影數的上限。ogre中可以管理一幀中可以使用的陰影紋理數:SceneManager::setShadowTextureCount()。每個光源都需要一個紋理。假如指定的紋理數少于光源數,ogre采用”先來先服務“的原則分配紋理。假如不能增加紋理尺寸來提高視覺效果,最好減小投射陰影的距離。陰影不會突然終結,ogre會淡化紋理陰影的邊緣阻止有陰影與無陰影之間劇烈過渡。可以控制淡化半徑。
Modulative陰影混合
正常場景渲染的顏色與陰影的顏色相乘來創建暗的、表示陰影的顏色。這種方法有從已經渲染的場景中”減去“光照影響的效果。陰影區域一律變暗,與進入陰影區的光線數無關。當有多個光源產生的陰影區
重疊時,陰影會非常暗,視覺效果很差。
Additive Shadow Masking
Modulative的方法是通過影響陰影區實現的。而Additive方法是只對處于光照中的區域有影響,對陰影區沒
有影響。這樣陰影區會受到別的光源的影響而變得稍亮,而相互重疊的陰影區也不會更暗。
ogre會把一個通道分為三個通道.
Ambietn,應用環境光到場景中,在這個通道沒有紋理被渲染。
?Diffuse and specular, 這個通道對每個燈都渲染一次,當前燈產生的陰影區域不受影響。其余的區域與場景進行混合。同樣也不使用任何貼花紋理。
Decal。紋理被應用到前面累積的顏色上。


?

posted on 2007-03-21 17:07 清源游民 閱讀(3104) 評論(0)  編輯 收藏 引用 所屬分類: OGRE
<2007年3月>
25262728123
45678910
11121314151617
18192021222324
25262728293031
1234567

留言簿(35)

隨筆分類(78)

隨筆檔案(74)

文章檔案(5)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产婷婷精品| 欧美一区二区三区视频在线观看| 亚洲精选一区二区| 亚洲国产一区二区精品专区| 亚洲成色777777在线观看影院| 国产综合色产| 精品999在线播放| 亚洲国产精品免费| 一个色综合av| 性欧美1819sex性高清| 久久久美女艺术照精彩视频福利播放| 久久久久久国产精品mv| 欧美大片免费看| 日韩一级黄色大片| 欧美一区二区三区免费大片| 蜜桃av一区二区在线观看| 欧美日韩国产麻豆| 国语自产精品视频在线看抢先版结局 | 亚洲精品日本| 国产精品久久久久久久久免费樱桃| 国产精品美腿一区在线看| 国产欧美一区二区三区久久人妖| 国产视频亚洲精品| 亚洲日本成人在线观看| 香蕉成人伊视频在线观看| 免费不卡在线视频| 一区二区激情视频| 理论片一区二区在线| 国产精品hd| 有码中文亚洲精品| 亚洲自拍偷拍一区| 亚洲国产成人av好男人在线观看| 一本色道久久综合一区| 久久久久久91香蕉国产| 欧美午夜大胆人体| 亚洲精品久久久蜜桃| 久久亚洲国产精品一区二区| 一区二区三区成人精品| 欧美成人第一页| 狠狠色综合色区| 久久黄色小说| 亚洲欧美精品中文字幕在线| 欧美久久精品午夜青青大伊人| 国产一区二区成人久久免费影院| 在线天堂一区av电影| 亚洲国产你懂的| 久久一本综合频道| 国产综合视频在线观看| 欧美一站二站| 亚洲影视综合| 国产嫩草影院久久久久| 亚洲婷婷免费| 夜夜嗨av色综合久久久综合网| 两个人的视频www国产精品| 国产一区视频在线看| 久久国产精品久久国产精品| 亚洲小说春色综合另类电影| 欧美视频在线观看一区| 亚洲视频一二三| 亚洲精品一区二区在线| 欧美日韩一区二| 亚洲欧美高清| 午夜亚洲激情| 永久555www成人免费| 欧美国产日韩亚洲一区| 牛牛国产精品| 中文日韩欧美| 在线一区二区视频| 国产乱理伦片在线观看夜一区| 欧美亚洲综合另类| 性久久久久久久久| 亚洲高清在线观看| 亚洲人成在线播放网站岛国| 欧美日本一区二区视频在线观看| 亚洲图色在线| 午夜免费在线观看精品视频| 国色天香一区二区| 亚洲欧洲av一区二区三区久久| 一本久久综合亚洲鲁鲁| 欧美精品电影| 亚洲一区精品电影| 亚洲欧美精品中文字幕在线| 好吊色欧美一区二区三区视频| 麻豆精品传媒视频| 欧美国产日韩一区二区三区| 亚洲色图自拍| 香港成人在线视频| 亚洲韩国青草视频| 在线视频一区观看| 国产自产v一区二区三区c| 亚洲大胆av| 国产精品午夜av在线| 麻豆国产精品777777在线| 欧美久久久久久蜜桃| 久久riav二区三区| 欧美久久久久中文字幕| 欧美在线观看你懂的| 欧美成人午夜激情视频| 欧美一区二区黄色| 欧美电影免费观看网站| 欧美一区二区三区视频| 免费亚洲网站| 欧美中日韩免费视频| 欧美黄色日本| 久久综合网络一区二区| 欧美日韩专区| 欧美国产日本| 国产日韩欧美91| 一本久久综合亚洲鲁鲁| 亚洲黄色片网站| 午夜视频一区在线观看| av不卡在线看| 玖玖综合伊人| 欧美在线观看日本一区| 欧美日韩美女| 亚洲高清在线观看| 亚洲精品小视频| 欧美一区二区日韩| 欧美夜福利tv在线| 亚洲欧美国产不卡| 久久精精品视频| 亚洲欧美国内爽妇网| 免费的成人av| 六十路精品视频| 国产乱肥老妇国产一区二| 亚洲七七久久综合桃花剧情介绍| 国产在线不卡| 欧美亚洲日本网站| 香蕉成人伊视频在线观看 | 亚洲欧洲在线观看| 亚洲国产日韩在线| 久久精品一区二区三区中文字幕| 午夜精品免费在线| 欧美啪啪成人vr| 国产精品女主播一区二区三区| 99成人在线| 国产欧美精品一区二区三区介绍| 亚洲成人在线网站| 久久国产加勒比精品无码| 亚洲日本成人在线观看| 亚洲成在线观看| 久久精品国产99| 久久婷婷激情| 在线成人激情黄色| 久久久欧美精品sm网站| 久久亚洲春色中文字幕| 在线高清一区| 欧美大片一区二区三区| 亚洲理论在线| 亚洲一区二区三区三| 国产精品高清在线| 亚洲欧美视频在线观看| 亚洲欧美日韩精品久久久| 免费观看日韩| 久久av老司机精品网站导航 | 农夫在线精品视频免费观看| 美女999久久久精品视频| 亚洲电影成人| 欧美精品三级在线观看| 亚洲视频在线观看| 久久青青草原一区二区| 亚洲国产视频a| 欧美日韩一区二区三| 欧美一级大片在线观看| 麻豆久久精品| 亚洲一区二区黄| 狠狠色丁香久久婷婷综合丁香| 裸体一区二区| 亚洲视频专区在线| 美女在线一区二区| 亚洲视屏在线播放| 国产最新精品精品你懂的| 欧美极品在线视频| 亚洲一区在线观看视频| 欧美电影电视剧在线观看| 亚洲视频观看| 一区二区在线观看视频在线观看| 欧美精品激情在线观看| 午夜精品视频网站| 亚洲高清视频一区二区| 久久精品国产77777蜜臀| 亚洲美女在线看| 国产日韩欧美麻豆| 欧美麻豆久久久久久中文| 久久国产精品99久久久久久老狼| 91久久久久久久久| 久久日韩粉嫩一区二区三区| 国产亚洲精品高潮| 亚洲成色www8888| 久久久久久尹人网香蕉| 亚洲综合清纯丝袜自拍| 欧美欧美天天天天操| 欧美高清视频| 性欧美超级视频| 亚洲另类自拍| 精品1区2区| 国产亚洲欧洲997久久综合| 欧美午夜剧场| 欧美视频1区| 欧美乱人伦中文字幕在线|