激情六月丁香婷婷|亚洲色图AV二区|丝袜AV日韩AV|久草视频在线分类|伊人九九精品视频|国产精品一级电影|久草视频在线99|在线看的av网址|伊人99精品无码|午夜无码视频在线

游戲畫面角色透明特效制作教程

發(fā)布時間:2024-04-28 19:31:48 瀏覽量:136次

有時候,我們需要在畫面上顯示一張角色的圖像,而這張圖片是有自己的背景的,要是直接貼到了游戲的畫面中,就會出項覆蓋游戲畫面。顯示出的效果特別不好,這里我們可以用到透明效果來處理。

其中,原理就是用BitBlt() 的Raster值運算去掉原圖片的背影。但是只適用于原圖背景為黑色,才會看到效果。如圖,左邊部分為前景圖,右邊部分為屏蔽圖。

為了得到透明效果,我們需要運用到BitBlt()貼圖函數以及其參數Raster的值來將圖片中不必要的部分去掉(又稱去背),使得圖中的主題可以與背景完美融合。

制作透明效果有很多種方法,但是基本上都是利用貼圖時不同的Raster運算,通過轉換而產生相同的透明效果。在這里先來介紹一種透明運算的方法。

我們以圖中的恐龍為例子,首先準備一張位圖,如下圖。

圖中的左邊的圖是要去背并貼到背景上的前景圖。右邊的黑白圖稱為“屏蔽圖”,在透明的過程中會用到它。要把去背的位圖與屏蔽圖合并成同一張圖,透明的時候再按照需要來進行裁切。可以把它分成兩張圖,但是這樣程序必須運行兩次圖文件加載的操作。

有了屏蔽圖就可以利用貼圖函數來產生透明效果了,所需的貼圖步驟如下:

<1>將屏蔽圖與背景圖做"AND"運算,Raster值為SRCAND,貼到目的地DC中。

<2>將前景圖與背景圖做"OR"運算,Raster值為SRCPAINT,貼到目的地DC中。

為什么經過上面兩個操作就能產生透明的效果呢?看下圖就理解了:

下面具體說明上面兩個步驟所產生的圖點色彩的變化。

1.屏蔽圖與背景圖做"AND"運算

<1>屏蔽圖中的黑色部分與背景圖做"AND"運算:

現(xiàn)在開始編寫程序:

在VS2008中新建Win32程序,使用VC默認的框架。

<..代碼內容請參閱圖片..>

想要學習更多關于游戲設計、動畫培訓等數字藝術方面的知識嗎?歡迎報名火星時代教育的相關課程,提升你的數字藝術技能!點擊咨詢

熱門課程推薦

熱門資訊

請綁定手機號

x

同學您好!

您已成功報名0元試學活動,老師會在第一時間與您取得聯(lián)系,請保持電話暢通!
確定