五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

嘗試入門Shader

2023-03-09 16:04 作者:王大喵愛編程  | 我要投稿

本文僅為邊學(xué)邊記錄的流水賬。

想優(yōu)先驗(yàn)證一下自己的想法的可行性,能不能在Unity中自行繪制一些數(shù)據(jù)。

大概是要用到Shader,找到《Unity Shader 入門精要》,里面應(yīng)該會(huì)有我想要的東西。

快速刷到3.1章,就可以上手嘗試了。

在Unity中我們需要配合使用材質(zhì)(Material)和Unity Shader才能達(dá)到需要的效果。

一個(gè)最常見的流程是:

(1)創(chuàng)建一個(gè)材質(zhì);

(2)創(chuàng)建一個(gè)Unity Shader,并把它賦給上一步中創(chuàng)建的材質(zhì);

(3)把材質(zhì)賦給要渲染的對象;

(4)在材質(zhì)面板中調(diào)整Unity Shader的屬性,以得到滿意的效果。

跟著1234走一遍。

創(chuàng)建shader的時(shí)候有4個(gè)模版,分別表示:

  • Standard Surface Shader會(huì)產(chǎn)生一個(gè)包含了標(biāo)準(zhǔn)光照模型的表面著色器模板,

  • Unlit Shader則會(huì)產(chǎn)生一個(gè)不包含光照(但包含霧效)的基本的頂點(diǎn)/片元著色器,

  • Image Effect Shader則為我們實(shí)現(xiàn)各種屏幕后處理效果提供了一個(gè)基本模板。

  • Compute Shader會(huì)產(chǎn)生一種特殊的Shader文件,這類Shader旨在利用GPU的并行性來進(jìn)行一些與常規(guī)渲染流水線無關(guān)的計(jì)算。

Unity Shader是Unity為開發(fā)者提供的高層級(jí)的渲染抽象層。ShaderLab是Unity提供的編寫Unity Shader的一種說明性語言。

一個(gè)典型的ShaderLab語義塊如下

在Unity中,我們可以使用上面3種形式來編寫Unity Shader

- 表面著色器寫在SubShader里面,是對頂點(diǎn)/片元著色器的抽象,并處理了光照細(xì)節(jié)。

表面著色器,CGPROGRAM和ENDCG之間的代碼是使用CG/HLSL編寫的,也就是說,我們需要把CG/HLSL語言嵌套在ShaderLab語言中

- 頂點(diǎn)/片元著色器是寫在Pass里面的,更復(fù)雜也更靈活


頂點(diǎn)/片元著色器的代碼也需要定義在CGPROGRAM和ENDCG之間,也是使用CG/HLSL編寫的

可以使用GLSL來寫嗎?

當(dāng)然可以。這意味著你可以發(fā)布的目標(biāo)平臺(tái)就只有Mac OS X、OpenGL ES 2.0或者Linux,而對于PC、Xbox 360這樣的僅支持DirectX的平臺(tái)來說,你就放棄它們了。

你可以怎么寫呢?

和CG/HLSL需要嵌套在CGPROGRAM和ENDCG之間類似,GLSL的代碼需要嵌套在GLSLPROGRAM和ENDGLSL之間。

嘗試入門Shader的評(píng)論 (共 條)

分享到微博請遵守國家法律
津南区| 久治县| 比如县| 金秀| 黔西县| 临颍县| 灵丘县| 乳源| 托克托县| 南岸区| 麻城市| 同江市| 吉安县| 黄梅县| 游戏| 汝州市| 鹤峰县| 金湖县| 威海市| 米脂县| 额济纳旗| 景德镇市| 宜都市| 文昌市| 巧家县| 晋州市| 彰化市| 墨江| 景谷| 乌鲁木齐市| 林甸县| 东山县| 南皮县| 衡水市| 赤水市| 保山市| 盐津县| 宁安市| 司法| 宣汉县| 德安县|