Xây dựng trạm theo cách mô-đun cho phép chúng tôi cập nhật và truyền bá các bản cập nhật nội dung một cách mượt mà và là chìa khóa để đảm bảo rằng chúng tôi không phải dành hàng giờ để cập nhật các lưới, kết cấu, bộ phận và nhiều thứ khác.
Các gói Roblox cho phép chúng tôi đạt được thiết kế mô-đun này bằng cách cho phép chúng tôi đóng gói cùng một bảng màu của Meshparts mà dễ dàng kết nối với nhau, bộ tấm cắt và các nút SurfaceAppearance mà các MeshParts có thể chia sẻ. Điều này cho phép chúng tôi thích ứng với những thay đổi trong bố cục và kích thước trong các buổi thử nghiệm chơi sớm và làm cho quá trình hoàn thiện trạm nhanh hơn nhiều.

Thiết kế linh hoạt đến nghệ thuật cuối cùng
Khi chúng tôi bắt đầu, chúng tôi không có sự hiểu biết hoàn chỉnh về những gì chúng tôi muốn có trong trạm, hoặc nó cần phải lớn như thế nào cho 50 người chơi.
Để tìm ra điều đó, chúng tôi bắt đầu bằng cách xây dựng môi trường bằng cách sử dụng Parts và đưa vào một số lưới như hình dạng vòm từ ứng dụng DCC bên ngoài của chúng tôi, chẳng hạn như Maya hoặc Blender. Với những hình dạng đơn giản này, chúng tôi điều chỉnh quy mô của bản đồ, sắp xếp các phòng và lối đi để tìm ra những sắp xếp thú vị nhất. Dù cho là cho một trò chơi hay một trải nghiệm xã hội, giai đoạn đầu này thường là giai đoạn năng động nhất.
Khi xây dựng bố cục của trạm, điều quan trọng nhất để thúc đẩy sự khám phá là cung cấp cho người dùng một mục tiêu. Trong trường hợp này, mục tiêu rõ ràng nhất là có cái nhìn gần hơn về hố đen. Tiếp theo, chúng tôi biết rằng việc cho họ một con đường thẳng đến hố đen sẽ rất nhàm chán, vì một người chơi có thể chỉ cần đi bộ từ điểm xuất phát đến cuối bản đồ. Chúng tôi đã phá vỡ con đường để người chơi không thể đến hố đen mà không đi vòng quanh và nhìn thấy những thứ khác có thể thu hút họ.
Thiết kế mô-đun cho phép chúng tôi thực hiện những thay đổi như vậy đối với môi trường mà không cần phải làm lại toàn bộ thiết kế. Chúng tôi có thể di chuyển toàn bộ phần của trạm để thử nghiệm với các ý tưởng gameplay khác nhau. Cuối cùng, những mảnh mô-đun này có thể được cập nhật bằng cách sử dụng các gói, vì vậy chúng tôi không phải xây dựng nhiều phiên bản của cùng một tài sản.




Thiết kế mô-đun của Kerr-Newman DSR-14
Trạm không gian chỉ sử dụng một vài mảnh palette mô-đun. Các mảnh palette mô-đun là tài sản có thể tái sử dụng, có nghĩa là chúng tôi không phải tạo mỗi bức tường một cách độc nhất mà thay vào đó có thể ghép lại nhiều bức tường nhỏ hơn. Điều này cho phép linh hoạt trong bố cục khi chúng tôi xây dựng.
Dưới đây là một số mẹo đã giúp chúng tôi tạo ra thiết kế mô-đun của mình:
Chọn một kích thước lưới đồng nhất — Đối với trạm, chúng tôi đã chọn kích thước lưới 16 stud để tạo ra hầu hết bộ mô-đun. Kích thước lưới bạn sử dụng là tùy ý, nhưng nên nhất quán trong toàn bộ dự án và giữa tất cả các nghệ sĩ làm việc trên dự án đó. Việc chọn một kích thước lưới ngay từ đầu dự án của bạn đảm bảo rằng mỗi mảnh vừa vặn với mảnh bên cạnh nó. Nó cũng cho phép bạn dễ dàng hoán đổi các mảnh, ví dụ như hoán đổi một phần tường cho một phần cửa.
Tất cả các đơn vị được nhập dưới dạng stud — Khi tạo lưới trong các ứng dụng DCC khác, chẳng hạn như Maya hoặc Blender, Studio không chuyển đổi mét, centimet, feet hoặc inch — nó chỉ đơn giản thay thế các đơn vị đầu vào bằng cùng một đơn vị trong stud. Ví dụ, nếu bạn đặt đơn vị của mình là mét, Studio chuyển đổi 2 mét thành 2 stud. Tốt nhất là coi các tỷ lệ đơn vị trong ứng dụng bạn chọn như các tỷ lệ stud trong Roblox. Tỷ lệ thực tế gần nhất cho một stud đơn trong Roblox là 28 centimet.
Giữ cho các mảnh đơn giản — Đừng cố gắng xây dựng mọi mảnh mà bạn nghĩ rằng bạn sẽ cần. Ý tưởng là có một vài mảnh rất đa năng và không có nhiều mảnh độc nhất. Càng nhiều mảnh bạn có, càng mất nhiều thời gian để tạo ra mỗi mảnh, và càng ảnh hưởng đến ngân sách bộ nhớ và hiệu suất tổng thể của bạn. Bạn luôn có thể thêm một mảnh khác vào bộ công cụ của mình nếu thực sự cần thiết.
Sử dụng các gói — Chuyển đổi mọi mảnh mô-đun thành một gói và cũng đưa vật liệu vào các gói trước khi bạn bắt đầu đưa chúng vào trò chơi của mình. Điều này cho phép bạn dễ dàng đẩy các bản cập nhật đến tất cả các phiên bản. Chúng tôi sẽ đi sâu vào các gói một chút sau.
Các ảnh chụp màn hình sau đây cho bạn thấy nhiều cách mà chúng tôi đã sử dụng thiết kế mô-đun để xây dựng các phần của trạm.




Tạo các tấm cắt
Kết cấu 1:1 là cách đi của tương lai, nhưng chúng trở nên tốn kém về ngân sách bộ nhớ và thời gian để tạo ra. Đối với trạm không gian, 90% các yếu tố kiến trúc sử dụng một vài bộ tấm cắt có thể hoán đổi, là một bộ bản đồ kết cấu được bố trí theo chiều dọc hoặc chiều ngang. Mỗi hàng hoặc cột của tấm có một cái nhìn độc đáo, cho bạn nhiều lựa chọn khác nhau về các xử lý bề mặt khi mở rộng một mô hình, tất cả trong khi sử dụng một tấm hình ảnh.
Dưới đây là một số mẹo để tạo ra các tấm cắt:
Bắt đầu với một danh sách các loại đối tượng và vật liệu bạn cần — Các tấm cắt có thể bao gồm một sự biến đổi lớn về các loại vật liệu, chẳng hạn như gỗ, kim loại, cao su và nhiều hơn nữa. Trước khi bạn bắt đầu mô hình hóa đối tượng đầu tiên của mình, hãy tạo một mẫu tấm cắt. Đây là điểm khởi đầu cho tất cả các bộ tấm cắt khác của bạn và nó cung cấp cho bạn một điểm khởi đầu nhanh chóng để mở rộng các mô hình của bạn. Những tấm cắt này sống trong nút SurfaceAppearance, mà chúng tôi sẽ đề cập sau.
Bao gồm nhiều xử lý bề mặt trong một tấm — Điều này cho phép bạn giữ nhiều lưới lại với nhau, vì vậy bạn có thể áp dụng các xử lý mới mà không cần phải phá vỡ các lưới của bạn thành nhiều lưới. Điều này cải thiện hiệu suất thời gian chạy bằng cách giảm số lượng gọi vẽ đối tượng và vật liệu.
Tạo một mẫu tấm cắt — Một mẫu đảm bảo rằng bạn có thể hoán đổi bất kỳ bộ bản đồ nào cho bộ khác. Ví dụ, bạn có thể hoán đổi một bộ kim loại sạch với một bộ kim loại gỉ.
Dưới đây là cách chúng tôi tạo ra các tấm cắt cho trạm:
Chúng tôi đã tạo ra một phác thảo thô về những gì tấm nên trông như thế nào:

Trong Photoshop, chúng tôi đã tạo một mô phỏng để có ý tưởng nhanh chóng về những gì mỗi phần tấm của tấm sẽ trông như thế nào.

Chúng tôi đã sử dụng Substance, nhưng bạn có thể sử dụng bất kỳ ứng dụng nào phù hợp với bạn để tạo ra các bản đồ cuối cùng. Đây là bộ bản đồ tấm cắt cuối cùng được tạo ra trong Substance. Tất cả bốn bản đồ hoạt động cùng nhau trong một nút SurfaceAppearance để tạo ra một vật liệu Rendered Dựa trên Vật lý (PBR).




Dưới đây là một số render cuối cùng của tấm cắt bên trong Substance Designer:


Và đây là các ví dụ về cùng một tấm cắt được sử dụng trên một loạt các đối tượng lớn:

Nếu bạn muốn tìm hiểu thêm về UV Mapping Tấm Cắt, chỉ cần tìm kiếm chủ đề này trên web; có nhiều hướng dẫn tuyệt vời ở đó.
Áp dụng các bề mặt xuất hiện
SurfaceAppearance cho phép bạn chỉ định các đầu vào kết cấu mới cho hệ thống Render Dựa trên Vật lý của chúng tôi cho MeshParts và cho phép bạn ghi đè hình thức của một lưới với các tùy chọn đồ họa nâng cao, bao gồm ColorMap, MetalnessMap, RoughnessMap và NormalMap. Nó cũng sử dụng hệ thống cubemap động mới mà Roblox sử dụng cho phản chiếu trong các vật liệu, chẳng hạn như chrome. Ví dụ, đây là hình ảnh bên cạnh của một lưới với SurfaceAppearance được áp dụng bên cạnh một lưới không có nó:

Khi sử dụng bề mặt xuất hiện, hãy giữ những mẹo sau trong tâm trí:
- Nếu các bản đồ tấm của bạn chứa thông tin alpha cho độ trong suốt, hãy thay đổi AlphaMode từ Overlay thành Transparency.
- Bề mặt xuất hiện không hoạt động với Parts vì chúng không có thông tin UV cần thiết để áp dụng các bản đồ. Parts sử dụng các phép chiếu căn chỉnh thế giới thay cho thông tin UV. MeshParts thường được tạo ra trong một ứng dụng khác như Maya, 3ds Max hoặc Blender và chứa thông tin mở rộng UV.
Để áp dụng SurfaceAppearance:
Nhấp vào ở cuối tên MeshPart hoặc thư mục trong Explorer và tìm kiếm SurfaceAppearance. Thêm một cái sẽ ghi đè bất kỳ BrickColor, Color, Material và TextureID nào mà bạn có thể đã áp dụng trước đó.
Đổi tên nút SurfaceAppearance thành một cái gì đó độc đáo và thêm hậu tố _SA để dễ dàng tìm kiếm. Trong ví dụ này, chúng tôi đã sử dụng Metal_Trim_A_SA.
Nhập các bản đồ tấm cắt, sao chép các ID từ cửa sổ Asset Manager, và dán chúng vào các khe thích hợp trong cửa sổ Properties. Đây là cách mà nút Metal_Trim_A_SA trông như thế nào với tất cả các ID bản đồ được chèn vào và áp dụng cho cửa.

Tăng hiệu quả với các gói
Các gói cho phép bạn tạo các phiên bản đối tượng trong toàn bộ trò chơi Roblox của bạn, vì vậy các bản cập nhật bạn thực hiện cho gói sẽ được công bố đến tất cả các phiên bản của gói đó. Chúng tôi đã sử dụng các gói cho hầu hết mọi đối tượng mà chúng tôi đưa vào trạm, vì vậy chúng tôi không phải tìm kiếm từng vị trí nếu chúng tôi cần thực hiện các điều chỉnh. Ví dụ, chúng tôi đã sử dụng hơn 1.000 phiên bản tấm tường của một gói và có thể công bố các bản cập nhật cho chúng ngay lập tức bằng cách sửa đổi gói.
Hãy làm theo những mẹo này khi sử dụng các gói:
Bật tính năng tự động cập nhật trong PackageLink. Tất cả các sửa đổi sẽ được áp dụng cho tất cả các sử dụng của gói khi điều này được bật, giúp bạn tiết kiệm bước phải sử dụng tính năng "cập nhật tất cả".

Bạn có thể sử dụng các gói cho các đối tượng SurfaceAppearance để tạo ra một "thư viện vật liệu." Điều này cho phép bạn sửa đổi bitmap trong một đối tượng SurfaceAppearance và công bố chúng đến mọi đối tượng sử dụng nó. Ảnh chụp màn hình sau đây cho thấy các vật liệu chính được sử dụng trong toàn bộ bản demo. Nếu chúng tôi cần sửa đổi các bản đồ, chúng tôi chỉ cần cập nhật vật liệu chính và công bố lại gói.
