目錄
作者簡介
審稿人簡介
前言
我是偏偏
?Unity Shaders and Effets Cookbook
第一章:Diffuse Shading - 漫反射著色器
第二章:Using Textures for Effects - 著色器紋理特效的應用
第三章:Making Your Game Shine with Specular - 鏡面反射讓你的游戲閃光
第四章:Reflecting Your World - 反射
第五章:Lighting Models-光照模型
作者簡介
????????Kenny Lammers擁有超過13年游戲行業的工作經驗。 曾就職于微軟、Activision,最后任職的公司是Surreal Software。他目前管理著兩家公司,Creative TD和Ozone Interactive。第一家Creative TD公司,主要給?IGT、微軟、Janus Research 和Allegorithmic這些公司做Unity3D的咨詢和資產的創建。Ozone Interactive是他第二家公司,與商業合作伙伴Noah Kaarbo共同經營。Ozone Interactive這家公司主要專注于Unity3D領域,專門從事交互式應用程序和高質量的設計。為亞馬遜、E-line Media、微軟和Sucker Punch游戲等公司提供服務。由于他有在游戲行業工作過的經驗,讓他有機會接觸到使用ZBrush和Maya軟件來創建角色。還編寫了《實時著色器和后期處理特效》、使用c#在Unity3D中編過寫完整的游戲。他目前正在開發幾款游戲,為了加快游戲制作的進度還在Unity中開發了工具集。
作者的話
我要感謝的人太多了!單這個就完全可以占整整一章。首先要感謝的也是最重要的當然是我的媽媽。她總是告訴我朝著夢想努力,并總是在我身邊支持我!我要感謝我的商業伙伴Noah Kaarbo,他在我寫這本書的過程中一直支持著我,并稱為了我的好朋友。我還要感謝一起共事過的所有人,但尤其重要的是,我要感謝那些一直鼓勵著我的人,這些人督促我進一步提高了技能水平,并為我打開了行業的新世界。這些人是Ben Cammerano (MGS),?Paul Amer (MGS),Fillipo Costanzo (5D Institute),Alessandro Tento (Lakshya),James Rogers (MGS),and Tony Garcia (Unity Technologies)。如果沒有他們其中的任何一個,就不會有我今天的成就,我對他們致以最從高的致意。
我要感謝我所有的意大利游戲開發者朋友們,感謝他們為我們國家的游戲開發產業做出的貢獻?
審稿人簡介
Vincent Lim
Vincent Lim畢業于The One Academy,擁有數字動畫和動畫專業和游戲開發的文憑。畢業后,他立即加入了大螞蟻工作室,被塑造成了游戲開發者。和他們相處了幾年,Vincent學會了很多,從低多邊形建模到平鋪紋理再到地形雕刻,還有一點點的編程和MEL腳本。?他在大螞蟻工作室非常積極,期間遇到的各種各樣的任務。Vincent掌握了游戲引擎的知識、某些著色器的工作原理以及管線的工作流。為了提高效率,他得到了幾次創建/重組某些管線的機會。他的MEL腳本技能是通過管線內的實際運用來培養的。 這使他可以做出藝術家可以使用的工具,在游戲中用來加快項目的進度并縮短從基礎網格到3D模型的時間。憑借在Big Ant Studios的這些經驗,Vincent通過學習新軟件和閱讀游戲力學以及游戲引擎,拓寬了自己的知識面。 這讓他發現了Unity,并且他一直在Unity的領域中不斷的保持著新的嘗試。
Christian 'XeviaN' Meneghini
Christian 'XeviaN' Meneghini是一名年輕的老板,并熱衷于Sinclair ZX Spectrum(它是由英國Sinclair公司于1982年生產的一款8位的鍵盤式個人電腦)。他開始使用基礎的硬編碼精和匯編語言來窺測游戲開發世界。? 用基本語言和匯編語言的硬編碼精靈窺探游戲開發世界。多年過去了,他使用了C64、輝煌的Amiga和所有PC家族處理器等偉大技術,使用了從Hercules和CGA的所有的視頻卡,從第一個3D加速器到當前的3D加速器。?他沉迷于實時渲染和演示場景,同時專門從事圖形編程和性能優化。?Christian 在業余時間也創作音樂。?多年來,Christian與朋友和同事們一起日以繼夜的工作,研究技術書籍,編寫引擎,并服務于第三方公司。2011年,Christian與朋友Marco Di Timoteo和 Luca Marchetti,一起創辦了一家小型工作室,叫studio EVIL。 STUDIO EVIL的第一款產品是《Syder Arcade》,這是一款面向PC和Mac平臺的老式復古射擊游戲,帶有真正的3D圖形,隨后游戲被移植到iOS、Android和OUYA平臺。?
前言
????????歡迎來到Unity著色器和效果食譜!這本書是你熟悉在Unity3D中創建著色器和后期效果的指南。您將在開始時開始您的旅程,創建最基本的著色器并學習著色器代碼的結構。這一基礎知識將武裝你的手段進一步進入每一章,并產生著色器模擬人體皮膚,著色器處理動態反射,并將開發后期效果,如夜視。
????????在每一章結束時,你將獲得新的技能集,這將增加你的著色器的質量,甚至使你的著色器寫作過程更有效。這些章節都是量身定制的,這樣你就可以跳到每一部分,從初學者到專家學習一種特定的技能。或者,對于那些在Unity中編寫Shader的新手來說,你可以通過每一章的進展,一次一個,以你的知識為基礎。無論哪種方式,你都將學習到制作現代游戲的技巧。
????????一旦你完成了這本書,你將有一組著色器,你可以在你的Unity3D游戲中使用,以及理解添加到它們,以完成新的效果和解決性能需求。讓我們開始吧!
這本書的內容
????????第1章,漫射陰影,通過解釋如何在Unity3D中構建著色器來教授著色器寫作的基礎。然后將知識應用于創建默認漫射照明,并提供來自行業的提示和技巧來創建自定義漫射照明
????????第2章,使用紋理效果,描述了如何利用紋理來創建不同的效果。您將學習如何通過著色器在精靈表上動畫紋理,以及如何利用紋理的不同通道使著色器更有效。在本章結束時,你將有能力使用紋理來創建自己的自定義效果。
????????第3章,讓你的游戲閃耀與高光,教你一切你需要知道的關于創建最廣泛使用的高光類型,Blinn和Phong。您將學習如何應用這些著色器效果來創建遮罩鏡面,金屬鏡面,甚至將學習創建各向異性鏡面的技術。在本章結束時,您將有足夠的信心為自己的自定義著色器創建自己的自定義高光效果。
????????第4章,反射你的世界,讓你了解現代游戲中最流行的效果之一,那就是將反射技術結合到著色器中。本章將教你從Unity3D著色器反射的基礎知識到使用c#建立自己的簡單動態反射系統。
????????第5章,光照模型,開始創建更復雜的著色器的過程。你會學習到如何創建自己的光照模型來實現自己的表面類型。每小節會展示不同的技術來完成不同的任務,都是為了提高你的著色器寫作技能。到本章結束時,你可以創建自己的皮膚著色器,自己的 Lit Sphere 著色器和自己的車漆著色器。
????????第6章“透明性”向你展示了在游戲制作的某些階段,透明性成為一種必要的技術。幾乎每款游戲都在某種程度上使用了透明度,比如GUI、樹葉、貼花等等。在本章中,你將學習如何在Unity3D中使用透明度以及如何處理合并透明度時可能出現的問題。
????????第7章,頂點魔術,介紹了如何訪問存儲在我們的3D網格的每個頂點的信息。您將學習如何獲取這些信息,并在著色器中利用它來產生紋理混合和動畫等效果。
????????第8章,移動著色器調整,是關于如何利用Unity3D的內置標志和值來減少著色器的開銷。這在處理移動平臺上的著色器時變得尤為重要。
????????第9章,用CgIncludes模塊化你的著色器世界,向你展示了學習如何重用你寫過的代碼是必要的,一遍又一遍,為了使你的著色器編寫更有效。本章向您展示如何創建自己的CgInclude文件來存儲所有重復的代碼以供重用。
????????第10章,Unity渲染紋理的屏幕效果,首先看看任何現代游戲如何利用屏幕效果,有時被稱為后期效果,改變游戲最終渲染圖像的外觀。您將學習如何創建自己的屏幕效果,并學習如何在游戲中添加顏色調整和紋理疊加以產生不同視覺效果的秘密。
????????第11章,游戲玩法和屏幕效果,將你學到的屏幕效果的知識更進一步,并向你展示如何創建屏幕效果,提高游戲中的時刻。您將學習如何創建舊電影屏幕效果以及夜視屏幕效果。
我是偏偏
? ? ? ? 還依稀記得多年前發現這本書時的喜悅,閱讀過程中做了很多筆記、吧啦吧啦代碼之類的。在天時地利機緣巧合的情況下可以有一些時間來整理整理這些筆記,然后寫寫文章。
????????個人感覺這本書主要講解的是美術效果做落地,而相對于偏純理論方面的知識點不會講解過多或過深,但書里也會附有說明,一般都會為我們提供相對應的網址鏈接,讓我們自行去補充。這本書對于初學者來說是非常友好的。不僅有完整的代碼,還可以讓你看到完整的展示效果。以往敲Shader并不常使用Surface Shader,這本書也讓我對Surface Shader有了更多的了解,內容比較通俗易懂,逐字逐句的閱讀下來對自己的英語也有很大的幫助。
? ? ? ? 未曾謀面的朋友們 —— 共勉!
?
?
?Unity Shaders and Effets Cookbook
《著色器和屏幕特效制作攻略》
I?like this book!Reading, recording, and sharing...
?點擊下方鏈接進入對應文章
第一章:Diffuse Shading - 漫反射著色器
- 1.創建基礎表面著色器
- 2.為表面著色器添加屬性 ?
- 3.在表面著色器中使用材質屬性
- 4.創建自定義漫反射光照模型??
- 5.創建半蘭伯特照明模型?
- 6.創建一個漸變紋理來控制漫反射著色?
- 7.使用2D漸變紋理模擬BRDF
第二章:Using Textures for Effects - 著色器紋理特效的應用
- 1.通過修改UV坐標實現紋理滾動效果
- 2.精靈表動畫
- 3.封裝混合紋理貼圖
- 4.法線貼圖
- 5.在Unity編輯器中創建程序紋理
- 6.Photoshop色階特效
第三章:Making Your Game Shine with Specular - 鏡面反射讓你的游戲閃光
- 1.使用Unity3D內置的鏡面反射
- 2.創建 Phong 鏡面反射
- 3.創建 BlinnPhong 鏡面反射
- 4.使用高光貼圖來實現鏡面反射
- 5.金屬與軟鏡面反射的比較
- 6.創建各向異性鏡面反射
第四章:Reflecting Your World - 反射
- 1.在 Unity3D 中創建立方體貼圖?
- 2.Unity3D 中實現立方體貼圖反射
- 3.Unity3D 中實現遮罩反射
- 4.Unity3D 中實現法線貼圖和反射
- 5.Unity3D 中實現菲涅耳反射
- 6.在 Unity3D 中創建動態立方體貼圖系統
第五章:Lighting Models-光照模型
- 1.Lit Sphere光照模型
- 2.漫反射卷積光照模型?
- 3.車漆光照模型?
- 4.皮膚著色器?
- 5.布料著色器
==
感謝這些年遇到的人,看過的書。
致敬作者們
?
?這本書可以讓你學習到如何使用著色器和屏幕特效讓你的Unity工程擁有震撼的渲染畫面。
作者:Kenny Lammers
?