當前位置:網站首頁>Blender:超詳細的甜甜圈制作教程(三)【原教程 油管:Blender Guru】——制作糖粒和面包
Blender:超詳細的甜甜圈制作教程(三)【原教程 油管:Blender Guru】——制作糖粒和面包
2022-01-28 04:35:40 【精致的螺旋線】
由於博客中的圖片被壓縮,有一些會不太清楚,因此將教程整理成pdf文檔,在這裏可以直接下載。
一、粒子
在正式開始前我們先進行一些准備工作。首先删去前面創建的備份物體,選中下圖中所示的備份物體,在層級上右鍵單擊,選擇删除層級。
然後重新整理一下物體,將各個物體放在不同的集合中,結構如下。新建集合的快捷鍵是m。
將三個集合都隱藏,然後我們先制作糖粒的模型。新建一個經緯球模型,注意由於糖粒非常小且會複制成百上千份,所以我們需要讓經緯球的面數盡可能少,以節省渲染成本。按如下圖所示的參數調整經緯球的大小和面數。
進入編輯模式,打開透選模式,選中經緯球上方的面。
按快捷鍵e,將上側的面擠出。
不取消選中的面,按快捷鍵s,並單擊z鍵,確保選中面沿z軸方向向下擠壓。
對下面的球面也進行同樣的操作。
退出編輯模式,讓物體平滑著色。
讓甜甜圈物體顯示出來,選中糖霜層。打開粒子屬性面板,按“+”按鈕為糖霜物體新建例子系統。
結果如下。
把視角拉遠一點,按播放鍵,可以看到粒子效果。
這是發射體模式,這裏我們需要毛發模式。
打開下面的渲染一欄,將“渲染為”選項改為物體。
下方物體一欄有一個實例物體屬性,單擊上面的取色器小圖標,鼠標會變成取色器狀,然後用這個取色器鼠標去單擊糖粒物體。
這樣,糖霜錶面就會隨機布滿糖粒。調節縮放屬性,可以改變糖粒的整體大小。
可以看到糖粒統一朝一個方向排列,且大小一致,非常整齊,而我們需要它們的方向是隨機分布的,在z軸方向的長度也是隨機的。下面我們先調整方向,勾選方向,勾選旋轉,然後將坐標軸向修改成法向。
我們可以調節隨機屬性,但有一個問題,糖粒是隨著任意一個坐標軸旋轉的,導致很多糖粒會埋在糖霜錶面裏,這樣顯然是不合適的。
因此我們將隨機屬性重新調回0,調整隨機化階段屬性,這樣糖粒只會在貼著物體錶面隨機旋轉。不過在現實生活中還是會有一些糖粒會輕微地陷在糖霜中,因此可以把隨機屬性賦一個很小地數值。
現在,糖粒附著在糖霜物體的每一個角落,包括許多我們不希望出現糖粒的地方,如糖霜物體的下錶面和側面邊緣。
因此我們使用權重繪制,通過權重來决定糖粒的分布。
在這裏我們可以把粒子效果先隱藏起來,開著粒子效果繪制起來會比較慢。
在物體錶面塗抹,可以得到下面的效果。紅色部分錶示權重為1,藍色部分錶示權重為0,其他過度顏色對應中間數值。
筆刷的調節方式與雕刻一樣,f鍵調節筆刷大小,shift+f調節筆刷力度。
將物體錶面刷一刷。
把權重調成0可以讓刷取時物體錶面回到藍色。
我們需要讓粒子系統知道去使用這個權重值。回到物體模式,打開粒子系統設置中的頂點組一欄,將密度設置成Group。
重新顯示粒子系統,可以看到糖粒的分布與賦予的權重一致。
糖粒有點太密了,我們調稀疏一點。
二、糖粒的隨機著色
進入渲染模式,可以看到糖粒並沒附帶色彩。修改原本的糖粒物體,給它賦予一個材質,這樣分布在甜甜圈上的所有糖粒都會隨之改變。
打開Shading視圖,選中糖粒物體。
為糖粒物體新建一個材質,則下方的著色器編輯器中出現新的節點。
在著色器編輯器面板中shift+a新建物體信息節點。
該節點的結構如下。如果我們直接把該節點的隨機屬性連在著色器節點的基礎色屬性上,則可以看到不同的糖粒被賦予不同的灰度值。這是因為隨機屬性會生成一個比特於0到1之間的隨機數。
新建一個顏色漸變節點。
結果如下。可以發現並沒有什麼變化,這是因為我們需要改變顏色漸變節點的顏色。
我們為顏色漸變節點的漸變條賦予不同的顏色。
這種情况下,甜甜圈上的糖粒會成為漸變條上的每一種顏色,實際上就是無窮多中顏色。但現實生活中,糖粒只有固定那麼幾種顏色,我們並不希望糖粒的顏色太多。因此我們將顏色漸變節點的兩個顏色之間的插值算法由線性改為常值。
然後適當的調高一點糖粒的糙度。
然後我們進行下一步。甜甜圈上的每一個糖粒的樣子完全相同,事實上糖粒應該有長有短、有大有小,有一些甚至會有一點點彎曲的弧度。回到Layout面板,用shift+d糖粒複制出若幹個,然後將他們放在同一個集合下面。
適當調整每個糖粒的形狀,使它們各不相同。
可以給其中一些糖粒制作一點點彎曲效果。使用環切工具(快捷鍵ctrl+r)將糖粒分成若幹段。滾輪可以調節環切段數,移動鼠標來滑動環切比特置,鼠標右鍵單擊回到均分比特置。
稍微移動一點中段。
上錶面調一下方向。
回到物體的糖霜錶面,進入粒子屬性面板,將渲染一欄下的“渲染為”屬性由物體改為集合,並將集合選為Sprinkles集合。
放大觀察效果,發現又有一些糖粒淹沒在糖霜下面了,這是因為糖粒的物體中心並不在真正的中心處,而實際上比特於物體偏下比特置。
下面我們將物體的中心移動到真正的中心處。選中這些物體,右鍵單擊,選擇設置遠點->設置到幾何中心。
結果如下。
結果如下。這裏,如果你對當前隨機分布的效果不滿意,可以通過改變隨機種的大小來改變隨機的結果。
還有一個小知識。舉個例子,現在我們想在糖霜上新添加一種球形的糖粒,我們在Sprinkles集合下新建一個經緯球物體。
賦予一個材質。
這時回去看甜甜圈,會發現甜甜圈上多了小球。但數量有點多,甜甜圈錶面被小球占領了,我們希望小球數量少一些。
打開粒子面板的渲染一欄,勾選使用計數。
下面的框中錶示的每個物體在分布中所占的權重,可以看到目前每個物體的權重是相同的,在“數量”框中,可以對權重數值進行修改。
修改後結果如下。
現在我們可以把甜甜圈渲染出來啦!
三、繪制UV貼圖
下面我們給甜甜圈的面包制作更真實的效果。通過手繪uv貼圖的方式,我們讓甜甜圈的中間更白一點,兩邊依舊為柳丁色。
進入貼圖繪制界面。左側的界面顯示貼圖,右側的界面顯示在物體上的效果。
新建貼圖。
修改貼圖的大小和名字,點擊確定。
結果如下。
然後我們把新建的貼圖賦給甜甜圈物體。打開Shading視圖,選中甜甜圈物體,打開著色器編輯器視圖,新建一個圖像貼圖節點。
單擊下圖中所示的比特置,選擇剛剛創建的貼圖。
按下圖所示將圖像紋理節點連接在著色器節點上。
回到Texture Paint界面,在uv貼圖面板或在3D物體上都可以對貼圖進行繪制,在3D視圖上進行紋理繪制必須要進入紋理繪制模式。
更換繪制貼圖時筆刷的紋理。打開筆刷設置中的紋理遮罩一欄,新建一個紋理。
在右側的紋理屬性面板中,打開下拉菜單,找到“筆刷紋理-Texture”。
在下面的類型中可以選擇一個預置的紋理,這裏選擇了雲絮。
然後再進行紋理繪制,可以看到筆刷上帶上了雲絮紋理。
在這裏可以讓筆刷的紋理方向變成隨機的。
在這裏改變紋理噪波的尺寸。
結果如下。
將筆刷顏色調成黑色,然後將筆刷混合模式設置成疊加,在甜甜圈上繪制一些深色的部分。
結果如下。不知道為啥人家教程裏的畫出來就很好看,我的就跟重度燒傷了似的。
對貼圖進行保存。這一步非常重要,只有保存了貼圖後該貼圖才會在正式渲染時被正確引用,否則還是會引用上次保存的貼圖。
查看一下渲染結果。
四、更高級的紋理制作
添加一個噪波紋理。
可以看到紋理貼圖映射在物體上好像被壓扁了一樣,因此我們新建一個紋理坐標節點,改變映射方式。
按下圖所示連接節點,並調整噪波節點的矢量縮放值,可以得到下面的效果。
這張噪波貼圖將用作凹凸貼圖,需要使用置換節點。
按下圖方式連接,可以將噪波作為凹凸紋理。
然後把顏色貼圖也貼上。
渲染模式下觀察。
觀察模型的邊緣,發現依舊光滑,這說明凹凸紋理並沒有實際改變模型的形狀。首先將置換節點的縮放值跳到0.01或更小,這一步非常重要!重要!如果縮放值太大,渲染就會非常緩慢!電腦發熱到足够用烤熟一只甜甜圈!而且會渲染出一坨不知所雲的東西。
然後打開材質屬性面板,將設置一欄下的置換從僅凹凸改成置換與凹凸。
最好把矢量節點的縮放值也修改一下。
觀察甜甜圈的面包,我們可以發現很多面包上都有微小的小疙瘩,在小疙瘩上依舊由面包的粗糙質感。為了實現這一效果,我們需要再新建一個噪波節點,這個噪波節點的縮放值要更小,來模擬小疙瘩。依舊保留原本的噪波節點,並將兩者的效果混合。
新建一個混合RGB節點。
shift+d新建一個噪波紋理節點,並將其縮放值修改成200,這個節點用來實現小疙瘩,而之前縮放值為1500的節點依舊實現粗糙效果。
按如下圖所示連接節點,並將混合RGB節點的混合模式改成相加,在相加模式下,著色器1永遠占比為100%,而著色器2的占比由系數調節。顯然,相比粗糙效果,小疙瘩應該更明顯,占比更重,所以我們將縮放值為200的噪波節點連接著色器1,縮放值為1500的噪波節點連接著色器2。
為了使黑白兩色更加分明,需要使用一個顏色漸變節點。
將黑色的滑塊向中間滑動可以得到下面的效果。滑動黑色滑塊,可以讓更多的原本為灰色的區域現在呈黑色,而白色滑塊保持不動,可以讓原本為白色的區域依舊保持白色。
最後連接成凹凸節點並連接顏色貼圖。
甜甜圈的面包還有一個特點,就是小疙瘩地區的顏色會和其他地區顏色不同,通常顏色會略深一些。也就是說,我們希望自己的凹凸紋理可以影響顏色輸出。
新建一個混合RGB節點,將相加節點的輸出值連接到這個節點的系數屬性上,然後將顏色2設置成一個較深的顏色。
這一舉措的原理是,我們將黑白的凹凸紋理作為混合RGB節點的系數,來影響顏色1和顏色2究竟以怎樣的比例進行混合。顏色1就是原本的顏色貼圖,顏色2是更深的柳丁色。
放大看效果如下。
如果我們將節點的混合模式改成疊加,則效果如下。
最終節點的連接如下。
到這裏,甜甜圈就制作完成啦!看看渲染結果!
版權聲明
本文為[精致的螺旋線]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/01/202201280435399661.html
邊欄推薦
猜你喜歡
隨機推薦
- uniapp上傳圖片及組件傳值
- 瑞利年金險資金保障安全嗎?收益高不高啊?
- 華為手機USB連不上電腦的解决方法
- Flutter 2,移動金融應用開發
- 關於st25系列NFC標簽簡單介紹及st25TV系列用於門禁讀取時的注意事項總結
- 關於用ffmpeg轉手機視頻發現視頻長寬倒了的問題
- 函數 / 類模板--模板2
- 數組中的第k個最大的元素--優先級隊列、排序、堆、排序
- 單片機實例27——ADC0809A/D轉換器基本應用技術(硬件電路圖+匯編程序+C語言程序)
- Collection集合的學習
- 一場面試結束,某度員工從事Android 5年為何還是初級工程師?
- 3本書閱讀筆記【人月神話-Go語言實戰-研發能力持續成長路線】01
- PHP垃圾回收機制
- 【電子技術】什麼是LFSR?
- 死鎖?如何定比特到死鎖?如何修複死鎖?(jps和jstack兩個工具)
- 快樂寒假 22/01/20
- image
- 噴程序員?SURE?
- LDO分壓電阻計算小工具
- 面試之求一串字符串中每個字符的出現次數
- 【ISO15765_UDS&OBD診斷】-01-概述
- 【Mysql上分之路】第九篇:Mysql存儲引擎
- RHCE 第一次作業
- 2021.10.16我的第一篇博客:一切皆有可能!
- CTA-敏感行為-讀取IMEI
- 面試被問怎麼排查平時遇到的系統CPU飆高和頻繁GC,該怎麼回答?
- nuxt項目總結-綜合
- 自然語言處理學習筆記(一)
- C語言第一課
- 各比特大佬,Spark的重點難點系列暫時更新完畢
- 基於 esbuild 的 universal bundler 設計
- XCTFre逆向(四):insanity
- 理解什麼是真正的並發數
- JVM腦圖
- 【Pytorch(四)】學習如何使用 PyTorch 讀取並處理數據集
- 函數棧幀的創建與銷毀
- 構建神經網絡- 手寫字體識別案例
- 多模態生成模型ERNIE-VILG
- kotlin不容忽視的小細節
- 備戰一年,終於斬獲騰訊T3,我堅信成功是可以複制的