MicroProfiler เป็นเครื่องมือการปรับปรุงที่มีอยู่ใน Roblox Studio และ Roblox ลูกค้าที่ให้ข้อมูลเวลารายละเอียดสำหรับงาน ตัวจัดการภารกิจ ที่มีชื่อว่า แท็ก
- สำหรับรายการงานทั่วไป, ดูที่ อ้างอิง Tag .
- สำหรับตัวอย่างขั้นตอนโดยขั้นตอนใช้ MicroProfiler เพื่อระบุปัญหาประสิทธิภาพ, ดู เดินผ่าน MicroProfiler
พื้นฐานของ MicroProfiler
เพื่อเปิด MicroProfiler ให้กด CtrlAltF6 ( ⌘1> ⌥1> 3> F63> ) ใน Studio หรือในเครื่องคอมพิวเตอร์ คุณยังสามารถใช้เมนูการตั้งค่าในเครื่อง
เมื่อเปิดเมนูบาร์จะปรากฏขึ้นด้านบนของหน้าต่าง 3D เมื่อเปิดในโหมดปกติจะแสดงถาวรเวลาที่ใช้ในแต่ละเฟรมของตัวตรวจสอบภารกิจ
แถบควรอยู่ที่ตรงกลางของกราฟิก แต่คุณอาจเห็นการเพิ่มขึ้นอย่างกะทันหัน (การเพิ่มขึ้นอย่างรวดเร็วในค่า) การเพิ่มขึ้นนี้แสดงถึงว่าใช้เวลานานเกินไปในก
เพื่อหยุดการบันทึกของเฟรมให้กด CtrlP ( ⌘P ) หรือคลิก 2> หยุดในเมนูบาร์เมนู2> ในขณะที่หยุดการบันทึก เส้นสายเวลาจะปราก��
สำหรับภาพรวมทั้งหมดของมุมมองต่างๆ และวิธีการนำทางระบบ MicroProfiler ให้ดูที่ โหมด MicroProfiler
กระทู้
เช่นเดียวกับโปรแกรมอื่น ๆ โรบ็อกสามารถใช้หลายธรุมในการประมวลผลภารกิจหลายภารกิจในเวลาเดียวกัน ในโหมด MicroProfiler รูปแบบรายละเอียด คุณสามารถดูเครื่องหมายสำหรับแต่ละธรุมบนด้านซ้าย
มีสามประเภทของกระทู้หลัก:
หลัก/เรนเดอร์ : อาจไม่ใช่เรื่องที่เข้าใจได้, วิเคราะห์การป้อนข้อมูล, Humanoids , อนิเมชั่น/ทวีนิ่ง, เป็นเจ้าของพลังงาน, เสียง, และสคริปที่รอ. อัปเด
ผู้ประกอบการ ("RBX ผู้ประกอบการ": ช่วยเหลือเส้นทางกับเน็ตเวิร์ก ฟิสิกส์ และการจัดการเส้นทาง เนื่องจากจำนวนคอร์ในโปรเซสเซอร์ในปัจจุบัน คุณอาจมีหลายเส้นทางผู้ประกอบการ)
เรนเดอร์ ("GPU") ติดตามโลกิจ "พร้อม ทำ นำเสนอ" โดยใช้หน่วยประมวลผลกราฟิก (GPU) ของอุปกรณ์
- เตรียม: ข้อมูลจากกระทู้หลักจะใช้เพื่อปรับปรุงแบบจำลองการเรนเดอร์
- ประมวลผล: ประมวลผลคำสั่งเรนเดอร์ รวมถึงการเรนเดอร์ 2D
- ปัจจุบัน: เครื่องมือนี้สิ้นสุดลงด้วยการจัดการของผู้ใช้
การโปรไฟลิ่งที่กำหนดเอง
หากสคริปต์ของคุณทำงานงานที่ซับซ้อน, คุณสามารถระบุส่วนที่สำคัญของโค้ดเพื่อให้แน่ใจว่าพวกเขาไม่ใช้เวลานานเกินไป Wrap โค้ดใน debug.profilebegin() และ Library. debug profile end</
HardWorkScript
debug.profilebegin("Hard Work")-- นี่คือที่ที่โค้ดที่จะถูกสรุปควรอยู่debug.profileend()
มีจำนวนหน่วยความจำที่จำกัดไว้ให้แก่เครื่องมือตรวจสอบได้ หากหน่วยความจำนี้หมด ชื่อของเครื่องมือตรวจสอบอาจไม่ปรากฏในเวลาที่เหมาะสม ใช้เครื่องมือตรวจสอบน้อยลงเพื่อหลี
ตัวอย่าง
ตัวอย่างโค้ดด้านล่างเชื่อมโยงตัวแสดงผลดัมมี่ไปยังเหตุการณ์ RunService.PreSimulation ซึ่งทุกเฟรมดำเนินการ สิ่งนี้ควรจะดำเนินการได้อย่างมีประสิทธิภาพมากที่สุดเท่าที่จะเป็นไปได้ดังนั้นจ
local RunService = game:GetService("RunService")
local function onPreSimulation()
debug.profilebegin("Hard Work")
-- ตัวอย่างการทำงานหนัก: แลกเปลี่ยนสองแปร 200,000 ครั้ง
local a, b = 0, 1
for _ = 1, 200000 do
a, b = b, a
end
debug.profileend()
end
RunService.PreSimulation:Connect(onPreSimulation)
เมื่อคุณวิ่งประสบการณ์และหยุด MicroProfiler ( CtrlP หรือ ⌘0> P0> ป้ายชื่อแบบกําหนดเองจะปรากฏใต้ป้ายชื่อ 2> gameStepped 2> ป้าย
จากระยะเวลาของมันในแถบเวลา คุณสามารถบอกได้ว่าฟังก์ชันกำลังใช้เวลาในการประมวลผลมากเมื่อเทียบกับการดำเนินงานอื่น ๆ
การบันทึกข้อมูลเฟรม
หากคุณต้องการบันทึกชุดข้อมูลเฟรมสำหรับการตรวจทานในภายหลัง (หรือเพื่อแบ่งปันกับผู้อื่น) ให้ใช้เมนู ดู เมนู. เครื่องกำจัดขยะบันทึกข้อมูลเฟรมไว้ในไฟล์ที่มี
- ใน Windows ตรวจสอบ %LOCALAPPDATA%\Roblox\logs
- บน macOS ตรวจสอบ ~/Library/Logs/Roblox .
ไฟล์ HTML เหล่านี้ใช้เว็บ UI เดียวกันเหมือนกับ การเชื่อมต่อสดสำหรับอุปกรณ์มือถือ และ การเชื่อมต่อเซิร์ฟเวอร์
การวิเคราะห์สำหรับอุปกรณ์มือถือ
เพื่อเข้าถึง MicroProfiler จากเครื่องมือมือถือของคุณ อุปกรณ์มือถือของคุณต้องเชื่อมต่อกับเครือข่ายเดียวกับเครื่องมือของคุณ
เปิดใช้งาน MicroProfiler ในเมนู การตั้งค่า ของอุปกรณ์มือถือ หลังจากเปิดใช้งานแล้ว เมนูจะแสดงที่อยู่ IP และหมายเลขพอร์ต
เช่นในภาพหน้าจอด้านบนที่อยู่เป็น 192.168.1.166 และพอร์ตเป็น 1338 จากคอมพิวเตอร์ในเครือข่ายเดียวกัน น
การโปรไฟลิ่งเซิร์ฟเวอร์
นอกเครื่องมือตรวจสอบเว็บไซต์แบบมาตรฐานอื่น ๆ คุณสามารถดึงข้อมูลกิจกรรมของเซิร์ฟเวอร์โดยใช้เครื่องมือตรวจสอบเว็บไซต์แบบมาตรฐาน
ในประสบการณ์ที่คุณมีสิทธิ์เข้าถึงแก้ไข, เปิด Developer Console ด้วย CtrlAltF9
ในเมนูดรอปดาวน์เลือก MicroProfiler 3. ในส่วน โปรไฟล์เซิร์ฟเวอร์ ระบุจำนวนเฟรมต่อวินาที (สูงสุด 60) และจำนวนวินาทีสำหรับโปรไฟล์ (สูงสุด 4)
คลิก เริ่มบันทึก
หลังจากไม่กี่วินาที, เครื่องมือคอนโซลผู้พัฒนาให้เส้นทางไปยังไฟล์ซึ่งเป็นเส้นทางเดียวกับการดูแล ขยะมาตรฐาน
ใช้ UI เว็บ
ท่ัวไป, เว็บ UI ของ MicroProfiler ทำงานเหมือนกับ โหมดรายละเอียด แต่มีคุณสมบัติเพิ่มเติมสองสามรายการ:
นอกจากการกรองโดยกลุ่ม คุณสามารถกรองโดยธรรมชาติ
ใช้ CtrlF / ⌘F เพื่อกระโดดไปยังเหตุการณ์ที่ใช้เวลานานที่สุดในการดาวน์โหลด ตัวอย่างเช่น 2> computeLightingPer
ใช้เมนู X-Ray เพื่อเปิด/ปิดการเก็บรหัสสีสำหรับการจัดการหน่วยความจำ
- เฟรมที่เบาในแถบเมนูหลักแสดงถึงการจัดสรรหน่วยความจำสูงขึ้น
- ส่วนที่เบากว่าของแถบแสดงตัวอย่างและส่วนที่เบากว่าของแถบแสดงผลในเวลาเร็ว ๆ นี้แสดงถึงส่วนของเฟรมที่มีการจัดสรรหน่วยความจำสูง
- ในโหมด X-ray กด C เพื่อแสดงขนาดรวมของการจัดสรรหน่วยความจำโดยไม่ใช่จำนวนการจัดสรร
ใช้เมนู ส่งออก เพื่อส่งสัญญาณไฟฉายของ CPU หรือหน่วยความจำ เป็นวิธีการเห็นภาพที่มีประสิทธิภาพซึ่งรวบรวมเรื่องทั้งหมดที่รวมอยู่ในการดาวน์โหลด เปลวไฟฉายเป็
ลากและปล่อยไฟล์ขยะที่สองใน UI เว็บเพื่อสร้างกราฟิกเปลวไฟที่แตกต่างกันซึ่งสามารถช่วยให้คุณระบุปรับปรุงหรือการลดลงในประสิทธิภาพของประสบการณ์ของคุณในระยะเวลาที่ผ่านมา คลิก ผสาน
กราฟเปลวไฟที่แตกต่างกันแสดงถึงการดัมพ์ (ซ้ายหรือขวา) ที่กลืนกินพื้นที่เพิ่มเติมหรือหน่วยความจำมากขึ้นด้วยสีที่สดใสเพื่อแสดงความแตกต่างที่ใหญ่ขึ้น