使用 VFX 創造火山爆發

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

一個 火山 是地球的殼內的火山,因內部壓力從岩漿和揮發性氣體而噴發岩漿和煙霧。體驗通常包括在挑戰性遊戲區域內的火山,例如需要玩家平衡岩漿和熔融岩危險的地方,或者動態變更

使用 Volcano Island - Start .rbxl 文件作為起始位置,並使用 Volcano Island - Complete 作為參考,這個教學會顯示您如何將環境變成火山爆發,並且使用自訂燈光和 VFX 對象代表實際世界物理行為的引用,包括指南:

  • 將參考材料分解為具有不同視覺和行為特性的個別零件。
  • 設定表面渦動來模擬熱液上升到表面並妨礙大釜的表面。
  • 設定 embers 以快速冷卻在熔融岩上升至大氣。
  • 設定會從大釜噴出和流入的岩漿,以模擬各種粘性狀態。
  • 設定一個吸引玩家注意的天空中冒出的嚴重不純物體。
The starting volcano terrain you can use to complete this tutorial.
火山島-開始
The complete volcano with VFX objects you will create by the end of this tutorial.
火山島 - 完成

分解參考

為了創建可信的火山,重要是在設計過程中參考實際世界的火山爆發,因為這允許您將主題分解為個別具有視覺和行為特性的單獨元件。例如,示例 Volcano Island - Complete 使用 Iceland 的火山爆發來告知所有材質和 VFX 設計決定,關於釋放器和周圍地形的

A far out view of an Iceland volcanic eruption.

採用此示範程式,您可以看到一個正在爆發的火山,這個火山被分為六個單獨的零件,您可以計劃如何使用不同的 VFX 對象來模仿其實體世界的對應。要示範程式,這個教學將範例火山分為六個獨特的零件:

  • 地面渦浪 – 大頂層的岩漿渦。
  • 燦爛的火山灰 – 從火山噴口升起的小型、輕量的岩漿。
  • 岩漿濺射 – 由岩漿在火山內的內部壓力而爆裂的熔岩。
  • 岩漿流動 – 粘稠的岩漿從火山口岸迅速迁移。
  • 煙霧勢雲 – 從大釜上升到天空的溫氣。
The volcanic eruption reference with all five components highlighted.
The sample volcanic eruption with the same five components highlighted to compare the reference image with the final result.

下列部分提供了關於您可以使用來重製這些零件的不同設計決定和技術的深度分析。當您檢視這些決定並與各種照明實驗時,ParticleEmitterBeam 屬性,您將學會如何使用照明和 VFX 來解決獨特的環境需求。

設定照明

要在您的體驗中讓環境元素成為一個點 of interest,重要的是要提升它與整個環境的對比,讓它從其他黑暗環境中墜落的熔岩變成一個吸引玩家探索的亮點。例如,要將玩家帶入火山,您可以設定照明來源,以便火山的熔岩在其他黑暗環境中顯示為唯一的光源。

Studio 提供兩種高級照明源,您可以使用它們來執行此技術:

  • 全球照明 - 為整個戶外環境產生照明。
  • 本地照明 產生照明在您放置它們的體驗。

這個教學的這一部分教會您如何使用兩種照明來源來使您的火山爆發成為最具興趣點之一,並且創造一個強烈的視覺效果,以及為您的環境故事創造一個劇烈的效果。為了說明,查看您無需自訂照明的最終火山是如何感覺像是一個不妨

The complete version of the sample volcanic eruption with default light sources.
使用預設燈光源
The complete version of the sample volcanic eruption with custom light sources.
使用自訂燈光源

本地照明

本地照明是從本地 Class.SpotLight 、 SpotLightSurfaceLight 對象中發生的光,這些對象通常會在您

The complete version of the sample volcanic eruption without local lighting.
沒有本地照明
The complete version of the sample volcanic eruption with local lighting.
使用本地照明

這個教學的全球燈光中,無法使用本地燈光來配置,因此無法使用本地燈光來設定您的全球燈光。 但是,常見的工作流程需要您同時在本地和全球燈光上執行,才能看到 VFX 對象的 3D 空間來配置您的變更。 因此,設計您自己的體驗的需求非常重要。

要重現火山的本地照明,請將檔案 火山島 - 完成 放置在:

  1. 在 Explorer 窗口中,創建 資源管理器 在 工作區 中含有所有本地光源對象的 1> 文件夾名稱1> 然後重新命名文件夾 4>LocalLighting4>。

  2. 將三個 區塊 零件放入 本地燈光 文件夾,然後重新命名它們 LightCaldera 、1> LightMagma1> 和 4> LightOutflow4>。

  3. 將零件移動到可以點亮整個火山的位置。

    1. LightCaldera 移動到空間中的中心,在釜和懸崖之間。
    2. LightMagma 移動到 caldera 和 magma 出口之間的間隙中。
    3. LightOutflow 移動到稍微上方,以在出口端口變成兩個流。
    A front view of the volcano with three block parts positioned throughout the volcano's valley.
  4. 在每個零件上插入 聚光燈

    A front view of the volcano with three block parts with point light visual aids.
  5. 選擇 PointLight LightCaldera 的子兒,然後在 屬性 窗口中,

    1. 光澤 設為 15 以使光源更亮。
    2. 顏色 設為 255, 85, 0 以調色燈光至黑暗橙色色調。
    3. 範圍 設置為 60 以照亮整個大釜區域。
    A front view of the volcano with three block parts. The block part nearest the caldera emits orange light.
  6. 選擇 PointLightLightMagmaLightOutflow 的兒女,然後在 1> 屬性1> 窗口中,

    1. 光澤 設為 2 以使燈光源稍微更亮。
    2. 顏色 設為 255, 81, 0 以調整燈光的顏色。
    3. 範圍 設為 50 以照亮縫隙和出流區域。
    A front view of the volcano with three block parts that are all emitting orange light.
  7. 探險家 窗口中,選擇 本地照明 文件夾中的所有方塊,然後在 屬性 窗口中,設定 1> 透明度1> 為 4> 14> 以隱藏方塊。

    A front view of the volcano that has orange lighting throughout the volcano's valley.

全球照明

全球照明是從太陽或月亮來的螢光。 通過調整 Lighting 服務和其子處理效果對象中的幾個關鍵預設值,您可以對玩家造成劇烈改變,並且對任何你放置在體驗中的其他對象進行交互。 包括 Class.ParticleEmitter

舉例來確認產生流行熔岩效果的 Beam 文字結構在教學中稍後能否發光,您必須先設定 BloomEffect 屬性來增強燈光,然後調整環境中的環境燈光。同樣地,在夜晚模擬更實際的顏色時,您也必須調整 Class.Blo

The complete version of the sample volcanic eruption without bloom.
沒有花朵
The complete version of the sample volcanic eruption with bloom.
有花朵

要重現在範例中的全球照明 Volcano Island - Complete 位置檔案:

  1. 探險家 窗口中,選擇 照明 服務,然後在 屬性 窗口中,

    1. 環境 設置為 133, 152, 176 以設置全外環境的淺灰色色調。
    2. 光澤 設為 2 以使全球燈光源稍微褪色。
    3. ColorShift_Top 設置為 207, 178, 72 以設置黃色色調在反射從全球照明原始碼面向的表面的燈光。
    4. 科技 設為 未來 以更新照明技術系統。
    5. ClockTime 設為 4.3 以設定在 4am 之後的時間。
    6. 地理位置 設置為 199 以修改月的位置。
    7. 曝光補償 設為 -1 以將環境曝光減半來自月亮。
    A front view of the volcano with darkened outdoor lighting.
  2. 探險家 窗口中,選擇 盛放 服務的 兒女 ,然後在 1> 屬性窗口1> 中,

    1. 強度 設置為 0.75 以微暗環境內的所有顏色。
    2. 大小 設為 80 以創建更寬廣的花朵效果。
    3. 閾值 設置為 0.85 以允許環境中的更多顏色發光。
    A front view of the volcano with darkened outdoor lighting and local lighting that glows orange.
  3. 探險家 窗口中,將 顏色修正 對象插入 照明 服務,然後在 1> 屬性1> 窗口中,

    1. 光明度 設為 0.017 以微調你的畫素的顏色。
    2. 對比度 設置為 0.25 以在環境中更清晰地顯示光和黑暗顏色之間的對比。
    3. 飽和度 設為 -0.15 以在環境中解飽顏色。
    4. TintColor 設置為 255, 214, 143 以淺黃色色調漆畫像。
    A front view of the volcano with pitch black outdoor lighting and local lighting that glows orange.
  4. (可選) 提供天空中的雲朵。

    1. 探險家 窗口中,插入 雲朵 對象到 地形服務器 服務。
    2. 選擇 雲 對物件,然後在 屬性 窗口中,
      1. 帽子 設置為 1 為天空提供完整的雲朵覆蓋。
      2. 密度 設為 0.08 以使雲朵覆蓋更少。
      3. 顏色 設為 136, 143, 152 以設定雲朵罩。
    A front view of the volcano with pitch black outdoor lighting, gray clouds, and local lighting that glows orange.

設定火山

現在您的本地和全球照明設定完成後,是時候來設定關於實際火山和其周圍地形的所有 VFX 對象了。跟隨這些說明,正確重現樣本 Volcano Island .rbxl 檔案內的環境。每一步都觀察如何在不同步步驟中添加角色、移動和照明給環境

地面渦紋

地面沖繩 是由內部岩漿和壓ur化氣體移動到大釜的表面結果的小沖繩波,這是您場景中的實體物理過程的視覺傳達,或者將熱的液體從地表升到地表壓ur化氣體的移動。這種視覺效果傳達您場景中的物理過程,或者將熱

地面沖繩提供玩家對火山噴發狀態的寶貴洞察。例如,如果岩漿和毒氣正在上升,以至於擾亂岩漿上方岩漿的狀態,玩家可以判斷火山正在熱烈噴發,因此,在此遊戲區域內,玩家應該小心週遭。

A top-down view of the caldera without surface ripples.
沒有表面沖磚
有表面沖磨

為了示範此過程,樣本使用 ParticleEmitter 對基地稍微下方的熔岩發射平滑、明亮的粒子,以發射速度快速擴展並收縮在黑暗背景上。這允許粒子以類似實際元素的方式順利擴展在自然中。

The 2D texture that represents surface ripples that result from churning lava.
發泡泡泡材質 = rbxassetid://16811365086

要重現在 caldera 上方的地表沖繩在樣本 火山島 - 完成 位置 file:

  1. Explorer 窗口中,在 Workspace 中建立一個 Folder 以容納所有 caldera 對象,然後重新命名 1> Folder1> 為 4> Caldera4>。

  2. 創建背景,為表面沖繩提供高對比背景。

    1. 區塊 零件放入 Caldera 夾中,然後重命名它 背景

    2. 將位置和尺寸 背景 提升至大釋器的表面區域的稍微側邊。該零件看起來像是它發光了,因為它與大釋器的本地光原始碼很近。

      A top-down view of the caldera with a highlighted block part that's glowing yellow.
  3. 選擇 背景 ,在 屬性 窗口中。

    1. 顏色 設為 0, 0, 0 以使區塊變黑。

    2. 材料 設置為 鋁箔 提供背景。

      A top-down view of the caldera with a block part that's black with some rough texture.
  4. 創建漲漲效果。

    1. 重複 背景 ,重命名它 MagmaRipples ,然後稍微調整它到大釋器表面區域。
    2. 選擇 MagmaRipples ,然後在 屬性 窗口中設置 透明度 為 1> 11> 以隱藏區塊。
    3. 粒子發射器 插入 岩漿渦 ,然後重新命名發射器
    4. 選擇 捲動 ,然後在 屬性 窗口中
      1. 結構 設置為 rbxassetid://16829556885 以渲染像泡沫波浪形狀的粒子。

      2. 方向性導航 設置為 VelocityPerpendicular 以發射方向性與粒子方向相對的粒子。

      3. 顏色 設置為瀏覽器的顏色順序,以便粒子變成棕色、變成紅色,然後變成褐色。

        1. 單擊 顏色 屬性,然後單擊⋯按鈕。一個顏色順序會顯示。
        A close up view of Studio's Properties window with the Color property's ellipsis button highlighted.

        顏色順序的底軸上的每個三角形是 鑰匙點 ,它決定了顏色值在該點的粒子生命時間的顏色值。

        1. 設定顏色順序中的時間和值屬性:

        • 時間 = 0RGB值 = 0> 130, 53, 20>
        • 時間 = 0.5RGB值 = 0> 224, 37, 00>
        • 時間 = 1, RGB值 = 0> 147, 5, 00>
      4. 大小 設置為返回到原始大小之前會在中間增加大小的數字順序,以便在返回原始大小時不會發生變化。

        1. 單擊 大小 屬性,然後單擊⋯按鈕。一個數字順序會顯示。 由預設情況下,圖形是一條直線,圖像從左到右保持相同大小。
        A close up view of the Size number sequence graph.

        數字順序的開始和結束各個方塊是 關鍵點 ,它們確定了該方塊的內容在左到右的材質圖中的大小值。

        1. 設定數字順序中的時間和值屬性:

        • 時間 = 0 , = 0> 4.810> , 3>圍形3> = 6> 0.438 6>
        • 時間 = 0.341 , = 0> 8.750> , 3>圍繞3> = 6> 0.48 6>
        • 時間 = 0.497 , = 0> 9.380> , 3>圍繞3> = 6> 0.5 6>
        • 時間 = 0.644 , = 0> 8.750> , 3>圍繞3> = 6> 0.48 6>
        • 時間 = 1 = 0> 4.810>,3>圍形3> = 6> 0.438 6>
      5. 透明度 設為數字順序,在此範圍內粒子開始為透明,並在其生命時間中央變得越來越不透明,然後在其生命時間結束時變得透明。

        1. 按一下 透明度 屬性,然後按一下 ⋯ 按鈕。

        2. 設定數字順序中的時間和值屬性:

        • 時間 = 0 , = 0> 10> , 3>圍繞3> = 6> 0 6>
        • 時間 = 0.3 , = 0> 0.3870> , 3> 圍裹 3> = 6> 0.0375 6>
        • 時間 = 0.5 , = 0> 0.2690> , 3> 圍裹 3> = 6> 0.0812 6>
        • 時間 = 0.7 , = 0> 0.3810> , 3>圍繞3> = 6> 0.05 6>
        • 時間 = 0 , = 0> 10> , 3>圍繞3> = 6> 0 6>
      6. ZOffset 設為 -2 以將紋理稍微離開熔岩。

      7. 總計時 設為 5, 8 以隨機設置每個粒子的總計時在 5 到 8 秒之間。

      8. 速度 設為 12 以每秒發射 12 個粒子。

      9. 旋轉 設為 -360, 360 以隨機方向旋轉每個粒子。

      10. 速度 設為 0.01 以每秒發射每個粒子的一千分之一。

      11. LightEmission 設為 1 以顯著提升粒子。

      12. LightInfluence 設置為 0 以防止環境燈光影響粒子的顏色。

      13. 光澤 設為 15 以調整發射器發出的光。

燦爛

燃燒的火山灰巖是由熔融岩漿中小型的輕營地,在噴發的大釋放熱量,快速排出氣體。與地面層次相似,燃燒的火山灰巖在地球表面壓縮,壓縮導致熱元素向上移動,導致熔岩表層向上移動。 樣本使用 ParticleEmitter 對象來發射具有運動模糊的粒子,以實現粒子在紋理中保存的狀態。隨著粒子升級並達到其生命時間的終點,發射器將粒子壓扁為 1:1 比例以重新將粒子變成圓形。此技術允許

The 2D texture that represents embers bursting from the caldera.
燦爛文字 = rbxassetid://17581858560

此外,隨著粒子升級,粒子的顏色、不透明度和大小會改變,以反映其變化溫度。例如,它們會開始從大到小的棕色粒子,但很快轉變成小橙色,然後再轉變成棕色。這種方法還有一個好處,即可以溫和地反射環境中的照明,提升玩家對環境的身體投入。

要重現從火山島 完成 位置檔案中的發光 embers 表面:

  1. 圓柱體 零件插入 卡爾德拉圓柱體 資料欄,然後重命名為 GlowingEmbers

  2. 位置 發光的柱 以便它位於表面波浪上,然後將其擴大直到填滿熔岩內部。零件看起來像它是發光的,因為它與熔岩本身的光原始碼很近。

    A close front view of the caldera with a cylinder part that's glowing yellow.
  3. 選擇 發光匣首 ,然後在 屬性 窗口中設置 透明度 為 1> 11> 以使圓柱隱形。

  4. 粒子發射器 插入 發光伴奏 ,然後重新命名發射器 伴奏者

  5. 選擇 發光體 ,然後在 屬性 視窗中

    1. 材質 設置為 rbxassetid://17581858560 以渲染像長橢圓水平和垂直方向發生的粒子。

    2. 方向 設為 VelocityParallel 以發射方向與其移動方向相對的粒子。

    3. 顏色 設置為顏色順序,在顆粒變成棕色、變成橙色,然後變成紅色。

    • 時間 = 0RGB值 = 0> 130, 53, 20>
    • 時間 = 0.5RGB值 = 0> 224, 82, 00>
    • 時間 = 1, RGB值 = 0> 147, 5, 00>
    1. 大小 設置為一個數字順序,在其生命時間內,粒子會隨著大小減少。

    • 時間 = 0 , = 0> 0.3130> , 3>圍形3> = 6> 0.1 6>
    • 時間 = 1 = 0> 00>,3>圍繞3> = 6> 0 6>
    1. 壓扁 設置在粒子在其生命時間中稍微伸長的數字順序。

    • 時間 = 0 = 0> -30>,3>包裝3> = 6> 0 6>
    • 時間 = 0.323 , = 0> -0.1880> , 3>圍繞3> = 6> 0 6>
    • 時間 = 1 = 0> -0.50>,3>圍繞3> = 6> 0 6>
    1. 透明度 設為一個數字順序,在此中粒子隨機變更其不透明度來模擬燃燒。 實際值不重要,只是它們在生命時間的過程中變化很多。
    1. ZOffset 設為 1 以將紋理稍微離開熔岩。
    2. 總計時 設為 1, 5 隨機設置每個粒子的總計時在 1 到 5 秒之間。
    3. 速度 設為 5, 8 以隨機發射每個粒子之間的 5 至 8 格子每秒。
    4. SpreadAngle 設為 180, 180 以發射角度在 X 和 Z 軸上發射粒子。
    5. 加速 設為 0, 10, 0 以模擬向上力和向下力,並將粒子拉到天空。
    6. 拖曳 設為 0.8 以使粒子在減速時失去速度。
    7. LightEmission 設為 1 以顯著提升粒子。
    8. LightInfluence 設置為 0 以防止環境燈光影響粒子的顏色。
    9. 光澤 設為 20 以調整發射器發出的光。

岩漿分裂

熔岩濺射 是由內部岩漿和壓ur化氣體對流器施加足夠的力量而從火山上升起的結晶,這些結晶會在熔岩層在熔岩濺射的結果。這個火山核心部分的一個最常見的標誌是確定火山不再睡覺,並且正在進行噴發。

此示例代表此過程使用兩個 ParticleEmitter 對象,使用 flipbooks 來動畫每個粒子的結構。第一個粒子 emitter 使用結構像稠密、高粘度的沼澤沼澤沼澤沼

The 2D texture that represents a dense splash texture.
密度大濺射紋理 = rbxassetid:/17363669906
The 2D texture that represents a webby splash texture.
網路濺射材質 = rbxassetid://17363668312

每個粒子 emitter 都會在 64 個圖像上動畫他們的材質,以模擬平滑、生活感的物理行為。 雖然您只能使用一個粒子 emitter,但重複動畫將變得明顯,因為您的玩家每次都會看到相同的動畫。 當兩個粒子 emitter 翻書時,會在動畫上重複。

樣本還提供一個 ParticleEmitter 對象,發出像氣泡水溅一樣看起來的粒子來代表更輕的網路沼澤。這種技術會用動態移動填滿空間,並且隱藏翻轉書動畫的重複。作為額外����

The 2D texture that represents aerated splashes.
網路素材 = rbxassetid://17082061238

要重現從大釜岩坑表面滲出的岩漿,請在 火山島 - 完成 位置儲存檔案:

  1. 圓柱體 零件插入 卡爾德拉圓柱體 文件夾,然後重命名它 濺射岩漿

  2. 位置 濺射岩漿 。因此它會位於表面的渦紋上,然後將其擴大直到它覆蓋整個熔岩區,你想要用濺射岩漿來濺射的地方。部分會顯示為它發光,因為它與熔岩區的本地光原始碼很近。

    A close front view of the caldera with a cylinder part that's glowing yellow.
  3. 選擇 濺射岩漿 ,然後在 屬性 窗口中設置 透明度 為 1> 11> 以使筒體隱形。

  4. 粒子發射器 插入 分裂岩 ,然後重新命名發射器 WebbySplashes

  5. 選擇 WebbySplashes ,然後在 屬性 視窗中,

    1. 材質 設置為 rbxassetid://17363668312 以渲染像網路噴濺模樣的粒子。

    2. 導向方向 設為 面向攝影機世界 以發射向相機方向的粒子,但只在垂直向上世界的 Y 軸上旋轉。

    3. 顏色 設為 255, 152, 79 以漆紅粒子。

    4. 大小 設為窗戶式數字順序,以便在其生命時間內,粒子大小會隨著時間的推移而增加。

    • 時間 = 0 , = 0> 4.310> , 3>圍形3> = 6> 0.762 6>
    • 時間 = 1 , = 0> 6.20> , 3>圍形3> = 6> 0.875 6>
    1. Squash 設置為一個數字順序,在其生命時間內,粒子會稍微延長,並且在一個變化窗口內。

    • 時間 = 0 , = 0> -0.0750> , 3>圍繞3> = 6> 0.263 6>
    • 時間 = 1 = 0> -0.4130>,3>圍形3> = 6> 0.412 6>
    1. ZOffset 設為 1 以將紋理稍微離開熔岩。
    2. 有效時間 設置為 1.5, 2 以隨機設置每個粒子的有效時間在 1.5 到 2 秒之間。
    3. 速度 設為 0.37 以每 3 秒發出一個粒子。
    4. RotSpeed 設為 -20, 20 以隨機發射每個粒子之間的 -20 至 20 度。
    5. 速度 設為 2 以每秒發射 2 個粒子。
    6. SpreadAngle 設為 5, 5 以發射在 X 和 Z 軸上的小角度的粒子。
    7. FlipbookLayout 設置為 Grid8x8 以動畫過程中的材質。
    8. FlipbookMode 設置為 Oneshot 以確保動畫只在其生命時間內播放一次。
    9. 拖曳 設為 0.5 以使粒子在減速時失去速度。
    10. LightEmission 設為 0.1 以稍微亮起粒子。
    11. LightInfluence 設置為 0.25 來顯著減少環境燈對粒子的顏色影響。
  6. 複製 DenseSplashes ,然後在 屬性 窗口中修改以下屬性來提供變化於額外的岩漿濺射。

    1. 名稱 設置為 濃度濺射

    2. 材質 設置為 rbxassetid://17363669906 以渲染像濃稠濺射一樣的粒子。

    3. 大小 設為窗戶式數字順序,以便在其生命時間內,粒子大小會隨著時間的推移而增加。

    • 時間 = 0 , = 0> 5.750> , 3>匣子3> = 6> 0.762 6>
    • 時間 = 1 = 0> 7.370>,3>匣子3> = 6> 0.875 6>
    1. Squash 設置為一個數字順序,在其生命時間內,粒子會稍微延長,並且在一個變化窗口內。

    • 時間 = 0 = 0> 00>,3>外殼3> = 6> 0.225 6>
    • 時間 = 1 = 0> -0.2620>,3>圍形3> = 6> 0.15 6>
    1. 速度 設置為 0.289 以發射一個粒子每秒幾乎每四分之一。
  7. 用額外的火焰填滿岩漿。

    1. 粒子發射器 插入 分裂岩 ,然後重新命名發射器 粒子填充器

    2. 選擇 SplashFill ,然後在 屬性 視窗中,

      1. 材質 設置為 rbxassetid://17082061238 以渲染像淺網狀塗抹處理的粒子

      2. 導向方向 設為 面向攝影機世界 以發射向相機方向的粒子,但只在垂直向上世界的 Y 軸上旋轉。

      3. 顏色 設為 255, 152, 33 以漆紅粒子。

      4. 大小 設為窗戶式數字順序,以便在其生命時間內,粒子大小會隨著時間的推移而增加。

      • 時間 = 0 , = 0> 1.250> , 3>圍形3> = 6> 0.388 6>
      • 時間 = 1 = 0> 6.380>,3>匣子3> = 6> 0.563 6>
      1. 透明度 設為數字順序,在此範圍內開始為透明,變成不透明,然後變成透明,直到它們的壽命結束。

      • 時間 = 0 , = 0> 10> , 3>圍繞3> = 6> 0 6>
      • 時間 = 0.19 , = 0> 00> , 3>匣子3> = 6> 0 6>
      • 時間 = 0.795 , = 0> 00> , 3>匣子3> = 6> 0 6>
      • 時間 = 1 = 0> 10>,3>外掛3> = 6> 0 6>
      1. ZOffset 設為 1 以將紋理稍微離開熔岩。
      2. 有效時間 設為 1.5 以設定每個粒子的有效時間為 1.5 秒。
      3. 速度 設為 8 以每 8 秒發出一個粒子。
      4. 旋轉 設為 0, 360 以隨機方向旋轉每個粒子。
      5. RotSpeed 設為 -50, 50 以隨機發射每個粒子之間的 -50 至 50 度。
      6. 速度 設為 12, 20 來隨機發射每個粒子之間的 12 至 20 格/秒。
      7. SpreadAngle 設為 45, 45 以發射在 X 和 Z 軸上沿角度發射粒子。
      8. 加速 設為 0, -25, 0 來模擬重力並將粒子拉回。
      9. 拖曳 設為 1 以使粒子在壓減速度。
      10. LightEmission 設為 1 以顯著提升粒子。
      11. LightInfluence 設置為 0 以防止環境燈光影響粒子的顏色。
      12. 光澤 設為 8 以調整發射器發出的光。

岩漿流

岩漿流是由岩漿噴發和熔化在大地表面和鍋爐中的熔岩所組成的一種岩漿。當岩漿冷卻由於空氣的暴露而凝固並變成固體後,它就會變成固體岩,並創造新的地形。

要模擬此過程,樣本層上的多個 Beam 對象上互相Beam ,並且具有完整的材質和屬性配置,以表現岩漿冷卻過程中的行為特性:

  • 底層 渲染一個平滑的顏色 ,從溫暖的顏色變成冷顏色,以便傳達岩漿開始下降溫度,例如將紅色變成深紅色。
  • 中間層 渲染黑色的結構,看起來像黑色的樹皮,下面是發光的岩漿。
  • top layer 會以更慢的評分度渲染中間層和底層的相同的材質,反轉的附件和相反的屬性設定。這確保文本在同一個方向中渲染時永遠沒有機會完全對齊。這允許玩家在同一個方向下容易偵測到不實的材質重複。
底層
中層
最上層

三個 Beam 對象創造了一個層次三的錯覺,讓岩漿看起來有深度和音量,因為它們只是三個 2D 圖像。這允許玩家知道岩漿在礦坑內的各個速度和音量,即使它們只是三個圖像。這允許玩家知道岩漿在礦坑內的各個速度和音量,即使它們

The 2D texture that represents the crust on top of the flowing lava.
螺殼結構 = rbxassetid://17023930265

要重現從火山島 Volcano Island - Complete 放置檔案中的流動岩漿:

  1. Explorer 窗口中,在 工作區 中建立一個 文件夾 來容納所有流動的岩漿對象,然後重新命名文件夾 1> FlowingMagma1>。

  2. 方塊 零件放入 流動岩漿 資料欄,然後重新命名為 MagmaRiverBeam

  3. 岩漿河焰 移動到大釜邊緣的稍微下方。

    An angled top down view of the volcano with a block part highlighted.
  4. 設定從大釜到流動的所有岩漿光束,以便使用它們的紋理。

    1. 將附件插入 MagmaRiverBeam ,然後旋轉附件直到黃色視覺協助點指向 caldera。
    2. 將另一個附件插入 MagmaRiverBeam ,將它向前移動到孔內,然後旋轉附件直到黃色視覺協助點向地面。
    An angled top down view of the volcano with two attachment visual aids highlighted.
  5. 光束 插入 岩漿河道光束 ,然後將其重命名為 岩漿

  6. 將零件的附件指定為 Magma

    1. 探險家 窗口中,選擇 岩漿
    2. 屬性 視窗中,
      1. 附件0 設置在大釜邊緣的附件上。
      2. Attachment1 設置在樹腦上的附件上。光束在兩個附件之間渲染它的預設紋理。
    An angled top down view of the volcano with two block parts rendering the default beam texture between the attachments.
  7. 自訂光束的視覺外觀,讓它看起來像流動的岩漿。

    1. 探險家 窗口中,確認 岩漿 仍然選擇。

    2. 屬性 視窗中,

      1. 寬度0 設為 50 以將紋理從它開始成像的軸擴大。

      2. 寬度1 設為 50 以在矮條孔中滿足彈弓的寬度。

      3. CurveSize0 設為 -50 以向縫縫側邊緣減少紋理。

      4. CurveSize1 設為 5 以在溝澤中曲線化材質。

      5. 顏色 設置為始終為明亮的紅色,變成隨著時間的推移變成深紅,以模擬岩漿冷卻。

      • 時間 = 0RGB值 = 0> 255, 51, 00>
      • 時間 = 0.5RGB值 = 0> 211, 39, 00>
      • 時間 = 1RGB值 = 0> 118, 24, 00>
      1. 透明度 設置為數字順序,允許岩漿在附件點之間更為活躍。

      • 時間 = 0 = 0> 10>
      • 時間 = 0.0916 = 0> 00>
      • 時間 = 0.867 = 0>00>
      • 時間 = 0.941 = 0> 0.7250>
      • 時間 = 1 = 0> 10>
      1. LightEmission 設為 1 以顯著提升光束。
      2. LightInfluence 設置為 0 以防止環境燈光影響燈條的顏色。
      3. 光澤 設為 8 以調整光束從光束發射器發出的光。
  8. 將另一個 Beam 插入 MagmaRiverBeam ,重命名它 Crust1 ,然後使用同一個過程在步驟 6 中連接零件的附件到 1>Crust11> 。

  9. 自訂光束的視覺外觀,讓它看起來像樹皮在岩漿上。

    1. 在 Explorer 窗口中,確認 Crust1 仍然選擇。

    2. 屬性 視窗中,

      1. 材質 設置為 rbxassetid://17023930265 以渲染新的材質,看起來像漂浮的餅皮。

      2. 寬度0 設為 35 以將紋理從它開始成像的軸擴大。

      3. 寬度1 設為 25 以擴大牆面在彈弓中的彈弓寬度。

      4. 材質速度 設置為 0.01 來顯著減慢紋理流動。

      5. TexturLength 設為 3 以稍微延伸紋理的長度。

      6. CurveSize0 設為 -50 以向縫縫側邊緣減少紋理。

      7. CurveSize1 設為 5 以在溝澤中曲線化材質。

      8. 將顏色設為 83, 83, 83 以調色燈條灰色。

      9. 透明度 設置為數字順序,允許讓觸角點間的觸角更震動。

      • 時間 = 0 = 0> 10>
      • 時間 = 0.22 = 0> 00>
      • 時間 = 0.85 = 0>00>
      • 時間 = 1 = 0> 10>
      1. ZOffset 設為 1 以將紋理稍微離開熔岩。
  10. Duplicate Crust1 , rename it Crust2 , then in the 屬性 window,

    1. 附件0 設定為樹腦上的附件。
    2. 附件1 設置在大釜邊緣的附件上。
    3. 寬度0 設為 25 以從軸開始成像的材質寬度。
    4. 寬度1 設為 35 以在箭頭穿過時擴大紋理。
    5. TexturSpeed 設置為 -0.008 來顯著減慢紋理的流動。
    6. 材質長度 設置為 2 以稍微伸長紋理的長度。
    7. CurveSize0 設為 -5 以曲線從縫隙的地板上移開紋理。
    8. CurveSize1 設為 50 以在溝澤中曲線此材質。
    9. ZOffset 設為 2 來從其他軸轉移紋理。
  11. (可選) 使用此相同的過程,在溝澤中創建更多光束來對準岩漿。請確認調整屬性以減慢紋理並模擬岩漿在溫度下降時變得更暗。

煙霧彈

煙霧圓柱 從大釜發出溫壓氣、蒸氣和火山灰塵,進入大氣。這種火山排放的混合物可以在實際世界中兩英里內見到,因此火山設計通常會設計大型煙霧圓柱來成為 3D 空間中的重要點。

而不是發出像爆炸釋放出的大量 pyroclastic 煙霧,而是使用 ParticleEmitter 對象發出像細煙霧 vapors 一樣看起來的粒子,粒子看起來像煙霧 vapors 在上升時變色。這種技術能達成兩個目標:

  • 它會擊碎背景火山的輪廓,以創造火山噴發的更多視覺興趣。
  • 它允許煙霧看起來像它從環境中接受光線,並且仍然發出黑暗的存在,就像煙霧在將污泥燃燒成灰色,像夜空一樣黑暗。
The 2D texture that represents the smoke rising out of the caldera.
煙霧紋理 = rbxassetid://16830667309

要重現來自火山島的煙霧 火山島 - 完成 位置檔案:

  1. 區塊 零件放入 Caldera 夾中,然後重命名它 SmokePlume

  2. 在 caldera 底部位置 SmokePlume ,然後將它縮放到大約 caldera 表面積的大小。

    An angled side view of the volcano with a block part highlighted underneath the caldera.
  3. 粒子發射器 插入 SmokePlume ,然後重新命名發射器 Smoke

  4. 選擇 煙霧 ,然後在 屬性 視窗中,

    1. 材質 設置為 rbxassetid://16830673704 以渲染像厚煙霧一樣的粒子。

    2. 顏色 設置為環境中的燈光順序,以黑色為基礎,變成淺色紫,然後灰色。

    • 時間 = 0RGB值 = 0> 0, 0, 00>
    • 時間 = 0.374RGB值 = 0> 195, 104, 760>
    • 時間 = 0.469RGB值 = 0> 225, 121, 860>
    • 時間 = 0.709RGB值 = 0> 111, 111, 111 0>
    • 時間 = 1RGB值 = 0> 113, 113, 1130>
    1. 透明度 設為數字順序,在其中粒子開始為透明,並在其生命時間的早期開始變為全面隱形,然後在粒子的終生期間變為透明。

    • 時間 = 0 = 0> 10>
    • 時間 =0.0622, =0>00>
    • 時間 = 0.845 = 0>00>
    • 時間 = 0 = 0> 10>
    1. ZOffset 設置為 -10 以將紋理讓更接近熔岩頂部。
    2. 有效時間 設置為 50, 60 隨機設置每個粒子的有效時間在 50 和 60 秒之間。
    3. 速度 設為 0.3 以每 3 秒發出一個粒子。
    4. 旋轉 設為 -360, 360 以隨機方向旋轉每個粒子。
    5. RotSpeed 設為 -5, 5 以隨機發射每個粒子之間的 -5 至 5 度。
    6. SpreadAngle 設為 5, 5 以發射在 X 和 Z 軸上的小角度的粒子。
    7. 加速 設為 0, 7, 0 以模擬向上力和向天空拉拽粒子。
    8. 拖曳 設為 1 以使粒子在壓減速度。
    9. 啟用 風Affects拖曳 以便在環境中的風使煙霧壓縮。
    10. LightEmission 設為 0.1 以稍微亮起粒子。
    11. LightInfluence 設置為 0.06 來顯著減少環境燈對粒子的顏色影響。
  5. 指令條 中,輸入以下字串來增加每個粒子的大小,以 40 到 100 學位的時間,在小窗口的變化中:


    workspace.Caldera.SmokePlume.Smoke.Size = NumberSequence.new{NumberSequenceKeypoint.new(0,40,5), NumberSequenceKeypoint.new(1,100,15)}