色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

Silverlight 2.5D RPG游戲技巧與特效處理:(三)動態(tài)光影

  通常來說,只要談到影子及影子制作,首先想到的不外乎3D游戲中的影子設(shè)計大致可分為硬實現(xiàn)和軟實現(xiàn)兩種,比如像“游戲影子制技術(shù)”這篇文章所談到3D游戲影子制作方案Projective ShadowShadow Map以及Shadow Volume均屬于硬實現(xiàn)。硬實現(xiàn)的效果最逼真,相對的運算量也較高;而對于Silverlight開發(fā)2.5D網(wǎng)游來說,我們通常會采用折中的軟實現(xiàn)去表述場景中的動態(tài)光影效果。精致的光影能讓玩家充分體驗到空間立體感,當然也是2.5D網(wǎng)游所不可或缺的條件之一。

  Silverlight 2.5D網(wǎng)游中的光影效果軟實現(xiàn)主要采用模擬仿真方法,傳統(tǒng)的處理方案大致有三種:

   一)垂直照射的固定圓影。我們可以假想當角色被頭頂上的光源所照射時會產(chǎn)生圓形光影,游戲中我們僅需一個圓影素材,根據(jù)角色的占地比例進行縮放匹配,2.5D立體效果立刻顯現(xiàn):

  二)基于紙娃娃系統(tǒng)的動態(tài)光影。原理也很簡單,就是將影子作為角色紙娃娃的部件之一根據(jù)角色的實時動作與其他部件進行動態(tài)組合。以增加美術(shù)的工作量為代價換取程序設(shè)計簡單化:

  三)動作同步映射的動態(tài)光影。與上一種方法所達到的效果一致,區(qū)別在于此方案我們無需額外的影子圖片資源,而是通過Silverlight內(nèi)置的WriteableBitmap配合上OpacityMask(透明蒙版)來實現(xiàn),比如類似如下邏輯:

WriteableBitmap writeableBitmap = new WriteableBitmap(role.OverallWidth, role.OverallHeight);
writeableBitmap.Render(role.Entity,
null);
writeableBitmap.Invalidate();
Rectangle rectangle
= new Rectangle() { Width = role.OverallWidth, Height = role.OverallHeight, Fill = new SolidColorBrush(Colors.Black) };
rectangle.OpacityMask
= new ImageBrush() { ImageSource = writeableBitmap };

NET技術(shù)Silverlight 2.5D RPG游戲技巧與特效處理:(三)動態(tài)光影,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 通辽市| 喀什市| 鄂托克前旗| 潮安县| 湖北省| 元江| 抚顺县| 南阳市| 年辖:市辖区| 辛集市| 历史| 四川省| 永定县| 日土县| 冕宁县| 个旧市| 泸水县| 黄石市| 怀安县| 茶陵县| 西和县| 太仆寺旗| 秭归县| 琼结县| 稷山县| 慈溪市| 宜春市| 南江县| 云和县| 扎囊县| 敖汉旗| 新兴县| 阿图什市| 镇原县| 安平县| 韶山市| 祁门县| 建德市| 阜新市| 洪雅县| 莫力|