欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MAYA中法線貼圖該怎么理解和應(yīng)用?

  發(fā)布時(shí)間:2017-07-06 16:24:59   作者:佚名   我要評(píng)論
MAYA中法線貼圖該怎么理解和應(yīng)用?maya創(chuàng)建動(dòng)畫的時(shí)候,會(huì)用到法線貼圖,該怎么使用這個(gè)功能呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下

教大家個(gè)使用MAYA中法線貼圖的應(yīng)用的綜述,個(gè)人感覺這個(gè)教程太有用了,很全面很直觀的分析了MAYA中發(fā)現(xiàn)的各種使用方法及技巧。很是實(shí)用收藏一下吧,最近搜集了不少資料和試驗(yàn),打算把MAYA中法線貼圖(NORMAL MAP)的相關(guān)信息綜合一下并且心思一下思路。慢慢來?。海?/p>

法線貼圖(NORMAL MAP)是一種較新的貼圖技術(shù),類似于BUMP MAP,通過對(duì)模型表面的法線的矯正來用以表現(xiàn)模型的細(xì)節(jié)與紋理,其效果比后者要好,能達(dá)到BUMP MAP所達(dá)不到的效果,但是其并不能真正的在模型表面產(chǎn)生細(xì)節(jié),相對(duì)于DISPLACEMENT MAP而言,又不如其滿意。而且其制作和應(yīng)用很麻煩,問題也很多,所以這種技術(shù)CG中并不常用,不過,在游戲中卻有相當(dāng)?shù)陌l(fā)展空間。其他不多說了,先來看個(gè)圖:

為什么同一個(gè)模型(10*10段的多邊形球體)會(huì)出來兩種效果,我使用了SOFTEN/HARDEN EDGE命令來柔化了右邊的模型邊,這樣看起來就圓滑了很多!

我現(xiàn)在打開了CUSTOM POLYGON DISPLAY OPTIONS,顯示出來法線來看看區(qū)別:

模型的法線有兩種:點(diǎn)法線和面法線。面法線是在面中心發(fā)出,表示面的方向;而點(diǎn)法線是從點(diǎn)發(fā)出的,取決于點(diǎn)周圍的面的方向,左右模型的區(qū)別說明了SOFTEN/HARDEN EDGE命令工作原理。同時(shí)也NORMAL MAP的基礎(chǔ)。(其實(shí)還有一種:UV COODINATE NORMAL。但MAYA中似乎沒有這個(gè)概念,這個(gè)東東是在NORMAL MAP應(yīng)用中許多問題產(chǎn)生的根源,這里暫不講述)

下面我們開始。建立一個(gè)POLYGON球體,參數(shù)如下。

然后再復(fù)制出一個(gè)隱藏。

對(duì)這個(gè)球體平滑2次后,用雕刻工具作出一些細(xì)節(jié)。

打開HYPERSHADE,賦予這個(gè)球一個(gè)新的LAMBERT材質(zhì)。

再建立一個(gè)SAMPLEINFO和SETRANGE節(jié)點(diǎn),作如下連接:

這樣我們把這個(gè)球的法線與攝象機(jī)信息輸入,將其輸出到物體材質(zhì)的COLOR上,這里我的材質(zhì)選擇了SURFACESHADER,這并不重要。只是為了方便觀察效果。

調(diào)節(jié)參數(shù):我們將法線變量轉(zhuǎn)化為顏色值,需要重新定義取值區(qū)間,由[-1,1]轉(zhuǎn)化為[0,1]。

顏色改變,但是你會(huì)發(fā)現(xiàn)硬件顯示的顏色與渲染的顏色不一樣!這可是個(gè)問題的關(guān)鍵!而且不管你如何移動(dòng)或旋轉(zhuǎn)攝象機(jī)和模型,物體的顏色分布都不變化,上面是綠色,左邊藍(lán),右邊紅。這可不是我們想要的。

這個(gè)問題的原因是因?yàn)?strong>SAMPLEINFO輸出的法線信息是基于攝象機(jī)的,所以與攝象機(jī)關(guān)聯(lián),而并非物體本身,這樣我們后面的得到的也是不能用的法線信息。

為了解決這個(gè)問題,我們斷開SAMLPEINFO和SETRANGE之間的聯(lián)系,新建一個(gè)VECTOR PRODUCT節(jié)點(diǎn),如下連接。

將透視攝象機(jī)的節(jié)點(diǎn)拖進(jìn),輸入其世界矩陣信息到VECTOR PRODUCT節(jié)點(diǎn),運(yùn)算方式為VECTOR MATRIX PRODUCT,再將輸出值連接到SETRANGE的VALUE上。

這樣做是矢量與矩陣運(yùn)算,把攝象機(jī)坐標(biāo)系轉(zhuǎn)換為世界坐標(biāo)系,這樣攝象機(jī)的變化不在影響物體的顏色分布了,但是如果我們轉(zhuǎn)動(dòng)物體,問題仍然出現(xiàn)。所以要把物體的變化的信息也要加進(jìn)去,將世界坐標(biāo)系轉(zhuǎn)換為物體坐標(biāo)系。

如果將此時(shí)的顏色轉(zhuǎn)換為貼圖,我們就叫它World-space normal map。(后面在介紹這些分類),如圖再加入如下類似的節(jié)點(diǎn),注意這次選擇的是WORLD INVERSE MATRIX。圖中COLORBALL就是這個(gè)球體的模型節(jié)點(diǎn),你可以在OUTLINER中找到它,拖到HYPERSHADE里。

這樣,我們看到顏色顯示與渲染的一致了,以渲染出來的為準(zhǔn),這樣移動(dòng)攝象機(jī)或物體,顏色分布就正確的象貼在物體上一樣。

選中球體和其材質(zhì),使用CONVERT TO FILE TEXTURE OPTIONS將顏色轉(zhuǎn)化為貼圖,參數(shù)如下,分辨率和自行設(shè)置。

此時(shí)生成的貼圖,顏色以紅,綠,藍(lán)分布類似彩虹,就叫做Object- 或 Local-space normal map。這個(gè)與上面的World-space normal map看上去會(huì)很類似。

下面看看如何使用這張貼圖,顯示出原來的復(fù)制出的那個(gè)低精度的球體,命名為NORMALBALL。賦予一個(gè)材質(zhì),然后連接。使用這樣的貼圖相當(dāng)于一次逆運(yùn)算。我想不用多說了吧。

看看效果,我這里用的SOFTWARE渲染。

效果還不錯(cuò),但是問題總是伴隨著,如果我們保持?jǐn)z象機(jī)不動(dòng),旋轉(zhuǎn)物體,你看會(huì)怎樣?細(xì)節(jié)正確,但是光影卻完全錯(cuò)誤,陰影也象貼圖一樣“粘”在模型上,與燈光的位置毫無關(guān)系了,這可是不允許的!所以,我們還要把NORMBALL的節(jié)點(diǎn)引入,再次逆運(yùn)算。

這樣,模型細(xì)節(jié)和光影都正常了,旋轉(zhuǎn)模型和鏡頭都沒有問題,可以用于構(gòu)建場景了。但是,這樣就完了嗎?我們先來看看在HARDWARE渲染和HIGH QUALITY RENDING渲染結(jié)果。

這是什么玩意的一坨?。匡@然,在即時(shí)運(yùn)算更新時(shí)顯示是不正常的,這意味著對(duì)于游戲的設(shè)計(jì)顯然是不可用的 ,同樣,MENTALRAY渲染也是不行的!而且后面還有更大的問題存在呢!按F9進(jìn)入點(diǎn)元素模式,對(duì)這個(gè)球隨意進(jìn)行一些變形。

再轉(zhuǎn)回物體模式,渲染看。注意場景中只有一盞燈。

發(fā)現(xiàn)了嗎,光影還是錯(cuò)誤的,又是這個(gè)討厭的問題!這就意味著如果要在物體以下的級(jí)別變形,比如蒙皮,綁定等,就會(huì)出現(xiàn)嚴(yán)重的問題。

在MAYA7以后有這樣一組工具:SURFACE SAMPLER(相當(dāng)于MAYA6中TRANSFER SURFACE OPTIONS),這個(gè)工具里面包含了很多有用的工具。當(dāng)MAP SPACE選中OBJECT SPACE時(shí),那么TRANSFER IN WORLD SPACE/OBJECT SPACE所生成的NORMAL MAP就相當(dāng)于World-space normal map和Object- 或 Local-space normal map。

那么還有個(gè)TANGENT SPACE是什么呢?

TANGENT SPACE就是切線坐標(biāo),即與法線垂直正交的方向,其有個(gè)很重要的特性就是它是針對(duì)模型上的每個(gè)點(diǎn)的坐標(biāo),而不是整個(gè)物體,這正是我們需要的特性。

這個(gè)工具的用法我以前的帖子里講過的,很簡單的。文件格式常用TIF的,有很多優(yōu)勢。

生成的貼圖就是所謂的Tangent-space normal map,其明顯不同,顏色是以蘭色為基調(diào)的。這個(gè)應(yīng)該說是比較完美的,不會(huì)出現(xiàn)前面的問題。來看看。

MAYA中沒有直接的NORMAL MAP的通道,使用麻煩,不象3DMAX或LIGHTWAVE,所以這方面的文章才比較少,不過MAYA7以后加入了,它是隱藏在

BUMP2D的節(jié)點(diǎn)中,使用和BUMP MAP一樣簡單。

打開HIGH QUALITY RENDERING,這樣我們終于看到了期望的結(jié)果。

而且各個(gè)角度都正常。

有時(shí)硬件即時(shí)顯示并不能很正確,如果看不到正確結(jié)果,可以用HARDWARE渲染一下看。

不過遺憾的是,MAYA中這個(gè)節(jié)點(diǎn)只能被硬件渲染,同樣不支持在SOFTWARE和MENTALRAY渲染。但是也是,本來MAYA中這個(gè)節(jié)點(diǎn)就是為了制作游戲而生的,針對(duì)的多是游戲中的渲染引擎。

還有人用這樣的方法連接:

這種直接連接的方法可得到同樣的硬件渲染效果,也可以 軟件渲染,但是光影失真;不支持MENTALRAY。最大的問題就是:如果要與其他BUMP MAP聯(lián)合使用就會(huì)很困難。

繼續(xù)……

至此我們可以先總結(jié)一下,以便有更好的理解和應(yīng)用。

World-space normal map

1. 彩色.

2. 使用后物體不能旋轉(zhuǎn)和以點(diǎn)為基礎(chǔ)的變形,否則材質(zhì)和陰影會(huì)亂掉

3. 適用于不動(dòng)的物體(比如建筑物).

4. 計(jì)算快

Object- or Local-space normal map

1. 和World-space normal map一樣,不同的只是針對(duì)了部分元素游戲編碼

2. 物體可以旋轉(zhuǎn),但是不能在物體以下級(jí)別變形.

3. 適用于某些簡單機(jī)械運(yùn)動(dòng)中的元素(門,車輛,機(jī)械等)

4. 計(jì)算較快

Tangent-space normal map

1. 以蘭色為基調(diào)

2. 物體可以旋轉(zhuǎn)和變形

3. 適用于變形物體(角色,水面,布料等)

3. 計(jì)算最慢(并不經(jīng)常).

如果我們要在軟件渲染或MENTALRAY渲染中也應(yīng)用該則呢們辦呢?

一般來說,在MAYA中或第三方的渲染器渲染NORMAL MAP,需要建立一定的節(jié)點(diǎn)來模擬,這可不是一件愉快的事情。我這里用MAYA的節(jié)點(diǎn)軟件渲染,看看效果:

還不錯(cuò),但是它的節(jié)點(diǎn)卻是比較復(fù)雜的。這個(gè)節(jié)點(diǎn)來自于headus (metamorphosis) Pty Ltd。但是原節(jié)點(diǎn)的坐標(biāo)并不適用MAYA(針對(duì)的是ZBRUSH),我將其修改重新連接。

總的來說就是要把攝象機(jī)的NORMALCAMERA和TANGENTU,V的信息都輸出,與NORMAL MAP輸出的信息進(jìn)行點(diǎn)乘運(yùn)算,連接到物體材質(zhì)的

NORMALCAMERA。這樣軟件渲染時(shí)就可以收集到相應(yīng)信息。

如果需要,我在后面共享了這個(gè)節(jié)點(diǎn),耐心讀完我的帖子,你可以找到它。

適用與任何版本的SOFTWARE渲染,速度較慢,不支持硬件渲染。

但是MENTALRAY就比較麻煩,目前我試驗(yàn)的節(jié)點(diǎn)如下:

相當(dāng)于在軟件渲染節(jié)點(diǎn)上再與透視攝象機(jī)進(jìn)行矢量矩陣運(yùn)算,輸出到材質(zhì)。

遺憾的是,只支持MAYA6.5以下的MENTALRAY版本,MAYA7中的MENTALRAY由于更新了渲染方式和代碼,無效!

你也可以使用Jan Sandstrom的JS_Normalmapper的MENTALRAY節(jié)點(diǎn)。但是同樣是不支持MAYA7。

同時(shí),在MENTALRAY渲染中可以使用GLOBAL ILLUMINATION,但開啟FINAL GATHER渲染無效!這是由于FG的運(yùn)算方式?jīng)Q定的,目前尚未有辦法解決!

下來我們介紹一下NORMAL MAP與BUMP MAP的聯(lián)合使用。

從本質(zhì)來說,NORMAL MAP更接近BUMP MAP而不是DISPLACEMENT MAP。

但是也就是說NORMAL MAP要和BUMP MAP合用,是很難發(fā)現(xiàn)區(qū)別的,所以會(huì)產(chǎn)生錯(cuò)覺,在應(yīng)用中較難發(fā)現(xiàn)錯(cuò)誤,這是在游戲運(yùn)用中比較麻煩的,往往不能及時(shí)更正,導(dǎo)致計(jì)劃拖延。

先來介紹硬件即時(shí)渲染中的合用。

BUMP MAP分為BUMP3D和BUMP2D,曾經(jīng)有位介紹過了這兩種

BUMP效果的合用,你可以在以前的帖子里找到。但是在試驗(yàn)中發(fā)現(xiàn),如果合用的話,其效果只能在軟件渲染中體現(xiàn),硬件渲染是無效的。這樣NORMAL MAP和BUMP MAP直接采用這種合用,即時(shí)顯示是無法正確的。而我們需要在游戲制作中能即時(shí)瀏覽到。

所以我采用了層紋理(LAYERED TEXTURE)來混合。這里用了個(gè)BUMP3D的節(jié)點(diǎn)。

在層紋理中混合方式選擇OVER,NORMAL MAP在上層。控制其ALPHA值調(diào)節(jié)凸凹效果(或BUMP DEPTH)。注意!這樣做會(huì)其實(shí)是削弱了NORMAL MAP的效果,所以ALPHA不能太低。其實(shí)在后面的SETRANGE節(jié)點(diǎn)的用途是可以輸入表達(dá)式通過與ALPHA值相關(guān)聯(lián)的矯正削弱現(xiàn)象。你也可以將BUMP3D層放在上層混合,你看看會(huì)有什么結(jié)果?即時(shí)顯示的效果出現(xiàn),但是似乎哪里不對(duì)勁。

我前面提到了,這個(gè)區(qū)別是很難看出來,因?yàn)槲覀冇玫腂UMP紋理并不是法線貼圖,但是用法是直接連入,但仍有效,是因?yàn)槠涫?D紋理,這點(diǎn)視覺差別是幾乎可以忽略的。

那么實(shí)際的用法該如何呢?這里我們要用到一個(gè)小插件:TranSpace(你可以在網(wǎng)上很容易找到),它的作用是把BUMP信息轉(zhuǎn)化為TANGENT NORMAL信息,可以用來BAKE NORMAL MAP。

As Color Output:確保顏色值區(qū)間。應(yīng)當(dāng)鉤選。

Invert Y(V):對(duì)于某些ATI和某些其他軟件,要反轉(zhuǎn)Y(V)方向。選擇鉤選Normalize Output:確保法線值區(qū)間。選擇鉤選。這個(gè)插件可以用我前面的方法模擬,不過很麻煩。下面是HRADWARE渲染后效果。

BUMP2D的紋理或文件紋理就比較麻煩了。因?yàn)榇蠖鄶?shù)時(shí)候,他們并不能被正確的硬件顯示!采用與BUMP3D相同的連接。

解決這個(gè)很簡單,只要把BUMP紋理轉(zhuǎn)換成一張法線貼圖就可以了,然后混合。

在軟件渲染中就比較容易,和BUMP嵌套是一樣的,2D和3D紋理都一樣的可以得到滿意的效果。

相關(guān)推薦:

maya怎么給平面物體制作貼圖?

maya人物模型怎么制作低模Ao貼圖?

maya怎么制作法線貼圖? maya法線貼圖的制作方法

相關(guān)文章

  • maya中怎么制作逼真的頭發(fā)?

    maya中怎么制作逼真的頭發(fā)?maya中想要給頭部模型添加頭發(fā),該怎么設(shè)計(jì)頭發(fā)呢?下面我們就來看看詳細(xì)的制作方法,需要的朋友可以參考下
    2017-05-17
  • Maya怎么打造怪異的漫畫角色?

    Maya怎么打造怪異的漫畫角度?maya中打造漫畫模型很簡單,今天我們就來看看使用maya制作怪異的漫畫角度的教程,很簡單,需要的朋友可以參考下
    2017-05-16
  • maya怎么設(shè)置渲染效果?

    maya怎么設(shè)置渲染效果?maya渲染物體的時(shí)候,需要對(duì)渲染效果進(jìn)行設(shè)置,該怎么設(shè)置渲染參數(shù)呢?下面我們就來看看詳細(xì)的渲染教程,需要的朋友可以參考下
    2017-05-15
  • maya怎么制作人頭模型?

    maya怎么制作人頭模型?maya中想要繪制一個(gè)人頭模型,該怎么繪制呢?下面我們就來看看詳細(xì)的繪制方法,很簡單,圖文很詳細(xì),需要的朋友可以參考下
    2017-05-11
  • maya怎么制作人物頭像模型?

    maya怎么制作人物頭像模型?maya中想要繪制一個(gè)人物頭像,該怎么繪制呢?下面我們就來看看詳細(xì)的教程,很簡單,感興趣的朋友可以進(jìn)來參考一下
    2017-05-10
  • maya 7.0中nurbs曲線的基本概念

    maya 7.0中nurbs建模的時(shí)候會(huì)用到nurbs曲線,很多朋友不了解nurbs曲線,今天我們就來詳細(xì)介紹nurbs曲線的基本概念,需要的朋友可以參考下
    2017-05-09
  • maya怎么給凸凹的物體貼圖? maya凸凹貼圖的教程

    maya怎么給凸凹的物體貼圖?maya中很多物體都是凸凹的表面,這時(shí)候該怎么貼圖呢?下面我們就來看看maya凸凹貼圖的教程,需要的朋友可以參考下
    2017-05-08
  • MAYA怎么制作渲染景深效果?

    MAYA怎么制作渲染景深效果?maya中景深效果的渲染過程很麻煩,但是做出的效果卻很好,今天我們就來看看一個(gè)實(shí)例教程,需要的朋友可以參考下
    2017-05-07
  • maya怎么建一個(gè)飛機(jī)模型? maya飛機(jī)建模的教程

    maya怎么建一個(gè)飛機(jī)模型?maya中想要建立一個(gè)飛機(jī)模型,該怎么建立呢?下面我們就來看看詳細(xì)的建立方法,很簡單,需要的朋友可以參考下
    2017-05-05
  • maya怎么為蘑菇刷權(quán)重?

    maya怎么為蘑菇刷權(quán)重?maya中刷權(quán)重是一個(gè)重要的環(huán)節(jié),可以讓動(dòng)畫中的物體工逼真,下面我們就來看看maya刷權(quán)重的詳細(xì)教程,需要的朋友可以參考下
    2017-05-04

最新評(píng)論