轉自馮樂樂的《Unity Shader入門精要》 通常來講,我們要模擬真實的光照環境來生成一張圖像,需要考慮3種物理現象。 首先,光線從光源中被發射出來。 然后,光線和場景中的一些物體相交:一些光線被物體吸收了,而另一些光線被散射到其他方向。 最后,攝像機吸收了一些光,產生了一張圖像 ...
摘錄自 馮樂樂的 Unity Shader入門精要 笛卡爾坐標系 二維笛卡爾坐標系 在游戲制作中,我們使用的數學絕大部分都是計算位置 距離 角度等變量。而這些計算大部分都是在笛卡爾坐標系下進行的。 一個二維的笛卡爾坐標系包含了兩個部分的信息: 一個特殊的位置,即原點,它是整個坐標系的中心。 兩條過原點的互相垂直的矢量,即X軸和Y軸。這些坐標軸也被稱為是該坐標的矢量。 OpenGL 和 Direct ...
2017-10-01 08:51 0 1717 推薦指數:
轉自馮樂樂的《Unity Shader入門精要》 通常來講,我們要模擬真實的光照環境來生成一張圖像,需要考慮3種物理現象。 首先,光線從光源中被發射出來。 然后,光線和場景中的一些物體相交:一些光線被物體吸收了,而另一些光線被散射到其他方向。 最后,攝像機吸收了一些光,產生了一張圖像 ...
轉自 馮樂樂的《Unity Shader 入門精要》 2010年的Unity 3 中,Surface Shader 出現了。 表面着色器的一個例子。 我們先做如下准備工作。 1)新建一個場景,去掉天空盒子 2)新建一個材質,新建一個Shader,賦給材質。 3)場景中創建一個膠囊體 ...
線紋理的代碼非常簡單,但是我們有必要在這之前首先了解它們背后的實現原理。 深度紋理實際上就是一張渲染紋理,只不過它里面存儲的像素值不是顏色值而是一個高精度的深度值。由於被存儲在一張紋理中,深度紋理里 ...
在三維數學中,我們通常會使用矩陣來進行變換。一個矩陣可以把一個矢量從一個坐標空間轉換到另一個坐標空間。本篇文章就對矩陣相關的數學知識做了記錄總結。 數學基礎之坐標系,點和矢量的相關內容可以看這篇文章 矢量和矩陣 我們可以用矩陣來表示矢量。實際上,矢量可以看成是n×1的列矩陣或1×n的行矩陣 ...
前言 在實時渲染中要實現透明效果,通常會在渲染模型時控制它的透明通道。 Unity中通常使用兩種方法來實現透明 :(1)透明度測試(AlphaTest)(2)透明度混合(AlphaBlend)。前者往往無法實現真正的半透明效果。 深度緩沖(Depth Buffer ...
數學對於計算機圖形學的重要性是不言而喻的。在學習Shader之前,首先就要打好數學基礎,好在入門Unity Shader所需的數學知識都是線性代數中很基礎的的內容。按部就班的來,第一篇文章記錄總結的是坐標系,點,矢量等概念以及簡單的運算。本文主要源自《Unity Shader入門精要》一書 ...
重要的事 先說重要的事,就是我的書籍《Unity Shader入門精要》在經過無數次跳票后,終於出版上市了(淚目…)! 購買傳送門: 亞馬遜 當當 京東 截止到我寫這篇文章的時候,京東是沒有貨的狀態……不過之后應該會陸續到貨 ...
Unity Shader的組織形式 Unity Shader的形態 Unity官方手冊上講Unity Shader有三種不同的編寫方案,這三種編寫方案分別是surface shaders、vertex and fragment shaders和fixed function ...