Hướng dẫn trung cấp

Tạo thác nước với VFX

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Một thác nước là một điểm trong một con sông hoặc dòng suối nơi nước chảy qua một hoặc nhiều điểm đứng thẳng xuống một vùng nước. Những trải nghiệm thường có thác nước để nâng cao tính thẩm mỹ trực quan, chẳng hạn như để làm phong phú môi trường hoặc tạo ra một điểm nhấn thị giác, hoặc cho các mục đích gameplay chức năng, chẳng hạn như để ẩn giấu tài nguyên hoặc chuyển người chơi giữa các khu vực khác nhau trong chính địa điểm đó.

Sử dụng tệp .rbxl Waterfall Island làm tài liệu tham khảo, hướng dẫn này sẽ cho bạn biết cách tạo một thác nước với các đối tượng VFX đại diện cho hành vi vật lý trong thế giới thực, bao gồm hướng dẫn về:

  • Phân tích tài liệu tham khảo thành các thành phần riêng lẻ với các đặc điểm trực quan và hành vi riêng biệt.
  • Cấu hình các thác nước rơi với tốc độ khác nhau để mô phỏng nước phân tán khi nó đổ xuống từ một vách đá.
  • Cấu hình các cú splash để mô phỏng nước trở thành aerosol khi các thác nước va chạm với hồ chứa bên dưới.
  • Cấu hình dòng nước trắng để mô phỏng nước cuộn sóng sôi động khi dòng chảy đụng vào đá.
  • Cấu hình bọt để mô phỏng sóng mao quản phá vỡ sức căng bề mặt.
  • Cấu hình sương mù để mô phỏng hơi nước bốc lên và bay lên từ điểm va chạm, tạo ra một cầu vồng mà người chơi có thể nhìn thấy từ mọi góc độ.

Phân tích tài liệu tham khảo

Để tạo ra những thác nước đáng tin cậy, điều quan trọng là tham khảo các đặc điểm tự nhiên trong thế giới thực trong quá trình thiết kế vì điều này cho phép bạn phân tích chủ đề thành các thành phần riêng lẻ với các đặc điểm trực quan và hành vi riêng biệt. Ví dụ, trải nghiệm mẫu Waterfall Island tham khảo về Snoqualmie Falls ở tiểu bang Washington để thông báo tất cả các quyết định thiết kế về văn bản và VFX liên quan đến thác nước và địa hình xung quanh của nó.

Một cái nhìn xa của Snoqualmie Falls.

Trong khi một thác nước là một dòng nước liên tục và kết nối, liên quan đến nhiều trạng thái của vật chất với chuyển động của chất lỏng và không khí động, thì sẽ rất hữu ích khi phân tích hệ thống phức tạp này thành các thành phần riêng lẻ để bạn có thể lên kế hoạch cách sử dụng các đối tượng VFX khác nhau để bắt chước các đồng nghiệp trong thế giới thực của chúng. Để minh họa, hướng dẫn này phân tích thác nước mẫu thành năm thành phần độc đáo:

  • Các thác nước – Nước chảy từ vách đá.
  • Các cú splash – Nước văng ra khi các thác nước va chạm với hồ chứa bên dưới.
  • Nước trắng – Nước sôi động xảy ra khi nguồn nước đến gần mũi vách đá.
  • Bọt – Nước được không khí hòa trộn mà văng ngang khi va chạm với hồ chứa.
  • Sương mù – Nước như đám mây bốc hơi khi va chạm như một kết quả của toàn bộ thác nước.
Snoqualmie Falls với tất cả năm thành phần được làm nổi bật.
Thác nước mẫu với cùng năm thành phần được làm nổi bật để so sánh hình ảnh tham khảo với kết quả cuối cùng.

Các phần sau cung cấp phân tích sâu về các quyết định thiết kế khác nhau và các kỹ thuật bạn có thể sử dụng để tái tạo mỗi thành phần thác nước tạo nên sự rơi chính trong không gian 3D của mẫu. Khi bạn xem xét những quyết định này và thử nghiệm với các thuộc tính BeamParticleEmitter khác nhau, bạn sẽ học được cách sử dụng VFX để giải quyết những yêu cầu môi trường độc đáo cho các trải nghiệm của riêng bạn.

Cấu hình các thác nước

Một thác nước là nước rơi xuống từ các mỏm núi hoặc vách đá vào hồ chứa bên dưới. Các thác nước rơi với tốc độ khác nhau phụ thuộc vào cả thể tích nước và quy mô rơi của chúng vào hồ chứa. Ví dụ, sự rơi chính của mẫu có vẻ chậm hơn vì có một thể tích nước lớn rơi xuống từ khoảng cách lớn, nhưng sự rơi thứ hai của mẫu có vẻ nhanh hơn vì một thể tích nước nhỏ hơn rơi xuống khoảng cách ngắn.

Rơi chính
Rơi thứ hai

Hơn nữa, các thác nước thường có nhiều lớp thác nước rơi ở các tốc độ khác nhau vì nước phân tán khi nó rơi vào hồ chứa. Để minh họa nguyên tắc này, mẫu sử dụng nhiều đối tượng Beam với văn bản liền mạch, tạo ra giữa các đối tượng Attachment với tốc độ và chiều dài khác nhau. Ngoài việc cung cấp cho sự rơi chính hành vi rớt thực tế hơn, kỹ thuật này cũng tạo ra ảo giác parallax để làm cho thác nước có vẻ như có chiều sâu và thể tích ngay cả khi nó chỉ là một hình ảnh 2D.

Thác nước này có vẻ tự nhiên vì nước rơi và phân tán với các tốc độ khác nhau.
Thác nước này có vẻ không tự nhiên vì nước rơi và phân tán với cùng một tốc độ.

Để tái tạo các thác nước cho sự rơi chính trong tệp địa điểm mẫu Waterfall Island:

  1. Tạo luồng nước cho thác nước chảy.

    1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng luồng nước, sau đó đổi tên thư mục thành Outflow.

    2. Chèn hai phần block vào thư mục Outflow, sau đó đổi tên chúng thành OutflowStartOutflowStop, tương ứng.

    3. Di chuyển OutflowStart đến nơi bạn muốn bắt đầu luồng nước, và di chuyển OutflowStop đến mép của vách đá.

      Một cái nhìn nghiêng từ trên xuống của nước luồng với hai phần block được đặt ở nơi văn bản luồng nước nên hiển thị.
    4. Chèn một đính kèm vào cả hai OutflowStartOutflowStop, sau đó xoay các đính kèm cho đến khi thiết bị hiển thị màu vàng chỉ lên trên.

      Một cái nhìn nghiêng từ trên xuống của nước luồng với hai phần block có đính kèm ở đâu mà thiết bị hiển thị màu vàng chỉ lên trên.
    5. Chèn một Beam vào thư mục Outflow, sau đó đổi tên nó thành OutflowWater.

    6. Gán đính kèm của mỗi phần vào OutflowWater.

      1. Trong cửa sổ Explorer, chọn OutflowWater.
      2. Trong cửa sổ Properties,
        1. Đặt Attachment0 thành đính kèm trong OutflowStart.
        2. Đặt Attachment1 thành đính kèm trong OutflowStop. Beam sẽ hiển thị văn bản mặc định của nó giữa hai đính kèm.
      Một cái nhìn nghiêng từ trên xuống của nước luồng với hai phần block hiển thị văn bản beam mặc định giữa các đính kèm.
    7. Tùy chỉnh diện mạo trực quan của beam sao cho nó giống như nước chảy đến mép của vách đá.

      1. Trong cửa sổ Explorer, xác nhận rằng OutflowWater vẫn đang được chọn.
      2. Trong cửa sổ Properties,
        1. Đặt Texture thành rbxassetid://4787437624 để hiển thị một văn bản mới trông giống như bọt nước chảy.

        2. Đặt Width0 thành 60 để mở rộng văn bản từ trục mà nó bắt đầu hiển thị.

        3. Đặt Width1 thành 20 để thắt nghẹt văn bản đến mép của vách đá.

        4. Đặt TextureSpeed thành 0.4 để làm chậm tốc độ của văn bản.

        5. Đặt TextureLength thành 64 để kéo dài chiều dài của văn bản.

        6. Đặt TextureMode thành Wrap để lặp lại văn bản với lượng chiều dài tổng thể của beam trong thế giới 3D giữa các đính kèm chia cho TextureLength của nó. Điều này cho phép văn bản trông thực tế hơn với nước chảy.

        7. Đặt Color thành một chuỗi màu mà thay đổi màu từ xanh tối và sáng đến trắng.

          1. Nhấp vào thuộc tính Color, sau đó nhấp vào nút . Một hộp pop-up hiển thị chuỗi màu.

            Một hình ảnh gần của cửa sổ Properties của Studio với nút hình ba chấm của thuộc tính Color được làm nổi bật.

            Mỗi hình tam giác trên trục dưới của chuỗi màu là một keypoint xác định giá trị màu của thuộc tính ở điểm đó trong vòng đời của hạt.

          2. Thiết lập các thuộc tính thời gian và giá trị sau trong chuỗi màu:

            • Time = 0, Giá trị RGB = 208, 247, 255
            • Time = 0.135, Giá trị RGB = 146, 235, 255
            • Time = 0.248, Giá trị RGB = 255, 255, 255
            • Time = 0.384, Giá trị RGB = 128, 183, 202
            • Time = 0.757, Giá trị RGB = 166, 213, 248
            • Time = 1, Giá trị RGB = 255, 255, 255
        8. Đặt Transparency thành một chuỗi số mà làm cho nước trở nên sống động hơn khi nó tiến gần đến mép của vách đá.

          1. Nhấp vào thuộc tính Transparency, sau đó nhấp vào nút . Một hộp pop-up chuỗi số hiển thị. Theo mặc định, đồ thị là một đường thẳng và hình ảnh giữ nguyên độ trong suốt từ trái sang phải.

            Một hình ảnh gần của đồ thị chuỗi số Transparency.

            Mỗi ô vuông ở đầu và cuối chuỗi số là một keypoint xác định giá trị độ trong suốt của thuộc tính ở điểm đó của văn bản từ trái sang phải.

          2. Đặt các thuộc tính thời gian và giá trị sau trong chuỗi số:

            • Time = 0, Value = 1
            • Time = 0.375, Value = 0.725
            • Time = 0.615, Value = 0
            • Time = 0.92, Value = 1
            • Time = 1, Value = 1
        9. Tỉ lệ mỗi phần để đảm bảo văn bản bao phủ chiều rộng của hồ chứa. Luồng nước bây giờ xuất hiện như đang chảy về phía mép của vách đá từ mọi góc độ.

  2. Tạo nước chảy nhanh từ thác chính.

    1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng nước chảy, sau đó đổi tên thư mục thành Cascades.

    2. Chèn hai phần block vào thư mục Cascades, sau đó đổi tên chúng thành MainDropStartMainDropStop, tương ứng.

    3. Di chuyển MainDropStart đến mép của vách đá, và di chuyển MainDropStop đến nơi nó nằm dưới hồ chứa.

      Một góc nhìn nghiêng từ bên của vách đá với hai phần block được đặt ở nơi văn bản cascade chảy nhanh nên hiển thị.
    4. Cấu hình các đính kèm cho tất cả các beam nước chảy từ thác chính để sử dụng hiển thị văn bản của chúng.

      1. Chèn một đính kèm vào MainDropStart, sau đó xoay đính kèm cho đến khi thiết bị hiển thị màu vàng chỉ ra khỏi vách đá.
      2. Chèn một đính kèm vào MainDropStop, sau đó xoay đính kèm cho đến khi thiết bị hiển thị màu vàng chỉ vào vách đá.
      Một góc nhìn nghiêng từ bên của vách đá với hai phần block có đính kèm. Phần block ở phía trên của vách đá bao gồm một thiết bị hiển thị màu vàng chỉ ra ngoài, và phần block ở phía dưới của vách đá bao gồm một đính kèm chỉ về phía vách đá.
    5. Chèn một Beam vào thư mục Cascades, sau đó đổi tên nó thành FastDrop.

    6. Gán đính kèm của mỗi phần vào FastDrop.

      1. Trong cửa sổ Explorer, chọn FastDrop.
      2. Trong cửa sổ Properties,
        1. Đặt Attachment0 thành đính kèm trong MainDropStart.
        2. Đặt Attachment1 thành đính kèm trong MainDropStop. Beam sẽ hiển thị văn bản mặc định của nó giữa hai đính kèm.
      Một góc nhìn nghiêng từ bên của vách đá với hai phần block hiện thị văn bản beam mặc định giữa các đính kèm.
    7. Tùy chỉnh diện mạo trực quan của beam sao cho nó giống như nước chảy nhanh từ thác chính.

      1. Trong cửa sổ Explorer, xác nhận rằng FastDrop vẫn đang được chọn.

      2. Trong cửa sổ Properties,

        1. Đặt Texture thành rbxassetid://16808804567 để hiển thị một văn bản mới trông giống như nước chảy.
        2. Đặt Width0 thành 5 để mở rộng văn bản từ trục mà nó bắt đầu hiển thị.
        3. Đặt Width1 thành 10 để mở rộng văn bản khi nó gặp hồ chứa.
        4. Đặt CurveSize0 thành 10 để cong văn bản ra khỏi vách đá.
        5. Đặt CurveSize1 thành 20 để cong văn bản vào trong hồ chứa.
        6. Đặt TextureSpeed thành 1.3 để làm cho văn bản chảy nhanh.
        7. Đặt TextureLength thành 2 để kéo dài một chút chiều dài của văn bản.
        8. Đặt Color thành một chuỗi màu mà thay đổi màu từ xanh tối và sáng đến trắng.
        • Time = 0, Giá trị RGB = 208, 247, 255
        • Time = 0.135, Giá trị RGB = 210, 246, 255
        • Time = 0.25, Giá trị RGB = 255, 255, 255
        • Time = 0.384, Giá trị RGB = 163, 187, 202
        • Time = 0.757, Giá trị RGB = 214, 229, 248
        • Time = 1, Giá trị RGB = 255, 255, 255
        1. Đặt Transparency thành một chuỗi số cho phép nước chảy có sự sống động hơn giữa các điểm đính kèm.
        • Time = 0, Value = 1
        • Time = 0.115, Value = 0
        • Time = 0.835, Value = 0
        • Time = 0.881, Value = .994
        • Time = 1, Value = 1
        1. Đặt ZOffset thành 2 để dịch chuyển văn bản một chút ra khỏi vách đá.
        2. Kích hoạt FaceCamera để đảm bảo nước chảy nhanh luôn hiển thị bất kể góc nhìn của người chơi so với nước.
  3. Tạo nước chảy chậm từ thác chính.

    1. Nhân đôi FastDrop, sau đó đổi tên beam thành SlowDrop.

    2. Tùy chỉnh diện mạo trực quan của beam sao cho nó giống như nước chảy nhanh từ thác chính.

      1. Trong cửa sổ Explorer, chọn SlowDrop.
      2. Trong cửa sổ Properties,
        1. Đặt Width1 thành 20 để mở rộng văn bản hơn nữa khi nó gặp hồ chứa.
        2. Đặt TextureLength thành 1.5 để một chút rút ngắn chiều dài của văn bản.
        3. Đặt TextureSpeed thành 1 để làm cho văn bản chảy ít nhanh hơn.
        4. Đặt ZOffset thành 0 để cho phép văn bản chảy trực tiếp từ mép của vách đá.
  4. Trong cửa sổ Explorer, chọn tất cả các phần block trong thư mục Outflow, sau đó trong cửa sổ Properties, đặt Transparency thành 1 để làm cho các block trở nên vô hình.

Cấu hình các cú splash

Khi các thác nước va chạm với độ dày của hồ chứa bên dưới, nước sẽ phun lên trên từ điểm va chạm để tạo ra các cú splash. Khi nước aerosol này văng lên, nó sẽ mở rộng và vỡ ra khỏi chính nó để tạo ra những giọt nước phun ra theo nhiều hướng khác nhau.

Để minh họa quá trình này, mẫu sử dụng hai đối tượng ParticleEmitter ở đáy của sự rơi chính. Bộ phát hạt đầu tiên phát ra các hạt nhìn giống như các cú splash dày đặc đại diện cho trọng lượng của nước bắt đầu văng lên khi các thác nước va chạm với hồ chứa. Bộ phát hạt thứ hai phát ra các hạt nhìn giống như những giọt nước đại diện cho nước trở thành aerosol.

Khi bạn cấu hình các bộ phát hạt này để phát ra cả hai loại hạt này cùng một lúc nhưng với các tốc độ khác nhau, hiệu ứng hình ảnh kết quả giống như hành vi vật lý trong thế giới thực của các cú splash. Các loại chi tiết này góp phần làm tăng tính hiện thực của VFX của bạn, và làm cho người chơi chìm đắm trong không gian 3D.

Văn bản 2D đại diện cho nước aerosol dày đặc trước khi nó vỡ ra.
Văn bản Dày = rbxassetid://16829556885
Văn bản 2D đại diện cho nước aerosol mạnh mẽ khi nó vỡ ra.
Văn bản Giọt nước = rbxassetid://17082061238

Để tái tạo các cú splash ở đáy của thác chính trong tệp địa điểm mẫu Waterfall Island:

  1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng splash, sau đó đổi tên thư mục thành Splashes.

  2. Chèn một phần block vào Splashes, sau đó đổi tên nó thành MainDropSplashes.

  3. Định vị và điều chỉnh kích thước của MainDropSplashes cho toàn bộ bề mặt nơi mà các thác nước va chạm với hồ chứa.

    Một cái nhìn gần của đáy vách đá với một phần block được đặt tại điểm mà các thác nước va chạm với hồ chứa.
  4. Tạo cú splash dày đặc nơi mà nước từ thác chính va chạm với hồ chứa.

    1. Chèn một ParticleEmitter vào MainDropSplashes, sau đó đổi tên bộ phát thành SplashDense.

    2. Chọn SplashDense, sau đó trong cửa sổ Properties,

      1. Đặt Texture thành rbxassetid://16829556885 để hiển thị các hạt nhìn giống như các cú splash dày.
      2. Đặt Color thành một chuỗi màu bắt đầu bằng màu xanh rồi chuyển sang màu trắng.
      • Time = 0, Giá trị RGB = 189, 246, 255
      • Time = 1, Giá trị RGB = 255, 255, 255
      1. Đặt Size thành một chuỗi số mà tăng dần kích thước với một khoảng biến thiên.
      • Time = 0, Value = 1.81, Envelope = 0.562
      • Time = 1, Value = 5.75, Envelope = 1.31
      1. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, rồi trở nên đục, sau đó lại trở thành trong suốt lần nữa trong suốt vòng đời của chúng với một khoảng biến thiên lớn.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.5, Value = 0.181, Envelope = 0.181
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt Lifetime thành 0.25, 0.35 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 250 và 350 mili giây.
      2. Đặt Rate thành 30 để phát ra 30 hạt mỗi giây.
      3. Đặt Rotation thành -45, 45 để ngẫu nhiên định hướng mỗi hạt giữa -45 và 45 độ mỗi giây.
      4. Đặt RotSpeed thành -40, 40 để ngẫu nhiên phát ra mỗi hạt giữa -45 và 40 độ mỗi giây.
      5. Đặt Speed thành 20, 35 để ngẫu nhiên phát ra mỗi hạt giữa 20 và 35 studs mỗi giây.
      6. Đặt SpreadAngle thành 50, 50 để phát ra các hạt ở một góc dọc theo trục X và Z.
      7. Đặt Acceleration thành 0, -40, 0 để mô phỏng trọng lực và kéo các hạt xuống dưới.
      8. Đặt LightEmission thành 0.5 để làm sáng các hạt.
      9. Đặt LightInfluence thành 0.1 để giảm đáng kể mức độ ánh sáng môi trường ảnh hưởng đến màu sắc của các hạt.
  5. Tạo ra các giọt nước nơi mà nước từ thác chính va chạm với hồ chứa.

    1. Nhân bản SplashDense, sau đó đổi tên nó thành SplashDroplets.

    2. Chọn SplashDroplets, sau đó trong cửa sổ Properties,

      1. Đặt Texture thành rbxassetid://17082061238 để hiển thị các hạt nhìn giống như giọt nước.
      2. Đặt Size thành một chuỗi số mà nhanh chóng tăng kích thước với một khoảng biến thiên.
      • Time = 0, Value = 1.81, Envelope = 0.562
      • Time = 1, Value = 8.69, Envelope = 1.31
      1. Đặt Transparency thành một chuỗi số mà các hạt bắt đầu như là trong suốt, nhanh chóng trở nên đục, sau đó từ từ bắt đầu trở nên trong suốt lần nữa gần giữa vòng đời của chúng.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.104, Value = 0.0625, Envelope = 0.0625
      • Time = 0.429, Value = 0.0562, Envelope = 0.0562
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt Lifetime thành 0.15, 0.6 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 150 và 600 mili giây.
      2. Đặt Rate thành 20 để phát ra 20 hạt mỗi giây.
  6. Trong cửa sổ Explorer, chọn tất cả các phần block trong thư mục Splashes, sau đó trong cửa sổ Properties, đặt Transparency thành 1 để làm cho các block trở nên vô hình.

Cấu hình nước trắng

Nước trắng hình thành khi nguồn nước trở nên bất ổn khi đạt vận tốc cao khi tiến gần đến sự rơi và va chạm với các vật thể trên đường đi. Điều này dẫn đến nước được không khí hòa trộn, giống như lưới, có màu trắng do nhiều bọt khí trong nguồn nước.

Để bắt chước quá trình này, mẫu sử dụng hai đối tượng ParticleEmitter phát ra các hạt nhìn giống như các cú splash được không khí hòa trộn nhiều nơi mà nước chảy đổ va chạm vào các viên đá tại mép của vách đá. Bộ phát không sử dụng ánh sáng tích hợp, và thay vào đó ưu tiên các sắc thái trắng và xám với các tốc độ rơi khác nhau để thể hiện lượng không khí trong nguồn nước.

Văn bản 2D đại diện cho nước aerosol mạnh mẽ khi nó va chạm với đá.
Văn bản Nước Trắng = rbxassetid://16808075391

Để tái tạo nước trắng nơi mà dòng chảy va chạm với đá ở mép của vách đá trong tệp địa điểm mẫu Waterfall Island:

  1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng nước trắng, sau đó đổi tên thư mục thành WhiteWater.

  2. Chèn một phần block vào WhiteWater, sau đó đổi tên nó thành MainDropWW.

  3. Định vị và điều chỉnh kích thước của MainDropWW cho toàn bộ bề mặt nơi mà dòng chảy bắt đầu chảy qua vách đá.

    Một góc nhìn nghiêng từ bên của vách đá với một phần block được đặt tại điểm mà dòng chảy bắt đầu chảy qua vách đá.
  4. Tạo nước trắng ít sóng hơn nơi mà dòng chảy chính va chạm với các viên đá xung quanh.

    1. Chèn một ParticleEmitter vào MainDropWW, sau đó đổi tên bộ phát thành GentleWW.

    2. Chọn GentleWW, sau đó trong cửa sổ Properties,

      1. Đặt Texture thành rbxassetid://16808075391 để hiển thị các hạt nhìn giống như các cú splash mềm mại.
      2. Đặt Color thành một chuỗi màu bắt đầu bằng màu xanh rồi chuyển sang màu trắng.
      • Time = 0, Giá trị RGB = 189, 246, 255
      • Time = 1, Giá trị RGB = 255, 255, 255
      1. Đặt Size thành một chuỗi số mà tăng dần kích thước với một khoảng biến thiên.
      • Time = 0, Value = 1.13, Envelope = 0.562
      • Time = 1, Value = 5.56, Envelope = 0.563
      1. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, trở nên đục một chút, rồi lại có những đỉnh nhỏ để trở thành trong suốt một lần nữa trong suốt vòng đời của chúng.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.143, Value = 0.462, Envelope = 0.0625
      • Time = 0.336, Value = 0.462, Envelope = 0.0562
      • Time = 0.622, Value = 0.788, Envelope = 0.0538
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt ZOffset thành 2 để dịch chuyển văn bản một chút ra khỏi vách đá.
      2. Đặt Lifetime thành 1.25, 1.5 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 1250 và 1500 mili giây.
      3. Đặt Rate thành 12 để phát ra 12 hạt mỗi giây.
      4. Đặt Rotation thành -45, 45 để ngẫu nhiên định hướng mỗi hạt giữa -45 và 45 độ mỗi giây.
      5. Đặt RotSpeed thành -40, 40 để ngẫu nhiên phát ra mỗi hạt giữa -45 và 40 độ mỗi giây.
      6. Đặt Speed thành 15, 18 để ngẫu nhiên phát ra mỗi hạt giữa 20 và 35 studs mỗi giây.
      7. Đặt SpreadAngle thành 5, 5 để phát ra các hạt ở một góc nhỏ dọc theo trục X và Z.
      8. Đặt Acceleration thành 0, -35, 0 để mô phỏng trọng lực và kéo các hạt xuống dưới.
      9. Đặt Drag thành 0.25 để làm cho các hạt mất đi tốc độ của chúng với sự suy giảm theo cấp số nhân.
      10. Đặt LightEmission thành 0.6 để làm sáng các hạt.
      11. Đặt LightInfluence thành 0.1 để giảm đáng kể mức độ ánh sáng môi trường ảnh hưởng đến màu sắc của các hạt.
  5. Tạo nước trắng sóng mạnh hơn nơi mà dòng chảy chính va chạm với các viên đá xung quanh.

    1. Nhân bản GentleWW, sau đó đổi tên thành TurbulentWW.

    2. Chọn TurbulentWW, sau đó trong cửa sổ Properties,

      1. Đặt Size thành một chuỗi số mà một cách tinh tế tăng kích thước với một khoảng biến thiên.
      • Time = 0, Value = 1.6, Envelope = 0.562
      • Time = 1, Value = 2.63, Envelope = 0.563
      1. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, trở nên đục, rồi trở lại như là trong suốt một lần nữa gần giữa vòng đời của chúng.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.156, Value = 0.0437, Envelope = 0.0437
      • Time = 0.55, Value = 0.075, Envelope = 0.0252
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt Lifetime thành 0.25, 0.5 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 250 và 500 mili giây.
      2. Đặt Rate thành 20 để phát ra 20 hạt mỗi giây.
      3. Đặt Speed thành 5, 6 để ngẫu nhiên phát ra mỗi hạt giữa 5 và 6 studs mỗi giây.
      4. Đặt Acceleration thành 0, -15, 0 để mô phỏng trọng lực và kéo các hạt xuống dưới.
  6. Trong cửa sổ Explorer, chọn tất cả các phần block trong thư mục WhiteWater, sau đó trong cửa sổ Properties, đặt Transparency thành 1 để làm cho các block trở nên vô hình.

Cấu hình bọt

Không giống như các cú splash mà phun lên khi các thác nước va chạm với hồ chứa, bọt là nước được không khí hòa trộn mà gợn ra bên ngoài từ đáy của điểm va chạm. Tương tự như các cú splash, bọt mở rộng và vỡ ra khỏi chính nó thành những giọt nước dạng màng khi nó trở thành aerosol.

Để bắt chước hiệu ứng này, mẫu sử dụng một đối tượng ParticleEmitter để phát ra các hạt nhìn như gợn sóng bọt, và nó phát ra chúng chậm rãi song song với hồ chứa. Điều này cho phép hạt mô phỏng hiệu ứng trực quan và hành vi của một sóng mao quản phá vỡ sức căng bề mặt của hồ nước bên dưới.

Văn bản 2D đại diện cho nước aerosol gợn ra từ nơi mà các thác nước va chạm với hồ chứa.
Văn bản Gợn Bọt = rbxassetid://16811365086

Để tái tạo bọt ở đáy của thác chính trong tệp địa điểm mẫu Waterfall Island:

  1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng bọt, sau đó đổi tên thư mục thành Foam.

  2. Chèn một phần block vào Foam, sau đó đổi tên nó thành MainDropFoam.

  3. Định vị và điều chỉnh kích thước của MainDropFoam cho toàn bộ bề mặt nơi mà phần dày đặc nhất của dòng thác va chạm với hồ chứa.

    Một góc nhìn nghiêng từ bên của vách đá với một phần block được đặt tại điểm mà các thác nước va chạm với hồ chứa.
  4. Chèn một ParticleEmitter vào MainDropFoam, sau đó đổi tên bộ phát thành FoamRipples.

  5. Trong cửa sổ Explorer, chọn FoamRipples, sau đó trong cửa sổ Properties,

    1. Đặt Texture thành rbxassetid://16811365086 để hiển thị các hạt nhìn giống như các gợn sóng bọt.

    2. Đặt Orientation thành VelocityPerpendicular để phát ra các hạt vuông góc với hướng di chuyển của chúng.

    3. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, nhanh chóng trở nên đục, rồi nhanh chóng trở nên trong suốt về cuối vòng đời của chúng.

      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.143, Value = 0.119, Envelope = 0.1
      • Time = 0.664, Value = 0.125, Envelope = 0.112
      • Time = 1, Value = 1, Envelope = 0
    4. Đặt Lifetime thành 0.5, 0.7 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 500 và 700 miligiây.

    5. Đặt Rate thành 5 để phát ra 5 hạt mỗi giây.

    6. Đặt Rotation thành 0, 360 để ngẫu nhiên định hướng mỗi hạt theo hình tròn từ điểm phát ra.

    7. Đặt RotSpeed thành -15, 15 để ngẫu nhiên phát ra mỗi hạt giữa -15 và 15 độ mỗi giây.

    8. Đặt Speed thành 0, .01 để ngẫu nhiên phát ra mỗi hạt giữa 0 và .01 studs mỗi giây.

    9. Đặt LightEmission thành 0.25 để làm sáng các hạt một cách tinh tế.

    10. Đặt LightInfluence thành 0 để ngăn ánh sáng môi trường ảnh hưởng đến màu sắc của các hạt.

  6. Trong Command Bar, nhập chuỗi sau để tăng kích thước của mỗi hạt từ 5 đến 20 studs trong suốt vòng đời của chúng với một khoảng biến thiên nhỏ:


    workspace.Foam.MainDropFoam.FoamRipples.Size = NumberSequence.new{NumberSequenceKeypoint.new(0,5,0), NumberSequenceKeypoint.new(1,20,5)}
  7. Trong cửa sổ Explorer, chọn tất cả các phần block trong thư mục Foam, sau đó trong cửa sổ Properties, đặt Transparency thành 1 để làm cho các block trở nên vô hình.

Cấu hình sương mù

Khi các thác nước va chạm với hồ chứa, một số nước bay hơi và ngưng tụ trong không khí mát mẻ, ẩm ướt để tạo ra sương mù. Hơi sương không phản chiếu ánh sáng theo cách mà các bề mặt cứng làm; thay vào đó, chúng phản chiếu ánh sáng theo nhiều cách bất ngờ để xuất hiện sáng trong môi trường tổng thể cho đến khi chúng hoàn toàn bay hơi.

Mẫu mô phỏng quá trình này bằng cách sử dụng hai đối tượng ParticleEmitter ở đáy của thác nước. Bộ phát hạt đầu tiên phát ra hạt một cách mãnh liệt ra khỏi điểm va chạm và vách đá, và bộ phát thứ hai phát ra các hạt từ từ bay lên trời. Cả hai bộ phát hạt đều sáng vào đầu vòng đời của chúng, và từ từ trở nên trong suốt về cuối vòng đời của chúng khi chúng bay hơi.

Tương tự như trong thế giới thực, quá trình bay hơi của sương mù cho phép một cầu vồng hình thành khi ánh sáng phản chiếu từ các giọt nước nhỏ, mà mẫu cũng mô phỏng với một đối tượng ParticleEmitter phát ra các hạt cầu vồng với một thời gian sống ngắn. Những hạt này luôn hướng về phía camera bất kể góc nhìn của người chơi từ thác nước để tạo ra ảo giác quang học của ánh sáng phản chiếu trên hơi nước.

Văn bản 2D đại diện cho sương mù.
Văn bản Sương Mù = rbxassetid://16830667309
Văn bản 2D đại diện cho cầu vồng.
Văn bản Cầu Vồng = rbxassetid://16828911033

Để tái tạo sương mù bay ra và lên từ đáy của thác chính trong tệp địa điểm mẫu Waterfall Island:

  1. Trong cửa sổ Explorer, tạo một Folder trong Workspace để chứa tất cả các đối tượng liên quan đến sương mù, sau đó đổi tên thư mục thành Mist.

  2. Tạo sương mù phát ra từ va chạm của thác với hồ chứa.

    1. Chèn một phần block vào Mist, sau đó đổi tên nó thành BaseMist.

    2. Định vị, định hướng và điều chỉnh kích thước BaseMist để quay ra xa khỏi phần dày đặc nhất của nơi mà dòng thác va chạm với hồ chứa.

      Một góc nhìn nghiêng từ bên của vách đá với một phần block được đặt tại điểm mà các thác nước va chạm với hồ chứa. Phần block hơi nghiêng nên mặt trên của nó hướng ra xa vách đá.
    3. Chèn một ParticleEmitter vào BaseMist, sau đó đổi tên bộ phát thành Mist.

    4. Chọn Mist, sau đó trong cửa sổ Properties,

      1. Đặt Texture thành rbxassetid://16830667309 để hiển thị các hạt nhìn giống như sương mù dày đặc.
      2. Đặt Color thành một chuỗi màu bắt đầu bằng màu xanh rồi chuyển sang màu trắng.
      • Time = 0, Giá trị RGB = 171, 244, 255
      • Time = 0.339, Giá trị RGB = 251, 254, 255
      • Time = 1, Giá trị RGB = 255, 255, 255
      1. Đặt Size thành một chuỗi số tăng dần kích thước.
      • Time = 0, Value = 8, Envelope = 0
      • Time = 1, Value = 10, Envelope = 0
      1. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, nhanh chóng trở nên hơi đục, rồi nhanh chóng trở nên trong suốt một lần nữa trong suốt vòng đời của chúng.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.0971, Value = 0.8, Envelope = 0.0625
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt ZOffset thành 2 để dịch chuyển văn bản một chút ra khỏi hồ chứa.
      2. Đặt Lifetime thành 0.5, 1 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 500 và 1000 mili giây.
      3. Đặt Rate thành 20 để phát ra 20 hạt mỗi giây.
      4. Đặt Rotation thành -360, 360 để ngẫu nhiên định hướng mỗi hạt theo hình tròn.
      5. Đặt RotSpeed thành -50, 50 để ngẫu nhiên phát ra mỗi hạt giữa -50 và 50 độ mỗi giây.
      6. Đặt Speed thành 35, 50 để ngẫu nhiên phát ra mỗi hạt giữa 35 và 50 studs mỗi giây.
      7. Đặt SpreadAngle thành 25, 25 để phát ra các hạt ở một góc nhỏ dọc theo trục X và Z.
      8. Đặt Acceleration thành -10, -25, -10 để mô phỏng tác động của cú splash nổ ra từ hồ chứa.
      9. Đặt Drag thành 1.5 để làm cho các hạt mất đi tốc độ với sự suy giảm theo cấp số nhân.
  3. Tạo sương mù bay lên từ hồ chứa.

    1. Nhân bản BaseMist, sau đó đổi tên thành RiseMist.
    2. Định hướng RiseMist sao cho phần đỉnh của nó phát ra các hạt hướng lên trời.
    3. Chọn bộ phát hạt con của nó, sau đó trong cửa sổ Properties,
      1. Đặt Lifetime thành 4 để thiết lập vòng đời của mỗi hạt thành 4 giây.
      2. Đặt Rate thành 3 để phát ra 3 hạt mỗi giây.
      3. Đặt RotSpeed thành -10, 10 để ngẫu nhiên phát ra mỗi hạt giữa -10 và 10 độ mỗi giây.
      4. Đặt Speed thành 25 để phát ra mỗi hạt 25 studs mỗi giây.
      5. Đặt Acceleration thành 0, 0, 0 để loại bỏ mô phỏng trước đó.
      6. Đặt Drag thành 1 để làm cho các hạt mất đi tốc độ với sự suy giảm theo cấp số nhân.
    4. Trong Command Bar, nhập chuỗi sau để tăng kích thước của mỗi hạt từ 20 đến 20 studs trong suốt vòng đời của chúng với một khoảng biến thiên nhỏ:

    workspace.Mist.RiseMist.Mist.Size = NumberSequence.new{NumberSequenceKeypoint.new(0,20,1), NumberSequenceKeypoint.new(1,25,5)}
  4. Tạo cầu vồng.

    1. Chèn một phần block vào Mist, sau đó đổi tên nó thành RainbowPart.

    2. Định vị RainbowPart một chút phía trên các phần block khác.

    3. Chèn một ParticleEmitter vào Rainbow, sau đó đổi tên bộ phát thành Rainbow.

    4. Chọn Rainbow, sau đó trong cửa sổ Properties,

      1. Đặt Texture thành rbxassetid://16828911033 để hiển thị các hạt giống như một cầu vồng nhạt.
      2. Đặt Size thành 25 để hiển thị các hạt lớn.
      3. Đặt Transparency thành một chuỗi số trong đó các hạt bắt đầu như là trong suốt, chóng trở nên đục, sau đó lại trở thành trong suốt một lần nữa trong suốt vòng đời của chúng.
      • Time = 0, Value = 1, Envelope = 0
      • Time = 0.497, Value = 0.363, Envelope = 0.05
      • Time = 1, Value = 1, Envelope = 0
      1. Đặt Lifetime thành 2, 4 để ngẫu nhiên thiết lập vòng đời của mỗi hạt giữa 200 và 400 mili giây.
      2. Đặt Rate thành 0.25 để phát ra một hạt mỗi 4 giây.
      3. Đặt Rotation thành -20 để định hướng mỗi hạt theo một góc nhẹ.
      4. Đặt Speed thành 0 để phát ra mỗi hạt 0 studs mỗi giây.
      5. Đặt Drag thành 1 để làm cho các hạt mất đi tốc độ với sự suy giảm theo cấp số nhân.
      6. Đặt LightEmission thành 1 để sử dụng pha trộn cộng để hiển thị các hạt với màu sắc phía sau chúng. Bước này cũng loại bỏ nền đen từ chính văn bản.
      7. Đặt LightInfluence thành 0 để ngăn ánh sáng môi trường ảnh hưởng đến màu sắc của các hạt.
  5. Trong cửa sổ Explorer, chọn tất cả các phần block trong thư mục Mist, sau đó trong cửa sổ Properties, đặt Transparency thành 1 để làm cho các block trở nên vô hình.

©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.