程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#開發WPF/Silverlight動畫及游戲系列教程(Game Course):(十一)(2)

C#開發WPF/Silverlight動畫及游戲系列教程(Game Course):(十一)(2)

編輯:關於C語言

首先來講講實現原理吧:我們可以從地圖表現層(下文直接就稱之地圖好了)中看到,遮擋人物的只有一棵樹。那麼我們想要在此地圖上實現遮罩效果,首先就得用Photoshop將這棵樹給截出來,當然越精確越好,然後將它單獨保存成一張背景透明的圖片(通常Windows桌面RPG游戲中會將所有的遮擋物統一規格,例如50*50一張(如大於則分兩張、三張…等等),然後將全部遮擋物圖片放進一個龐大的二進制文件中,顯然這對於Silverlight基於網頁的游戲是不容許的),如果一張地圖上有多個遮擋物,同樣將他們都截取出來然後依次命名保存。准備工作做完後,我們就需要將遮罩層的圖片放在頂層,將地圖放在底層,人物等放在中間層。最後分別將遮罩層的所有圖片布局到它們應該遮擋的位置上,這樣就完成了所有的遮擋工作了。好了。下面我將用代碼來實現它。

這裡我以下圖作為地圖實例:

很明顯該地圖有三處障礙物,兩處遮擋物。障礙物我用綠色區域描繪出來了,遮擋物則為兩棵數,我用Photoshop將它們分別截取了出來命名為:Mask1.png和Mask2.png。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved