FBO: Frame Buffer Object,默認繪制在1號FBO中,自定義的FBO是可以做讀寫操作的。繪制到自定義的FBO,然后顯示出來,如下圖所示:Qt中有關于FBO的類,QOpenGLFra
運行環境:Win10 x64Unity 5.5.4場景中有一個平行光,一個黃顏色點光源,設高光顏色為綠,效果如下:Shader代碼: Shader "Custom/DifSpecPoint" {
建立cube,賦上貼圖,camera不動,旋轉cube,正面向著camera的貼圖清晰,或者說法線方向與camera的視方向平行的清晰,成90度的最為模糊,其它角度的在最清晰和最模糊之間最清晰此時其他
場景中新建cube,和一個plane,新建一個standard surface shader和用此shader的材質賦給cube。在不改變這個標準表面shader原有元素的基礎上加入頂點程序,實現”S
膨脹:取一個像素周圍的點,取最亮的點為當前的點顏色,為膨脹效果腐蝕:取一個像素周圍的點,取最暗的點為當前的點顏色,為腐蝕效果膨脹Fragment Shadervarying vec2&nbs
關于探照燈的效果如下圖所示:探照燈需要傳入光源的位置,光源的方向以及夾角的大小(夾角為光源覆蓋的夾角的一半)計算思路:用光源到點的距離與光源的方向的單位向量做點乘,得到夾角的cos,用計算的夾角cos
引言 shader到底是干什么用的?shader的工作原理是什么? 其實當我們對這個問題還很懵懂的時候,就已經開始急不可耐的要四處搜尋有關shader的資料,恨不得立刻上手
場景中建一個plane,一個cube一個cylinder把場景平行光的強度調低一些,再加一個點光源,設置為綠色吧,俗話說的好:愛是一道光,綠到你發荒……把點光源的shadowtype設置為hard s
目標:賦予材質法線貼圖,并能響應光照的變化,體現出凹凸感。場景中只有一個主平行光找了一張法線貼圖(網上蕩的)在unity里別忘了把這張圖設為normalmap先看一下,如果只是作為普通貼圖,賦在Dif
目標:兩個cube,cube1在前,默認不透明白色,cube2在后,藍色,部分被cube1遮擋被遮擋部分也要顯示,并顯示為綠色如下圖:一步一步來,我們先實現被遮擋部分能顯示Shader代碼: Shad