Danh sách sau đây là một danh sách các thẻ phổ biến trong MicroProfiler, được phân loại theo danh thể loại.Hiểu những thẻ này có thể giúp bạn xác định mã có vấn đề trong trải nghiệm của mình.Các bảng chứa nhãn thẻ, mô tả và lời khuyên về hiệu suất để cải thiện hiệu suất và tối ưu hóa trải nghiệm của bạn.
Ngủ
Khi các luồng không thực hiện công việc chủ động, chúng sẽ bước vào trạng thái ngủ, với các thẻ để chỉ ra thời gian luồng ngủ.Vào bất kỳ thời điểm nào, rất phổ biến đối với hầu hết các luồng công việc để ở trạng thái ngủ.
AI/điều hướng
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
rasterizeTile Ngôn ngữ Tiếng Anh | Các ô điều hướng cập nhật cần thiết cho yêu cầu tìm đường, thường được theo sau bởi computePath cần những ô đó phải được cập nhật.Theo dõi NavigationJob/preprocess trên chủ đề chính. | Giảm số lượng lỗi không tìm được đường, vì điều này gây ra việc các con đường cần phải tính toán lại. Điều này xảy ra do các bộ phận không thể di chuyển. |
computePath (Nhận dạng) Tính toán đường đi | Tính toán đường đi, thường sau rasterizeTile . | Giảm số và phạm vi thế giới của các cuộc gọi ComputePath .Thử sử dụng lại các con đường cho nhiều đại lý nếu chúng được mong đợi bắt đầu/kết thúc từ các vị trí tương tự khá lớn. |
preprocess/getPrimitivesOverlapping Định nghĩa | Thu thập địa hình thế giới cho mỗi ô tìm đường và lên lịch các nhiệm vụ rasterization để được thực hiện bởi tiến trình tìm đường. | Giảm số lượng phần. |
Hoạt hình
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Mô phỏng/trò chơi đã bước qua | Xử lý các đối tượng cụ thể của trò chơi như Humanoids , Animations và cuộc gọi trả lời nhịp tim | |
Mô phỏng/trò chơiStepped/StepLegacy | Humanoid thay đổi trạng thái và movement.Called bướcHumanoid trên máy chủ bây giờ (phiên bản song song) | Vô hiệu hóa hoặc giảm Humanoid trạng thái trên NPC nếu bạn có chúng.Tình trạng thang là quan trọng nhất để vô hiệu hóa.Giảm lượt gọi trở lại thay đổi trạng thái như Humanoid.Died hoặc Humanoid.Running |
Mô phỏng/trò chơiStepped/stepAnimation | Animators sẽ tiến lên trong các hoạt hình đang chơi hiện tại. | Giảm số lượng Animators hoặc khớp hoạt hình để giảm tải công việc của bước này.Giảm số lượng cuộc gọi trả lại cho sự kiện hoạt hình như AnimationTrack.KeyframeReached hoặc AnimationTrack.Ended |
Mô phỏng/trò chơiStepped/RunService.Stepped | Chạy các chức năng kết nối với sự kiện RunService.Stepped . | Giảm lượng hoặc tải công việc của các chức năng kết nối với sự kiện này.Xem xét việc trì hoãn hoặc thay thế các tính toán đắt tiền.Xem xét việc phân tán tính toán trên nhiều khung. |
Âm thanh
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Âm thanh | Xử lý âm thanh: vị trí, hiệu ứng, âm lượng, v.v. | |
Thẻ Nhà phát triển_Âm thanh | Âm thanh trong bộ nhớ: thường là những âm thanh ngắn có kích thước đủ để vào bộ nhớ. Thông thường là fx một phát ngắn, không phải âm nhạc dài hình thức. | Sử dụng ít âm thanh ngắn hơn. |
Thẻ nhà phát triển_StreamingSounds | stream/StreamingSounds: đây là những âm thanh lớn hơn được phát từ đĩa. Thường là các tập tin âm nhạc dài hơn. | Sử dụng ít âm thanh dài hơn. |
Kết nối
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Nhận gói NetPacket | Nhận các gói mạng. Nếu nhiều đối tượng hoặc sự kiện đang được sao chép, bước này mất lâu hơn. | Sao lưu ít đối tượng hoặc sự kiện hơn. |
Replicator/Package quá trình | Xử lý nội dung của gói mạng, chẳng hạn như chuyển động, lời kêu gọi sự kiện và thay đổi tính chất. | Giảm số hoặc kích thước của các đối tượng đang được sao lưu, hoặc thực hiện điều này trong các bước tăng dần.Có thể tăng nếu kích thước bản đồ tăng, bởi vì bản đồ lớn hơn có xu hướng có nhiều hoạt động tổng thể hơn. |
Phân bổ băng thông và chạy các máy gửi/phát vật lý và các máy gửi chạm | Gửi dữ liệu về hoạt động trong trải nghiệm. | Giảm lượng đối tượng di chuyển và/hoặc chạm. Xem các phần tiếp theo. |
Gán băng thông và chạy gửi người gửi/phát StreamJob | Gửi các khu vực cụ thể tương ứng cho các khách hàng cụ thể trong tính năng "Phát trực tiếp". | Giảm bán kính phát trực tiếp tối thiểu và mục tiêu. |
Phân bổ băng thông và chạy người gửi/người gửi dữ liệu phát | Gửi thay đổi tính năng, sự kiện từ xa, thay đổi trạng thái Humanoid, khởi động/dừng hoạt hình. | Giảm số lượng các thay đổi được sao lưu vào mô hình dữ liệu |
Nhân bản gửi Cluster | Gửi dữ liệu địa hình cho khách hàng. | Giảm số lượng hoặc kích thước thay đổi địa hình. |
Công việc Mega Hoàn thiện mô hình | Chỉ máy chủ: hoàn thiện là một khái niệm nội bộ. Khi các mô hình được gửi hoàn toàn, sự kiện hoàn thiện mô hình được khoản | Thêm hoặc xóa ít ví dụ hơn. |
Gói Không Trùng Lặp | Xử lý gói mạng cấp thấp. Chuẩn bị cho Replicator ProcessPackets. | Gửi ít cập nhật hơn. |
Hiển thị
Nhãn | Mô tả | Ghi chú về hiệu suất |
---|---|---|
Chuẩn bị | Thông tin được thu thập từ chủ đề chính và cập nhật các cấu trúc dữ liệu khác nhau được sử dụng để hiển thị.Điều này chặn các luồng mô phỏng, vì vậy nó nên nhỏ nhất có thể. | Xem Nhãn chuẩn bị bên dưới. |
Chuẩn bị/Pass3dAdorn | Hiển thị các vật phẩm khác nhau, chẳng hạn như nhãn văn bản trên các đối tượng. Bước này có thể bao gồm phát bắn tia để xác định xem các đối tượng như vậy có hiển thị hay không. | Giảm số lượng vật phẩm có thể nhìn thấy, chẳng hạn như BillboardGuis , Humanoid nhãn tên/sức khỏe, v.v. |
Chuẩn bị/Pass2d | Sẵn sàng hiển thị giao diện người dùng 2D (cả người chơi và giao diện người dùng Roblox). | Giảm số lượng hoặc phức tạp của các thành phần UI. |
Chuẩn bị/Cập nhậtChuẩn bị/cập nhậtPhần không hợp lệ | Cập nhật các phần có một số thuộc tính thay đổi hoặc được thêm vào. | Giảm số lượng thay đổi chỉ số trên thế giới. Nếu một kịch bản cập nhật một bộ lớn các chỉ số đối tượng, phá vỡ nó ra trên các khung. |
Chuẩn bị/Cập nhậtChuẩn bị/cập nhậtInvalidatedFastClusters | Chuẩn bị hình học, thường là "FastClusters" được sử dụng để hiển thị Humanoids . Các điểm đánh dấu cấp thấp chỉ định số lượng các bộ phận, cạnh và kích thước của các cạnh. | Giảm sử dụng 'Humanoids' dưới các đối tượng không phải Humanoids .Nó không nên được sử dụng để rút ngắn cuộc gọi kéo vì FastClusters tiêu thụ nhiều bộ nhớ hơn. |
Chuẩn bị/Cập nhậtChuẩn bị/cập nhậtDynamicParts | Cập nhật vị trí cho Humanoids , xe và các trường hợp di chuyển khác để hiển thị. | Giảm số hoặc phức tạp của việc di chuyển Humanoids hoặc xe có thể nhìn thấy.Kết hợp các phần của cùng một vật liệu và màu sắc thành một liên minh hoặc MeshPart có thể giúp ích trong việc này. |
Chuẩn bị/Cập nhậtChuẩn bị/cập nhậtCụm được triển khai | Chuẩn bị hình học tĩnh sử dụng rendering được khởi tạo (phần và phần khối lưới). Nhãn "Cụm" và "Các thực thể" cho thấy số được cập nhật. | Sử dụng ít lưới và biến thể chung hơn. Bạn cũng có thể tạo cụm bằng cách sử dụng các đối tượng có các cấu trúc tương tự - kích cỡ, màu sắc, chất liệu. |
Thực hiện | Khi các lệnh hiển thị thực được tạo và phát hành. | Xem nhãn thực hiện ở dưới. |
Thực hiện/điền vào GuiVertices | Hiển thị UI. Lấp đầy bộ nhớ với các điểm UI cho mục trang trí. Thẻ "Gui count" cho thấy số lượng các thành phần trong danh sách renderer. | Nếu chi phí cao, giảm lượng UI được cập nhật bằng cách vô hiệu hóa nó khi nó không được sử dụng bằng cách đảm bảo nó được ẩn đúng cách. |
Thực hiện/Cảnh/quiryFrustumOrdered | Áp dụng việc thu thập frustum để các đối tượng không thể nhìn thấy không được hiển thị. | Nếu có chi phí cao có nghĩa là có rất nhiều yếu tố.Có lẽ sử dụng một số lưới lớn hơn nơi một lưới duy nhất có nhiều chi tiết hơn so với nhiều mảnh nhỏ. |
Thực hiện/Cảnh/chiếu sáng thực hiện | Tính toán ánh sáng gần camera. | Thay đổi số lượng nguồn sáng hoặc di chuyển máy ảnh ít hơn để giảm thời gian cần để tính toán lại ánh sáng. |
Thực hiện/Cảnh/chiếu sáng thực hiện/LightGridCPU | Cập nhật ánh sáng voxel, được sử dụng trong Voxel và ShadowMap chế độ và tại các cấp chất lượng dưới 4 trong Future chế độ. | Nếu việc cập nhật sự chiếm dụng khối mất quá nhiều thời gian, hãy xem xét sử dụng geometry giải quyết thấp hơn, giảm số lượng các bộ phận hoặc neo các bộ phận.Nếu các thẻ con khác mất quá nhiều thời gian, hãy xem xét giảm số ánh sáng và sử dụng công trình hình học không bóng tối cho các đối tượng di chuyển và không hợp lệ về sự chiếm dụng. |
Thực hiện/Cảnh/chiếu sáng thực hiện/Bản đồ bóng tối | Cập nhật bản đồ bóng tối. Không thực hiện ở cấp chất lượng thấp hơn 4 hoặc khi Lighting.Technology được đặt thành Voxel . | Nếu ánh sáng được đặt thành Future , hạ nó xuống ShadowMap hoặc giảm số lượng ánh sáng.Bạn cũng có thể sử dụng Light.Shadows và BasePart.CastShadows để vô hiệu hóa phát bóng bóng trên các thực thể ít quan trọng hơn.Xem Nâng cao hiệu suất. |
Thực hiện/Cảnh/Phát sáng, Chỉnh màu, MSAA, SSAO, và SSAOApply | Xử lý hình ảnh sau khi in. | Giảm số lượng hiệu ứng xử lý hình ảnh. Thông thường điều này không quan trọng. |
Thực hiện/Cảnh/UI | Hiển thị UI. Trong Id_Screen, có một nhãn với số lượng lô, vật liệu và tam giác được sử dụng. | Giảm số lượng các thành phần UI hiển thị. Sử dụng CanvasGroups có thể giúp tại chi phí tăng sử dụng bộ nhớ. |
Thực hiện/Cảnh/Cập nhật View/cập nhật các hạt, cập nhật giới hạn các hạt | Cập nhật vị trí và giới hạn của hạt. | Giảm số ParticleEmitters , tỷ lệ phát thải, thời gian sống, etc. Giới hạn sự di chuyển của các nhà phát thải. |
Id_Opaque | Các bộ phận trong cảnh với giá trị透明 là 0. | |
Id_Transparent | Các bộ phận trong cảnh với giá trị minh bạch khác hơn 0. | Giảm sử dụng một phần sự minh bạch (giá trị khác 0 và 1). |
Id_Decal | Hình ảnh trong cảnh. | |
Thực hiện/Trình bày | Chờ đợi GPU hoàn thành việc render khung trước; thực sự phát hành lệnh render cho GPU; xử lý các tài nguyên đồ họa cấp thấp. | Giảm phức tạp của cảnh nói phổ quát. Nếu bước này mất nhiều thời gian, bạn có thể bị giới hạn bởi GPU. |
Thực hiện/Hiển thị/Chờ cho tới khi hoàn thành | Chờ đợi GPU hoàn thành việc hiển thị khung trước. | Nếu điều này xảy ra chung nhiều thì lượng thứ được hiển thị quá cao.FRM giúp cân bằng điều này, nhưng nếu nó vẫn cao, hãy thử sử dụng ít chi tiết hơn. |
Các kịch bản
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Hiển thị/PreRender/fireBindToRenderSteppedCallbacks | Chạy chức năng gắn vào bước render thông qua RunService:BindToRenderStep() . | Hãy đảm bảo các chức năng trong các kịch bản sử dụng RunService:BindToRenderStep() làm ít công việc nhất có thể. |
Xuất/PreRender/RunService.RenderStepped | Chạy các chức năng kết nối với sự kiện RunService.RenderStepped . | Tương tự như BindToRenderStep , hãy đảm bảo các chức năng sử dụng sự kiện này làm ít công việc nhất có thể. |
Chờ HybridScriptJob | Tiếp tục các kịch bản đang chờ sử dụng wait. frames. | Bước này có ngân sách thời gian thực hiện để chạy các kịch bản chờ đợi, vì vậy nếu bạn có quá nhiều kịch bản chờ đợi hoặc kịch bản có thời gian chạy lâu trước khi đưa ra, bước này có thể mất nhiều |
LuGC Thông tin Vietnamese:Thông tin | Vòng thu thập rác Luau. Nhãn cung cấp ước tính về tổng phân bổ và bao nhiêu đã bị thu hồi. | Bảng lua hồ bơi và các đối tượng thu thập khác hoặc cố gắng giảm tạo bảng hoặc chuỗi tạm thời |
Trái tim/RunService.Heartbeat | Chạy các chức năng kết nối với Class.RunService.Heartbeat``event.Talk để mô phỏng và liên lạc kịch bản. Sự mô tả hiện tại đủ chung để không sai lầm | Giảm số lượng hoặc tải lượng của các chức năng kết nối với RunService.Heartbeat. |
Mô phỏng
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Sở hữu vật lý phân tán | Xác định xem máy chủ hay khách hàng có quyền kiểm soát một số trường hợp nhất định như các bộ phận. | Sở hữu vật lý phân tán. |
Mô phỏng/lắp ráp | Cập nhật một cây các đối tượng kết nối (hộp) được sử dụng bởi động cơ vật lý. | Giảm số lượng khớp được tạo hoặc phá. |
Mô phỏng/vật lýSteppedTotal/physicsStepped | Chạy mô phỏng vật lý. | Giảm số lượng và phức tạp của các cơ thể được mô phỏng vật lý. |
Mô phỏng/vật lýSteppedTotal/vật lýStepped/Bộ lọc Không gian/bước lọc | Cập nhật các hòn đảo mô phỏng, sắp xếp các bộ phận theo sở hữu mạng, mô phỏng địa phương.Các hòn đảo là các nhóm phần không tương tác có thể được mô phỏng độc lập. | Tránh thiết lập quyền sở hữu mạng thường xuyên. Giữ các nhóm các bộ phận cách xa nhau đủ để có thể mô phỏng riêng biệt. |
Mô phỏng/vật lýSteppedTotal/vật lýStepped/worldStep/stepContacts | Cập nhật liên lạc giữa các đối tượng. | Giảm lượng cơ thể va chạm cùng một lúc hoặc sử dụng hộp va chạm đơn giản hơn. Các khối tốt hơn các khối phức tạp. |
Mô phỏng/vật lýSteppedTotal/vật lýStepped/worldStep/stepWorld HOẶC stepWorldThrottled | Giải các phương trình vật lý liên quan đến các kết nối, nổi và Humanoids .Khi động cơ bị quá tải và không thể mô phỏng mọi thứ theo thời gian thực, một số bước có thể bị giảm tốc (stepWorldThrottled) và chỉ "lắp ráp thời gian thực" như Humanoids được mô phỏng. | Tùy thuộc vào nơi thời gian đang diễn ra dựa trên ba giai đoạn sau: stepContacts: thử nghiệm địa hình phát hiện va chạm giai đoạn hẹp.Bước giải quyết: tích hợp thời gian và giải quyết va chạm và các hạn chế khác cập nhậtBroadphase: cập nhật vị trí của các tập hợp trong hệ thống phát hiện va chạm và tìm các cặp giai đoạn hẹp có thể va chạm. |
Thông báo di chuyển các tập hợp | Giúp theo dõi thời gian các thành phần cơ bản đã ngủ bao lâu. | |
Mô phỏng/vật lýSteppedTotal/physicsStepped/interpolateNetworkedAssemblies | Lắp ráp không kiểm soát các tập hợp không được kiểm soát bởi peer mạng này. | Chỉnh chủ sở hữu mạng của các phần cho peer này để giảm điều này; mặc dù điều này thường sẽ gây ra nhiều công việc vật lý hơn được thực hiện ở nơi khác. |
Mô phỏng/ handleFallenParts | Loại bỏ các bộ phận đã rơi xuống dưới Workspace/FallenPartsDestroyHeight. | Giảm chiều cao phá hủy hoặc giảm số lượng các bộ phận rơi vào chiều cao phá hủy. |
Nhịp tim/heartbeatInternal/workspaceOnHeartbeat/updateVisuallySleeping | Phần thứ hai của NotifyMovingAssemblies. | |
Trái tim/RunService.Heartbeat | Chạy các chức năng kết nối với Class.RunService.Heartbeat``event.Talk để mô phỏng và liên lạc kịch bản. Sự mô tả hiện tại đủ chung để không sai lầm | Giảm số lượng hoặc tải công việc của các chức năng kết nối với RunService.Heartbeat . |
bước thế giới/Liên hệ bước | Giúp bước mô phỏng vật lý bước nhiều liên lạc cùng một lúc. | Giảm số lượng đối tượng va chạm. |
Giải quyết lô | Giúp mô phỏng vật lý giải lô chuyển động của các đối tượng. | |
Mechanism Interpolation | Giúp với InterpolateNetworkAssemblies. |
UI
Nhãn | Mô tả | Lời khuyên về hiệu suất |
---|---|---|
Hiển thị/PreRender/Cập nhật đầu vào | Cập nhật và bắt lửa tất cả các sự kiện nhập liên quan của người dùng nếu người dùng đã thực hiện nhập kể từ khung cuối cùng. | Đây là khi các sự kiện liên quan đến nhập của người dùng sẽ bắt lửa.Thật quan trọng để thử và không làm quá nhiều công việc trực tiếp khi bạn nhận được đầu vào.Hãy xem xét thực hiện một lượng xử lý tối thiểu cho đầu vào, và các tính toán lớn hơn nên được đẩy sang một luồng khác xảy ra sau. |
Xuất/PreRender/TweenService | Cập nhật các đối tượng đang được dịch chuyển bằng cách sử dụng TweenService và gọi lại các cuộc gọi hoàn thành, chẳng hạn như những cuộc gọi được cung cấp cho TweenSize hoặc TweenPosition . | Giảm số lượng đối tượng đang được dịch chuyển bằng cách sử dụng TweenService và đảm bảo các cuộc gọi trả lại làm ít công việc nhất có thể. |
Xuất/Xử lý trước/Cập nhật UILayouts | Cập nhật vị trí và kích thước của các thành phần UI. | Giảm số lượng các thành phần UI được thay đổi kích thước hoặc di chuyển một cách năng động, chẳng hạn như những thành phần được quản lý bởi UILayout. |
Trái tim/TweenService | Trên máy chủ, cập nhật các đối tượng được tweened với TweenService. Trên khách hàng, việc này được thực hiện trong một bước PreRender thay vào đó. | Giảm số lượng đối tượng được tweened bởi TweenService . |