Môдель dữ liệu

*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ỗi nơi được đại diện bởi một mô hình dữ liệu, một cấu trúc của các đối tượng mô tả mọi thứ về địa điểmđó.Mô hình dữ liệu bao gồm tất cả các đối tượng tạo nên thế giới 3D, như các bộ phận, địa hình, ánh sáng và các yếu tố môi trường khác.Nó cũng bao gồm các đối tượng có thể kiểm soát hành vi chạy thời gian, chẳng hạn như các tập lệnh thay đổi thuộc tính, gọi phương pháp và chức năng, và đáp ứng các sự kiện kích hoạt hành vi năng động và tương tác.

Cơ chế Roblox sử dụng mô hình dữ liệu làm nguồn sự thật cho tình trạng của một địa điểm, vì vậy nó có thể mô phỏng và hiển thị nó trên các thiết bị khách.Để biết thêm thông tin về cách Roblox Engine giải thích mô hình dữ liệu, xem Thời gian chạy khách-máy chủ.

Vật phẩm

Bạn đặt và tổ chức các đối tượng trong mô hình dữ liệu để mô tả một nơi trong Roblox.Mỗi đối tượng trong Roblox đều thừa hưởng từ lớp Instance chung, định nghĩa các thuộc tính, phương pháp và sự kiện chung cho tất cả các đối tượng.Các đối tượng cũng xác định các đặc điểm riêng của chúng dựa trên chức năng mà đối tượng cung cấp.Có nhiều danh mục của các đối tượng với nhiều loại sử dụng khác nhau, nhưng bạn thường làm việc với BasePartLuaSourceContainer đối tượng, thường được gọi là các bộ phận và kịch bản.

Đối với danh sách toàn diện tất cả các tính năng của Động cơ Roblox, xem tài liệu tham khảo reference documentation.

Khối xây dựng 3D

BasePart là lớp trung tâm cho các khối xây dựng 3D thực tế được mô phỏng trong thế giới.Nó xác định các tính chất và phương thức chung cho tất cả các đối tượng vật lý với các tính chất như vị trí, kích thước và hướng.

Vật phẩmMô tả
PartMột phần thô sơ có thể nhận được hình dạng của một khối, quả bóng, xi lanh, góc cạnh hoặc góc cạnh.
MeshPartMột lưới nhập được nhập từ phần mềm mô hình 3D như Maya hoặc Blender.
TrussPartMột dầm xà nhà mà các nhân vật có thể leo như một cái thang.

Trong khi bạn có thể lý thuyết tạo ra một trải nghiệm Roblox hoàn toàn chức năng bằng cách sử dụng chỉ các bộ phận đơn giản, bạn có thể sẽ nhập khối mesh và kết hợp các bộ phận thô thành các đối tượng và cấu trúc phức tạp hơn thông qua mô hình solid .

Các kịch bản

Bạn có thể thêm tương tác và hành vi vào thế giới 3D của địa điểmcủa bạn và xác định logic bằng cách sử dụng các tập lệnh.Bạn viết các tập lệnh trong ngôn ngữ lập trình Luau để làm những việc như di chuyển các bộ phận, gọi các tập lệnh khác và đáp ứng với các sự kiện.Bởi vì Roblox hoạt động trong mô hình client-server, bạn có thể chạy các kịch bản trên máy chủ, khách hàng hoặc có chúng giao tiếp qua giới hạn mạng.

  • Một đối tượng Script đại diện cho một kịch bản chỉ có thể chạy trên máy chủ.
  • Một đối tượng LocalScript đại diện cho một kịch bản chỉ có thể chạy trên máy khách.
  • Một đối tượng ModuleScript đại diện cho một kịch bản có thể tái sử dụng mà bạn có thể require() từ cả kịch bản máy chủ và khách hàng.

Để các kịch bản hoạt động đúng cách, bạn phải đặt chúng trong các thùng chứa chính xác trong mô hình dữ liệu.Để biết thêm thông tin, xem các phần Máy chủKhách hàng.

Tổ chức vật phẩm

Trong khi bạn có rất nhiều sự linh hoạt trong cách bạn tổ chức mô hình dữ liệu của mình, Roblox Engine mong đợi một số đối tượng nhất định ở trong một số dịch vụ băng chuyền nhất định mà chúng là các đối tượng có các hành vi cụ thể và có thể ảnh hưởng đến các hành vi của các đối tượng chúng chứa.Các danh mục chính của dịch vụ thùng bao gồm:

  • Không gian làm việc - Workspace lưu tất cả các đối tượng được hiển thị trong thế giới 3D.
  • Môi trường - Các thùng chứa như LightingSoundService chứa các đối tượng cho cài đặt môi trường và các yếu tố.
  • Replication - Thùng chứa cho nội dung và logic được sao lưu giữa máy chủ và khách hàng, như ReplicatedStorageReplicatedFirst .
  • Máy chủ - Thùng chứa cho nội dung và logic chỉ bên máy chủ, như ServerScriptServiceServerStorage .
  • Khách hàng - Thùng chứa cho nội dung và logic bên khách, như StarterPlayerStarterGui .
  • Trò chuyện - Thùng chứa cho các đối tượng bật chức năng trò chuyện, chẳng hạn như VoiceChatServiceTextChatService .

Ngoài ra, bạn có thể tổ chức thêm các đối tượng của mình với các đối tượng sau:

  • Thư mục - A Folder là cho mục đích tổ chức và không xác định bất kỳ hành vi nào.Ví dụ, bạn có thể sử dụng các thư mục để nhóm các đối tượng tương tự như một bộ các tập lệnh trong kho lưu trữ máy chủ.
  • Mô hình - A Model chủ yếu dành cho sắp xếp hình học của các bộ phận, chẳng hạn như sắp xếp cùng một bộ bàn bao gồm ghế, bàn và một ngọn đèn.Để tổ chức các bộ phức tạp hơn, bạn thậm chí có thể lồng các mô hình trong các mô hình.

Không gian làm việc

Workspace chứa tất cả các đối tượng tạo nên thế giới 3D của một địa điểm.Bạn có thể thêm các đối tượng vào không gian làm việc để tùy chỉnh thế giới 3D của bạn, chẳng hạn như các phần cơ bản, các phần khối lưới và các mô hình. Khách hàng hiển thị mọi thứ xuất hiện trong thùng chứa này và không có gì ngoài nó, vì vậy bạn có thể kiểm soát những gì người dùng nhìn thấy và tương tác trong địa điểmcủa bạn.Mặc dù không thực sự được hiển thị, bạn cũng có thể thêm các kịch bản được gán cho các phần và mô hình mà chúng liên quan.Mặc định, không gian làm việc được điền trước bằng một đối tượng TerrainCamera .

Máy ảnh

Camera xác định cách khách hàng xem thế giới 3D.Mặc định, có một máy ảnh trong không gian làm việc, nhưng bạn có thể thêm nhiều đối tượng máy ảnh để tạo các cảnh nhìn và góc nhìn khác nhau.Mỗi khách hàng nhận các cài đặt này và tạo ra chính nhìn camera của riêng mình mà máy chủ không thể trực tiếp chỉnh sửa.

Ví dụ, bạn có thể thiết lập một máy ảnh để theo dõi chuyển động của người dùng hoặc đứng yên tại một vị trí cụ thể.Bạn cũng có thể điều chỉnh góc nhìn, khoảng cách và góc độ để tạo các hiệu ứng hình ảnh khác nhau về cách người dùng xem thế giới 3D của bạn.

Để biết thêm thông tin, xem Tùy chỉnh máy ảnh .

Địa hình

Terrain cho phép bạn tạo cảnh quan cho địa điểmcủa bạn.Bạn có thể áp dụng một vật liệu lên địa hình để mô phỏng môi trường tự nhiên mong muốn, chẳng hạn như cỏ, nước, cát hoặc một vật liệu tùy chỉnh.Mặc dù bạn chỉ có thể có một đối tượng địa hình cho thế giới 3D của bạn và áp dụng một vật liệu cho địa hình đó, bạn có thể sử dụng Trình chỉnh sửa địa hình để chỉnh sửa các khu vực của địa hình của bạn.

Để biết thêm thông tin, xem Địa hình môi trường.

Môi trường

Hiệu ứng sáng và âm thanh có thể làm cho thế giới 3D của bạn trở nên sống động và thực tế hơn nhiều.Mặc dù không cần thiết phải thêm các hiệu ứng này vào địa điểmcủa bạn, chúng có thể làm cho nó trở nên hấp dẫn hơn về mặt thị giác và âm thanh.

Ánh sáng

Lighting chứa các đối tượng kiểm soát cài đặt chiếu sáng toàn cầu của địa điểmcủa bạn, chẳng hạn như Atmosphere để mô phỏng các hiệu ứng khí quyển hoặc Sky để thay đổi mặt trời, mặt trăng và sao trong môi trường của bạn.

Để biết thêm thông tin, xem Ánh sáng.

Âm thanh

SoundService có thể kiểm soát cài đặt âm lượng và phát lại của đối tượng con Sound để phát nhạc nền hoặc hiệu ứng âm thanh môi trường.

Để biết thêm thông tin, xem Âm thanh.

Bản sao

Replication là quá trình máy chủ đồng bộ trạng thái của nơi của bạn với tất cả các khách hàng kết nối.Cơ chế Roblox thông minh và tự động sao lưu dữ liệu, vật lý và tin nhắn trò chuyện giữa máy chủ và khách hàng cho nhiều trường hợp, nhưng bạn cũng có thể xác định các đối tượng cụ thể để sao lưu bằng cách đặt chúng vào các thùng chứa cụ thể.

Bắt chước đầu tiên

ReplicatedFirst chứa các đối tượng bạn muốn sao chép cho một khách hàng khi nó tham gia địa điểmcủa bạn.Nó thường chứa các đối tượng cần thiết để khởi tạo một người chơi, chẳng hạn như đối tượng bên khách LocalScript đối tượng và các đối tượng liên quan đến các tập lệnh.Tất cả nội dung trong thùng chứa này được sao chép từ máy chủ sang khách hàng chỉ một lần.

Lưu trữ lặp lại

ReplicatedStorage chứa các đối tượng có sẵn cho cả máy chủ và khách hàng kết nối.Bất kỳ thay đổi xảy ra trên máy khách sẽ tồn tại nhưng sẽ không được sao lưu lại máy chủ.Máy chủ có thể ghi đè thay đổi trên khách hàng để duy trì sự nhất quán.Thùng chứa này thường được sử dụng cho các đối tượng ModuleScript cần được chia sẻ và truy cập bởi cả Script (bên máy chủ) và LocalScript (bên khách hàng) đối tượng.Ngoài ra, bạn có thể sử dụng thùng chứa này để sao lưu bất kỳ đối tượng nào không cần phải tồn tại trong thế giới 3D cho đến khi cần thiết, chẳng hạn như một ParticleEmitter để nhân bản và nuôi dưỡng tất cả các mô hình nhân vật nhập vào.

Để biết thêm thông tin về cách sao lưu hoạt động, xem Chạy thời gian thực máy khách-máy chủ .

Máy chủ

Mô hình dữ liệu xác định các thùng chứa dành riêng cho các đối tượng bên máy chủ chỉ không bao giờ được sao chép cho khách hàng.Điều này cho phép máy chủ ảnh hưởng đến hành vi và trạng thái của khách hàng mà không tiết lộ các đối tượng và logic của máy chủ cho khách hàng.

Dịch vụ ServerScript

ServerScriptService chứa Script đối tượng, ModuleScript đối tượng cần thiết bởi các kịch bản máy chủ, và các đối tượng liên quan đến lập trình khác chỉ dành cho sử dụng máy chủ.Nếu các kịch bản của bạn yêu cầu các đối tượng không phải là kịch bản khác, bạn phải đặt chúng trong ServerStorage .Các kịch bản trong thùng chứa này không bao giờ được sao chép cho khách hàng, cho phép bạn có được logic bên máy chủ an toàn.

Kho lưu trữ máy chủ

ServerStorage chứa các đối tượng chỉ dành cho sử dụng máy chủ.Bạn có thể sử dụng thùng chứa này để lưu các đối tượng bạn muốn sao chép và cha cho không gian làm việc hoặc các thùng chứa khác tại thời gian chạy.Ví dụ, bạn có thể lưu các đối tượng lớn như bản đồ trong thùng chứa này cho đến khi chúng được cần và di chuyển chúng vào không gian làm việc chỉ khi cần Điều này cho phép bạn giảm lưu lượng mạng khách hàng khi tham gia ban đầu.

Khách hàng

Các dịch vụ thùng chứa khách hàng được dành cho các đối tượng được sao lưu cho mọi khách hàng kết nối.Danh mục các thùng chứa này sao lại cho mọi khách hàng kết nối và thường chứa các đối tượng 3D và các đối tượng liên quan LocalScript.Tất cả các đối tượng bạn lưu trong các thùng chứa này không bền vững qua các phiên và được đặt lại mỗi khi khách hàng tham gia lại.Bạn có thể đặt các đối tượng vào các thùng chứa này như giao diện người dùng của người chơi, các kịch bản bên khách và các đối tượng khác chỉ liên quan đến khách hàng.

Khi một khách hàng kết nối với một máy chủ, dịch vụ thùng chứa Players lắng nghe người dùng tham gia nơi của bạn và tạo một đối tượng Player cho mỗi khách hàng.Máy chủ sao chép các đối tượng từ các thùng chứa khách hàng trong mô hình dữ liệu chỉnh sửa đến vị trí tương ứng trong mô hình dữ liệu thời gian thực bên trong đối tượng Players.Bảng sau đây mô tả thùng chứa ban đầu nó nằm trong thùng chứa và thùng chứa kết quả nó được sao chép vào khách hàng:

Sửa mô hình dữ liệuMô hình dữ liệu thời gian thựcGhi chú
StarterPackNgười chơi.BackpackCác kịch bản thiết lập kho hàng của người chơi và thường chứa Tool đối tượng nhưng thường cũng chứa các kịch bản địa phương.
StarterGuiNgười chơi.PlayerGuiCác kịch bản có thể quản lý GUI địa phương của người chơi.Khi một người chơi hồi sinh, nội dung của PlayerGui được rỗng.Máy chủ sao chép các đối tượng bên trong StarterGui vào PlayerGui.
StarterPlayerScriptsTập lệnh người chơi.PlayerScriptsTập lệnh mục đích chung cho khách hàng.Ví dụ, nếu bạn muốn tạo hiệu ứng đặc biệt trên khách hàng khi đáp ứng một số điều kiện nhất định, bạn có thể đặt một kịch bản địa phương vào thùng chứa này để làm điều đó.Máy chủ không thể truy cập vào thùng chứa này.
StarterCharacterScriptsNgười chơi.Nhân vậtCác kịch bản được sao chép cho khách hàng khi chúng xuất hiện. Các kịch bản này không tồn tại khi người chơi hồi sinh.
ReplicatedFirstNội dung của thùng chứa này được sao lưu cho tất cả các khách hàng (nhưng không quay lại máy chủ) trước tiên, trước khi bất cứ điều gì khác.

Trò chuyện

Dịch vụ trò chuyện văn bản

TextChatService đại diện cho dịch vụ xử lý các nhiệm vụ trò chuyện văn bản khác nhau trong kinh nghiệm, chẳng hạn như quản lý kênh, trang trí tin nhắn, lọc văn bản, tạo lệnh và phát triển giao diện trò chuyện tùy chỉnh.

Để biết thêm thông tin, xem Hệ thống trò chuyện văn bản trong trải nghiệm.

Dịch vụ trò chuyện giọng nói

VoiceChatService đại diện cho tính năng trò chuyện giọng nói dựa trên cảm biến gần gũi mô phỏng cuộc trò chuyện thực tế dựa trên việc bạn ở gần người dùng khác như thế nào.Bạn có thể sử dụng dịch vụ này để bật/tắt chức năng.

Để biết thêm thông tin, xem Trò chuyện giọng nói.

Thư mục và mô hình

Có hai phương pháp chính để phân nhóm các đối tượng trong mô hình dữ liệu: thư mụcmô hình .Cả hai là thùng chứa cho các đối tượng, nhưng chúng có mục đích khác nhau.

  • Thư mục tốt nhất để lưu trữ các phần của một môi trường, chẳng hạn như sảnh hoặc một sân chiến đấu.
  • Mô hình được sử dụng cho các bộ đối tượng, chẳng hạn như bộ bàn bao gồm ghế, bàn và một ngọn đèn.Để tổ chức các bộ phức tạp hơn, xếp chồng mô hình bên trong mô hình.

Bạn nên luôn đặt tên cho các đối tượng mô tả. Điều này làm cho dễ dàng tìm và chỉnh sửa các đối tượng sau này nếu cần thiết.

The Explorer window with a demonstration of a folder organization structure.
Các đối tượng được tổ chức thành Folders >
The Explorer window with a demonstration of a model organization structure in several services.
Nhiều mô hình "bản đồ" để thay đổi giữa WorkspaceServerStorage