日積月累Shader - 08 運(yùn)動(dòng)

提示

教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行昆著,不需要另外安裝軟件環(huán)境:
官方提供在線編寫shader工具:https://thebookofshaders.com/edit.php
glslsandbox網(wǎng)站:http://glslsandbox.com/
shadertoy網(wǎng)站:https://www.shadertoy.com/

平移

vec2 translate = vec2(cos(u_time),sin(u_time));
    vec2 st2 = st+translate*0.05;

整體點(diǎn)位置同時(shí)偏移一定量



旋轉(zhuǎn)

將二維向量繞 vec2(0.0) 點(diǎn)旋轉(zhuǎn)跑筝。

mat2 rotate2d(float _angle){
    return mat2(cos(_angle),-sin(_angle),
                sin(_angle),cos(_angle));
}

根據(jù)以往我們畫形狀的方式已骇,這并不是我們想要的。我們的十字是畫在畫布中心的孤荣,對應(yīng)于點(diǎn) vec2(0.5) 隅居。所以,再旋轉(zhuǎn)坐標(biāo)空間之前瞎惫,我們需要先把圖形移到中心點(diǎn)溜腐,坐標(biāo) vec2(0.0) ,再旋轉(zhuǎn)坐標(biāo)空間瓜喇,最后在移動(dòng)回原點(diǎn)挺益。


所以繞(m,n)點(diǎn)旋轉(zhuǎn)

st -= vec2(m,n);
st = rotate2d( sin(u_time)*PI ) * st;
st += vec2(0.5); 

+vec2(0.5) 是為了讓圖形回到平面中心

縮放

mat2 scale(vec2 _scale){
    return mat2(_scale.x,0.0,
                0.0,_scale.y);
}

所以以(m,n)點(diǎn)縮放

st -= vec2(m,n);
st = scale( vec2(sin(u_time)+1.0) ) * st;
st += vec2(0.5);

YUV 顏色

mat3 yuv2rgb = mat3(1.0, 0.0, 1.13983,
                    1.0, -0.39465, -0.58060,
                    1.0, 2.03211, 0.0);
mat3 rgb2yuv = mat3(0.2126, 0.7152, 0.0722,
                    -0.09991, -0.33609, 0.43600,
                    0.615, -0.5586, -0.05639);
void main(){
    vec2 st = gl_FragCoord.xy/u_resolution;
    vec3 color = vec3(0.0);

    // UV values goes from -1 to 1
    // So we need to remap st (0.0 to 1.0)
    st -= 0.5;  // becomes -0.5 to 0.5
    st *= 2.0;  // becomes -1.0 to 1.0

    // we pass st as the y & z values of
    // a three dimensional vector to be
    // properly multiply by a 3x3 matrix
    color = yuv2rgb * vec3(.5, st.x, st.y);

    gl_FragColor = vec4(color,1.0);
}
  • 定義了一個(gè)yuv坐標(biāo)量,并轉(zhuǎn)化為rgb色域
  • yuv色域是這個(gè)樣子的 rgb2yuv * vec3(.5, st.x, st.y);


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末乘寒,一起剝皮案震驚了整個(gè)濱河市望众,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖烂翰,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件夯缺,死亡現(xiàn)場離奇詭異,居然都是意外死亡甘耿,警方通過查閱死者的電腦和手機(jī)踊兜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來棵里,“玉大人润文,你說我怎么就攤上這事〉盍” “怎么了典蝌?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長头谜。 經(jīng)常有香客問我骏掀,道長,這世上最難降的妖魔是什么柱告? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任截驮,我火速辦了婚禮,結(jié)果婚禮上际度,老公的妹妹穿的比我還像新娘葵袭。我一直安慰自己,他們只是感情好乖菱,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布坡锡。 她就那樣靜靜地躺著,像睡著了一般窒所。 火紅的嫁衣襯著肌膚如雪鹉勒。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天吵取,我揣著相機(jī)與錄音禽额,去河邊找鬼。 笑死皮官,一個(gè)胖子當(dāng)著我的面吹牛脯倒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播捺氢,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼盔憨,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了讯沈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎缺狠,沒想到半個(gè)月后问慎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡挤茄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年如叼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片穷劈。...
    茶點(diǎn)故事閱讀 38,018評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡笼恰,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出歇终,到底是詐尸還是另有隱情社证,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布评凝,位于F島的核電站追葡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏奕短。R本人自食惡果不足惜宜肉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望翎碑。 院中可真熱鬧谬返,春花似錦、人聲如沸日杈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽达椰。三九已至翰蠢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啰劲,已是汗流浹背梁沧。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蝇裤,地道東北人廷支。 一個(gè)月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像栓辜,于是被迫代替她去往敵國和親恋拍。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 提示 教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行藕甩,不需要另外安裝軟件環(huán)境:官方提供在線編寫shader工具:https://...
    Zszen閱讀 868評論 0 51
  • 提示 教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行施敢,不需要另外安裝軟件環(huán)境:官方提供在線編寫shader工具:https://...
    Zszen閱讀 809評論 0 50
  • 提示 教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行,不需要另外安裝軟件環(huán)境:官方提供在線編寫shader工具:https://...
    Zszen閱讀 1,104評論 1 51
  • 提示 教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行,不需要另外安裝軟件環(huán)境:官方提供在線編寫shader工具:https://...
    Zszen閱讀 1,166評論 0 50
  • 提示 教程例子都可以到下面網(wǎng)址進(jìn)行運(yùn)行僵娃,不需要另外安裝軟件環(huán)境:官方提供在線編寫shader工具:https://...
    Zszen閱讀 2,699評論 0 52