<p id="l55vn"></p>
<nobr id="l55vn"></nobr>
<menuitem id="l55vn"><delect id="l55vn"><i id="l55vn"></i></delect></menuitem>

<p id="l55vn"></p>
      <nobr id="l55vn"><thead id="l55vn"><i id="l55vn"></i></thead></nobr>
      <b id="l55vn"></b>

            <menuitem id="l55vn"></menuitem>
              <nobr id="l55vn"><ruby id="l55vn"><i id="l55vn"></i></ruby></nobr>

              首頁 > 設計 > 軟件應用 > 正文

              Maya基礎教程:Maya 硬件渲染粒子與軟件渲染元素結合(6)

              2020-10-03 12:58:08
              字體:
              來源:轉載
              供稿:網友
              maya 硬件渲染粒子與軟件渲染元素結合
              v. 創建塵土粒子外觀

                選擇使用 rgbpp

                添加下面的到 creation 表示式:

              //rgbpp

              //

              float $intensity=rand(0.6,1.0);

              intensitypp=$intensity

                對于 rgbpp ,我們將用一個 hsv 模式確定塵土的顏色,不用傳統的紅綠藍模型。每個粒子有各自的值或亮度,粒子在一個簡單的陰影技術基礎上獲得顏色,粒子是否改變顏色要看是否被陰影,并將保留一個完整的密度值。該信息被合成器用來單獨扭曲粒子(從粒子密度)陰影。

                添加下面東西到 runtime 表達式:

              //opacitypp

              //

              opacitypp= opacitymultpp* opacityorgpp* opacity;

                利用通道盒里的透明度屬性,使用者現在可以全部調整所有粒子物體的透明度,同時保持每個粒子的獨特的 opacityorgpp 。并修改粒子生命周期的透明度(使用連接到 opacitymultpp 的 ramp )。

              體積陰影

                體積陰影是獲得真實云和塵土效果的關鍵因素。體積陰影是通過粒子投射陰影到每個粒子身上而獲得的(通過透明度)。不幸的是,這種技術只有在軟件云粒子渲染中可以有效,而且耗時之多,令人難以置信。有成打的技術可以模仿這類效果,而且只花很少的時間。

                你要用到的技術是我的一個同事 eyal erez 教我的,他和我一起合作制作 the kolektiv 。將現在粒子所在位置和粒子“出生”的位置 birthworldposition 相比較,看現在粒子增加了多少高度,你就可以計算出一個值,粒子越低,值就越低。該技術對粒子系統來說很不錯,從相對等高的高度發射的粒子不會升或者降太多(和粒子最初位置相比較)。

              lego 投射方面的“領頭羊”合成器 ----gary jackamuk 需要一個粒子路徑,這樣就可以調整顏色,以和 cg 背景元素的陰影及燈光匹配。通常,當軟件為合成渲染一個元素時候,你可以輸出一個單獨的 shadow pass ,它可以被合成器單獨調整。 gray 要給粒子上多少色,這要看粒子獲得的陰影數量。

                我們可以提供一個給粒子上色和陰影的解決辦法,使它效果更好。

                在 add dynamic attributes 欄里點擊 general 按鈕,到 particle 欄。

              1 、創建 birthworldposition 屬性

              2 、添加下面東西到 runtime 表達式:

              //rgbpp

              //

              vector $pos=position;

              vector $birthpos=birthworldposition;

              float $hue=(240+120*smoothstep(-1,1, $pos.y-$birthpos.y))/360;

              rgbpp=hsr_to_rgb(<<$hue,1.0,intensitypp>>);

                為了控制粒子顏色,我們規格化粒子所在位置和粒子產生位置之間的差數,該規格發生在 -1 和 1 之間,這意味著如果一個粒子比它產生的位置低于 1 個單位,我們就會得到一個 0 的值;如果高于 1 個單位,則會得到一個 1 的值,然后,這些值要被調整為沿著色輪 ----100% 藍色和 100% 紅色之間,或者 240 和 360 之間。參考顏色選擇窗口,找到其它顏色的色彩值。

                粒子物體的 rgbpp 屬性讀取 rgb 值,而不是 hsv 值,所以,你需要利用 hsv_to_rgb 函數將 hsv 轉換成 rgb 。該功能視一個矢量為輸入,那也是為什么我們用 <<>> 來為色彩、飽和度、密度壓縮這些值的原因。色彩值最好為 0-1 ,而不是 0-360 ,所以我們要用 360 來除 hue 值。飽和度仍為 1.0 ,但是,你有個機會:通過修改飽和度(在你決定的值的基礎上),添加路徑附加消息到合成器上,最后,粒子的亮度都被考進 hsv 的 value 中。

                在這一點上,仍然可以對各種各樣的 rumps 貼圖和場做大量的扭曲,以此獲得你想要的外觀。

                打開 wheeonpath_part6.ma 文件,看看我拿出的結果。

              發表評論 共有條評論
              用戶名: 密碼:
              驗證碼: 匿名發表
              a级情欲片在线观看免费
              <p id="l55vn"></p>
              <nobr id="l55vn"></nobr>
              <menuitem id="l55vn"><delect id="l55vn"><i id="l55vn"></i></delect></menuitem>

              <p id="l55vn"></p>
                  <nobr id="l55vn"><thead id="l55vn"><i id="l55vn"></i></thead></nobr>
                  <b id="l55vn"></b>

                        <menuitem id="l55vn"></menuitem>
                          <nobr id="l55vn"><ruby id="l55vn"><i id="l55vn"></i></ruby></nobr>