最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

MME編寫入門(三)一個最簡單的著色

2023-03-06 22:10 作者:小林囈  | 我要投稿

從一個最簡單的著色器入手。

第一次看的話想必會有不少的疑問。不過耐下心來細細地去拆解就明白了,如果有c語言或者c++的學習經(jīng)歷,那么會更容易許多。

一個完整的效果文件,它是由 UI配置項、轉換矩陣、結構體、頂點著色器、像素著色器、technique-pass繪制構成。其中,UI配置項可以有也可以沒有,有的目的只是為了好修改其中的一些參數(shù)。

首先是這里,定義了一個四維向量outColor,他的值為0,0,0,1,分別對應著R\G\B\A,A是透明度,這里就顯示為黑色。1,0,0,1就是紅色,其他同理。

對于向量類型,最多有四個元素,可以通過xyzw(位置向量)或rgba(顏色向量)來訪問,這兩種訪問方式是等效的,但是不能混著用。

然后是轉換矩陣,這里只用到了這個WORLDVIEWPROJECTION。

前邊的WorldViewProjMatrix可以隨便起名字,但冒號后邊的語義不可以亂寫。

然后是結構體。

結構體就是把散亂的數(shù)據(jù)整理到一起,便于管理和使用。

我們需要物體的齊次坐標。

這個特殊的冒號語法表示一個語義,冒號后面的標志符用來指定變量的用途。

POSITION標志符表明該變量表示頂點位置,另外還有諸如COLOR、NORMAL等很多表示其他意義的標志符。

  • 語義是附加到著色器輸入或輸出的字符串,用于傳達有關參數(shù)預期使用的信息。 著色器階段之間傳遞的所有變量都需要語義。

接著,頂點著色器 從結構體中得到需要的數(shù)據(jù)。

VS_OUTPUT Out = (VS_OUTPUT)0;

這一行的作用初始化定義Out輸出。

也可以這么寫 VS_OUTPUT Out;

Out.Pos = mul(Pos,WorldViewProjMatrix);

對我們的頂點坐標和WVPMatrix相乘,完成頂點的世界觀察投影變換。

return Out;

輸出變換后的頂點信息。

接下來是像素著色器。

return outColor,在此之前我們已經(jīng)定義過顏色。

接下來的是繪制。

最后一行是我額外加上去的。完成之后,就得到了一個全黑的miku!


關于對象繪制有兩種,舞力介入P在basic.fx ver2.0中是分為兩種。

一種是セルフシャドウOFF,自陰影OFF。

一種是セルフシャドウON,自陰影ON。

自陰影就是模型的這里。

如果單純的用一次pass,而且這個pass沒有_ss,模型還開啟了本影,那么就繪制不了。

比如這里,我把_ss刪掉了。全黑miku沒有了……

有的模型存在輪廓線,可以選擇改變大小和顏色,大小為0的時候就關閉了輪廓線。

(注意,要在模型的模式下才能選擇輪廓線)

如果刪掉這一指令

technique EdgeTec < string MMDPass = "edge"; > {

}

那么輪廓線就無法正常繪制。就會變成這樣。

這么寫相當于不繪制輪廓線。

也可以這么寫。

關于MME,我還只是初學者,慢慢學習吧。

MME編寫入門(三)一個最簡單的著色的評論 (共 條)

分享到微博請遵守國家法律
青龙| 佛冈县| 富顺县| 大姚县| 平江县| 若羌县| 泽普县| 达尔| 牙克石市| 吉水县| 东明县| 临颍县| 叙永县| 崇明县| 湟源县| 资溪县| 延庆县| 太原市| 左云县| 金堂县| 迭部县| 孟州市| 莲花县| 拉萨市| 甘南县| 岐山县| 扶绥县| 乌拉特中旗| 汝城县| 库尔勒市| 安阳县| 江源县| 赣榆县| 沈阳市| 贵港市| 西充县| 康马县| 甘泉县| 五家渠市| 丰城市| 泰安市|