Workspace
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
งาน
การเข้าใจพฤติกรรมนี้เป็นสิ่งสำคัญเนื่องจากหมายถึงว่าวัตถุสามารถถูกลบออกจาก พื้นที่ทํางาน เมื่อ
ในบทบาทของมันเป็นเจ้าของวัตถุ 3D ที่ใช้งานอยู่, Workspace รวมถึงหลายระเบียบังคับที่เกี่ยวข้องกับชิ้นส่วน, ตำแหน่งของพวกเขาและข้อต่อระหว่างพวกเขา
เข้าถึง Workspace
Workspace สามารถเข้าถึงได้หลายวิธี โดยทั้งหมดของวิธีเหล่านี้เป็นวิธีที่ถูกต้อง
- workspace
- game.Workspace
- game:GetService("Workspace")
โน้ต
- วัตถุที่ต้องการประดับ เช่น ParticleEmitters และ BillboardGuis จะอยู่ที่ตําแหน่ง 0, 0, 0 ตั้งค่าโดยไม่ต้องการประดับอื่น ๆ
- วิธีการ Model:MakeJoints() และ Model:BreakJoints() ที่มีมาจากคลาส Model ถูกเปลี่ยนแปลงโดย 1> Class.Workspace:MakeJoints1> และ 4> Class.Workspace:BreakJoints</
- ไม่มีวิธีใด ๆ ในการลบ Workspace
- วัตถุ Camera ปัจจุบันของลูกค้าสามารถเข้าถึงได้โดยการใช้สมบัติสมบัติ Workspace.CurrentCamera
- วัตถุ Terrain สามารถเข้าถึงได้โดยใช้สมบัติสมบัติ Workspace.Terrain
สรุป
คุณสมบัติ
ความหนาแน่นอากาศที่ระดับพื้นดิน ใช้ในแบบจำลองแรงโน้มถ่วง
กำหนดว่าสินทรัพย์ที่สร้างโดยผู้ใช้อื่น ๆ สามารถขายในเกมได้หรือไม่
ระบุโหมดการปรับปรุงการเร่งอนิเมชันสำหรับลูกค้าท้องถิ่น
วัตถุ Camera ที่ใช้โดยผู้เล่นในเกม
จำนวนเวลาที่เกมกำลังทำงานในตัวอักษร
กำหนดความสูงที่ตกลงมา BaseParts และบรรพบุรุษของพวกเขา Models จะถูกลบออกจาก Workspace
กำหนดว่ามอเตอร์ฟิสิกส์จะคำนวณแรงโน้มถ่วงบน BaseParts ซึ่งมีสมบัติของ EnableFluidForces โปรไฟล์เป็นจริงหรือไม่
ระบุเวกเตอร์ลมทั่วไปสำหรับพื้นที่หญ้าเนื้อหนาวสดใสและอนุภาค
กำหนดความเร่งเนื่องจากแรงโน้มถ่วงที่ใช้กับการลดลง BaseParts
เปิดใช้งานสำหรับข้อจํากัดสําหรับ IKControls หากปิดใช้งาน IKControls จะไม่สนใจข้อจํากัดด้านฟิสิกส์
ตั้งค่าว่า ตัวละครหัวและอุปกรณ์เสริมควรจะดาวน์โหลดเป็น MeshParts
ควบคุมโลจิกที่ใช้เพื่อเลือกส่วนหัวของแองค์ประกอบเมื่อใช้ข้อจํากัดใด ๆ ของผู้เคลื่อน
กำหนดวิธีที่ solver จะไปข้างหน้าในการจำลองฟิสิกส์ในเวลา
กำหนดเมื่อเครื่องยนต์เริ่มตัวจัดการเหตุการณ์
กำหนดวิธีที่เครื่องยนต์จะตัดสินใจเมื่อใดจะสตรีมเนื้อหาออกจากผู้เล่น
ว่าการสตรีมเนื้อหาจะเปิดใช้งานสำหรับสถานที่นี้หรือไม่
กำหนดว่า StreamingIntegrityMode เปิดใช้งานหรือไม่
ระยะทางอย่างน้อยที่เนื้อหาจะถูกสตรีมไปยังผู้เล่นด้วยความสามารถสูงสุด
ระยะไกลสูงสุดที่เนื้อหาจะถูกสตรีมไปยังผู้เล่น
กำหนดว่า parts ในกลุ่มต่าง ๆ ที่กำหนดไม่ให้ชนกันจะไม่เกี่ยวข้องกับการชนและการแตะเหตุการณ์
ตั้งค่าระดับรายละเอียดในแบบจำลองสำหรับประสบการณ์ที่มีการเปิดใช้งานการสตรีมมิ่งด้วยตัวอย่าง
ควบคุมพฤติกรรมการสตรีมโมเดลบน Models เมื่อการสตรีมเครื่องมือเปิดใช้งาน
ส่วนหลักของ Model หรือ nil ถ้าไม่ได้ตั้งค่าไว้อย่างชัดเจน
สมบัติสินค้าเฉพาะที่ใช้เพื่อปรับแต่งรุ่นรอบ ๆ แกนของมัน การตั้งค่าคุณสมบัตินี้จะย้ายความเคลื่อนไหวของเครื่องชั่งเมื่อ Model/ScaleTo ถูกเรียกบนมัน
กำหนดตำแหน่งที่โค้งของ Model ซึ่ง ไม่ มีชุด Model.PrimaryPart ตั้งอยู่
วิธีการ
กลับจำนวน BaseParts ที่ถือว่าเป็นสิ่งที่มีประสิทธิภาพทางกายภาพ เนื่องจากอยู่ภายใต้ผลกระทบของฟิสิกส์เมื่อเร็ว ๆ นี้
กลับมาเป็นตัวเลขที่อยู่ระหว่าง 0 และ 100 ซึ่ง表示物理模拟器กําลังถูกขีดจํากัดอยู่ในขณะนี้
กลับจำนวนเฟรมต่อวินาทีที่การเล่นสมุดกําลังจะจําลอง
กลับเวลายุคเซิร์ฟเวอร์ในวินาที
สร้างข้อต่อระหว่าง Parts และอะไหล่ที่เกี่ยวข้องตามพื้นผิวของอะไหล่และโหมดการสร้างข้อต่อที่กำหนดไว้
กลับ true หากเกมมี PGS Physics solver เปิดใช้งาน
พังการเชื่อมต่อทั้งหมดระหว่าง BaseParts และ BaseParts อื่น ๆ
ตำแหน่งและขนาด Workspace.CurrentCamera เพื่อแสดงขนาด BaseParts ในขณะนี้ใน Workspace
กลับ true หากมีส่วนใดส่วนหนึ่งใน BasePart สัมผัสกับส่วนอื่น
สร้างรูปร่างบล็อกในทิศทางที่กำหนดและส่งคืน RaycastResult หากรูปร่างตีโจมตี BasePart หรือ Terrain เซลล์
กลับรายการรายการที่มีขอบเขต ตรงกัน ในกล่องที่ระบุ
กลับรายการรายการที่มีชิ้นส่วนอยู่ภายในเขต กรอบเหลี่ยมของวงกลมที่กำหนดไว้
กลับรายการผู้ให้บริการที่มีพื้นที่ว่างของพื้นที่ที่ได้รับการแชร์
- IKMoveTo(part : BasePart,target : CFrame,translateStiffness : number,rotateStiffness : number,collisionsMode : Enum.IKCollisionsMode):void
ย้ายส่วนที่กำหนดไว้ไปยังสถานที่ที่กำหนดโดยอัตราสมทบทางกลศาสตร์ที่กลับกันโดยไม่ต้องย้ายไปที่นั่นโดยตรงเพื่อให้แน่ใจว่าข้อต่อ ข้อจํากัด หรือการชนที่ร่วมมือใด ๆ จะเหลืออยู่ในระดับที่พอใจ
ใช้ลำแสงโดยใช้ต้นไม้, ทิศทาง, และตัวเลือก RaycastParams จากนั้นจะกลับมาที่ RaycastResult หากวัตถุหรือพื้นที่ที่เป็นไปได้สัมผัสกับลำแสง
- Spherecast(position : Vector3,radius : number,direction : Vector3,params : RaycastParams):RaycastResult?
โยนรูปร่างกลมในทิศทางที่กำหนดและส่งคืน RaycastResult หากรูปร่างตีโจมตี BasePart หรือ Terrain เซลล์
ขับเคลื่อนการจำลองสำหรับชิ้นส่วนในโลกไปข้างหน้าโดยใช้เวลาเพิ่มเติมที่กำหนดและชุดตั้งค่าอื่น ๆ ของ BaseParts
ตั้งค่ารุ่นนี้ให้เป็นรุ่นที่แข็งแกร่งสำหรับผู้เล่นที่กำหนด Model.ModelStreamingMode ต้องถูกตั้งไว้ให้เป็น PersistentPerPlayer เพื่อให้การเปลี่ยนแปลงพฤติกรรมเป็นผลมาจากการเพิ่ม
รวมถึงคำอธิบายของระดับที่มีทุกส่วนของแบบ
กลับขนาดของกล่องชุดที่เล็กที่สุดที่มี BaseParts ใน Model ที่ตรงกับ Model.PrimaryPart ตั้งค่า
กลับสิ่งที่เป็น Player วัตถุทั้งหมดที่วัตถุนี้มีความยืนยันสำหรับ การเรียกคืนของวิธีนี้จาก Script หรือ LocalScript ต่างกันไปตามว่าวิธีนี้เรียกได้จาก
กลับขนาดเครื่องชี้วัดที่กำหนดไว้ของแบบจำลองซึ่งเริ่มต้นด้วย 1 สำหรับแบบจำลองที่สร้างขึ้นใหม่และจะเปลี่ยนแปลงเมื่อมันถูกเคลื่อนผ่านโดย Model/ScaleTo
ย้าย PrimaryPart ไปยังตำแหน่งที่กำหนด หากไม่มีส่วนหลักได้ระบุไว้ จะใช้ส่วนหลักของแบบจำลอง
ทำให้รุ่นนี้ไม่มีอยู่ต่อไปสำหรับผู้เล่นที่กำหนด Model.ModelStreamingMode ต้องการตั้งค่าให้เป็น PersistentPerPlayer เพื่อให้พฤติกรรมเปลี่ยนแปลงเป็นผลมาจากการลบ
ตั้งค่าตัวปรับขนาดของแบบจำลองโดยปรับขนาดและตำแหน่งของบรรพบุรุษทั้งหมดให้มีตัวปรับขนาดของแบบจำลองที่สมเหตุสมผลเมื่อตัวปรับขนาดอยู่ที่ 1
เปลี่ยน Model โดยใช้การเคลื่อนที่ Vector3 ที่กำหนดไว้ เพื่อเก็บความตรงของโมเดล หาก BasePart หรือ 1> Class.Terrain1> ม
รับ pivot ของ Class.PVInstance
แปลง PVInstance พร้อมกับบรรพบุรุษทั้งหมดของมัน PVInstances เพื่อให้ pivot ตอนนี้อยู่ที่ CFrame ที่กำหนด
อีเวนต์
เปิดให้บริการเมื่อโมเดลที่มีอยู่ถูกส่งไปยังผู้เล่นที่กำหนด
คุณสมบัติ
AllowThirdPartySales
สมบัติสินค้านี้ Workspace ระบุว่าสินค้าโดยผู้ใช้อื่น ๆ สามารถขายในเกมได้หรือไม่
ขายโดยบุคคลที่สามคืออะไร?
เมื่อค่านี้เป็นประเภทเท็มเพียงเมื่อเป็นปกติจะสามารถขายได้โดยใช้ MarketplaceService เท่านั้น Thai:เมื่อค่านี้เป็นประเภทเท็มเพียงเมื่อเป็นปกติจะสามารถขายได้โดยใช้ Class.MarketplaceService เท่านั้น
ในกรณีส่วนใหญ่ เกมไม่จำเป็นต้องขายสินทรัพย์ของบุคคลที่สาม อย่างไรก็ตาม บางเกม เช่น แห่งการแลกเปลี่ยน ต้องการคุณสมบัตินี้และดังนั้นจึงมีอยู่ในตัวเลือก opt-in
ฉันสามารถขายผลิตภัณฑ์ของบุคคลที่สามได้หรือไม่?
หมายเหตุ, ผลิตภัณฑ์ของผู้พัฒนา สามารถขายได้ในเกมที่พวกเขาเกี่ยวข้องกับเท่านั้น ไม่ว่า AllowThirdPartySales จะตั้งค่าอย่างไร สิ่งนี้ส่งผลกระทบต่อ เกมผ่าน และ 1>เสื
AvatarUnificationMode
CSGAsyncDynamicCollision
ClientAnimatorThrottling
ระบุ Enum.ClientAnimatorThrottlingMode สำหรับใช้กับเครื่องคอมพิวเตอร์ท้องถิ่น
เมื่อเปิดใช้งานแล้วอนิเมชั่นใน Model ตัวอย่างจะเริ่มปรับความเร็วต่ำลง ตัวควบคุมจะคำนวณความเร็วในการปรับลดลงโดยใช้:
- ยิงมุมมองบุคคลที่หนึ่ง
- จำนวนแอนิเมชันที่เปิดใช้งาน
CurrentCamera
วัตถุ Camera ที่ใช้โดยผู้เล่นในเกม
วิธีใช้กล้องปัจจุบัน
เมื่อมองหาวัตถุ Camera ของลูกค้าให้ใช้คุณสมบัตินี้แทนที่จะมองหาลูกของ Workspace ที่มีชื่อว่า "Camera"
เมื่อคุณตั้งค่าคุณสมบัตินี้, วัตถุ Camera อื่น ๆ ใน Workspace จะถูกทำลาย, รวมทั้ง CurrentCamera ก่อนหน้านี
สำหรับข้อมูลเพิ่มเติม, see การเขียนสคริปต์กล้อง .
DistributedGameTime
จำนวนเวลาที่เกมกำลังทำงานในตัวอักษร
แม้ชื่อเรื่องจะเป็นเช่นนั้น มูลค่านี้ในปัจจุบันยังไม่ได้แจกจ่ายไปยังลูกค้าและเซิร์ฟเวอร์ แทนที่นี้ในเซิร์ฟเวอร์มันเป็นตัวแทนว่าเซิร์ฟเวอร์มีเวลาทำงานนานเท่าไหร่ ในลูกค้ามันเป็นตัว
ผู้พัฒนาไม่ควรพึ่งพาพฤติกรรมด้านบน และเป็นไปได้ว่าคุณสมบัตินี้จะถูกซิงค์ไปยังลูกค้าและเซิร์ฟเวอร์ในอนาคต
ผู้ที่กำลังมองหาเวลาตั้งแต่เริ่มใช้โปรแกรมควรใช้ตัวเวลาแทน ดูด้านล่างสำหรับการเปรียบเทียบระหว่าง DistributedGameTime และตัวเลือกอื่น ๆ
print(workspace.DistributedGameTime) --> Time the game started runningprint(os.time()) --> Time since epoch (1 January 1970, 00:00:00) UTCprint(tick()) --> Time since epoch (1 January 1970, 00:00:00) system timeprint(time()) --> Time the game started runningprint(elapsedTime()) --> Time since Roblox started running
FallenPartsDestroyHeight
สมบัตินี้กำหนดความสูงที่ Roblox เครื่องยนต์จะลบออกโดยอัตโนมัติ BaseParts และบรรพบุรุษของพวกเขา Models จาก Workspace โดย
หากมีการลบส่วนหนึ่งเนื่องจากพฤติกรรมนี้จะเป็นส่วนสุดท้ายใน Model นั้น โมเดลนี้จะถูกลบออกด้วย นี่ใช้กับ모든พี่น้องของโมเดล
คุณสมบัตินี้ถูกแนบมาระหว่าง -50,000 และ 50,000 เพราะ BaseParts ไม่สามารถจำลองหรือเรนเดอร์ได้อย่างเหมาะสมในระยะไกลจากต้นที่เกิดจากความผิดพลาดในจุดตรวจน้ำ
คุณสมบัตินี้สามารถอ่านโดยสคริปต์ แต่สามารถตั้งค่าได้โดยปลั๊กอิน แถบคําสั่ง หรือหน้าต่างของโปรไฟล์ใน Studio
FluidForces
มีคุณสมบัตินี้เปิดใช้งานแล้วพลังงานฟิสิกส์จะคำนวณแรงโน้มถ่วงบน BaseParts ซึ่งมีสมบัติของ EnableFluidForces อยู
GlobalWind
สมบัตินี้ระบุทิศทางและความแข็งแกร่งที่ลมพัดผ่านประสบการณ์ ส่งผลกระทบต่อหญ้าป่า เมฆดินและอนุภาค
Gravity
กำหนดความเร่งเนื่องจากแรงโน้มถ่วงที่ใช้กับการลดลง BaseParts นี้ มีค่านี้ได้รับการวัดใน studs ต่อวินาทีของตารางและโดยปกติจะตั้งค่าไว้ที่ 196.2 studs/s
ตัวอย่างโค้ด
local MOON_GRAVITY_RATIO = 1.62 / 9.81
local DEFAULT_GRAVITY = 196.2
local MOON_GRAVITY = DEFAULT_GRAVITY * MOON_GRAVITY_RATIO
-- Create a touch pad
local pad = Instance.new("Part")
pad.Size = Vector3.new(5, 1, 5)
pad.Position = Vector3.new(0, 0.5, 0)
pad.Anchored = true
pad.BrickColor = BrickColor.new("Bright green")
pad.Parent = workspace
-- Listen for pad touch
local enabled = false
local debounce = false
local function onPadTouched(_hit)
if not debounce then
debounce = true
enabled = not enabled
workspace.Gravity = enabled and MOON_GRAVITY or DEFAULT_GRAVITY
pad.BrickColor = enabled and BrickColor.new("Bright red") or BrickColor.new("Bright green")
task.wait(1)
debounce = false
end
end
pad.Touched:Connect(onPadTouched)
IKControlConstraintSupport
เปิดให้สนับสนุนสำหรับข้อจํากัดสำหรับ IKControls ค่า Default เป็นเหมือน Enabled หากปิดใช้งานจะไม่สนับสนุนข้อจํากัดทางฟิสิกส์ ดู IKControl สําหรับรายละเอียดเพิ่มเติม
InsertPoint
MeshPartHeadsAndAccessories
ตั้งค่าว่าไฟล์หัวของตัวละครและอุปกรณ์เสริมควรจะดาวน์โหลดเป็น MeshParts หรือไม่ มูลค่า Default จะเหมือนกับ Enabled หากคุณสมบ
ModelStreamingBehavior
MoverConstraintRootBehavior
ควบคุมโลจิกที่ใช้ในการเลือกส่วนหัวของแอ่งการใช้ใด ๆ ของข้อจํากัดต่อไปนี้:
เมื่อค่านี้กำหนดเป็น Enum.MoverConstraintRootBehaviorMode.Enabled ค่านี้จะไม่ได้รับการใช้งานเม
เมื่อค่านี้กำหนดเป็น Enum.MoverConstraintRootBehaviorMode.Disabled คุณสมบัติเหล่านี้อาจถูกพิจารณาผิดเมื่อเลือกส่วนรากของคอนเส็นส์นี้ ซึ่งทำให้เกิดความเป็นเจ้าของเครือข่ายที่ไม่เหมาะสมและความล่าช้าในการเ
PathfindingUseImprovedSearch
PhysicsSteppingMethod
กำหนดวิธีการที่นักแก้ปัญหาจะก้าวไปข้างหน้าในเวลาที่เป็นไปได้ ตัวเลือกนี้ไม่สามารถเป็นสคริปต์ได้และต้องการตั้งจาก วิธีการแก้ปัญหาของ Workspace ภายใน Studio ดู การแก้ป
<tbody><tr><td><b>ปรับแต่งตัวเอง</b></td><td>เครื่องยนต์พยายามกำหนดอัตราการจำลองที่เหมาะสมสำหรับแต่ละการประกอบของ 240 Hz, 120 Hz หรือ 60 Hz นี้ การตั้งค่านี้ได้รับการปรับแต่งเพื่อประสิทธิภาพ</td></tr><tr><td><b>แก้ไขแล้ว</b></td><td>การจัดเค้าโครงทั้งหมดภายในพื้นที่ทํางานจะก้าวไปข้างหน้าที่ 240 Hz ตัวเลือกนี้เหมาะสมที่สุดสําหรับความเสถียรและความนิ่งที่เหมาะสม</td></tr><tr><td><b>ปกติ</b></td><td>ค่าเริ่มต้นปัจจุบันคือ <b>แก้ไข</b></td></tr></tbody>
ตัวเลือก | คำอธิบาย |
---|
หมายเหตุว่าเมื่อส่วนประกอบของอัตราการจำลองที่แตกต่างกันเชื่อมต่อกันผ่าน Constraints หรือการชนกัน จะเริ่มต้นด้วยอัตราการจำลองสูงสุดสำหรับความเสถียร
PlayerCharacterDestroyBehavior
PrimalPhysicsSolver
RejectCharacterDeletions
RenderingCacheOptimizations
ReplicateInstanceDestroySetting
Retargeting
SandboxedInstanceMode
SignalBehavior
สมบัตินี้กำหนดว่าจะมีการดำเนินการต่อเหตุการณ์หรือไม่ หากเหตุการณ์เกิดขึ้นโดยทันที หรือละทิ้งแล้วดำเนินการต่อที่จุดยืนใหม่ในภายหลัง จุดยืนใหม่ปัจจุบันรวมถึง:
- การประมวลผลการป้อนข้อมูล (เริ่มต้นอีกครั้งสำหรับแต่ละการป้อนข้อมูลดูเหมือนจะเป็น UserInputService )
- สคริปต์รอในมรดกเช่น wait() และ spawn() และ delay()
สำหรับข้อมูลเพิ่มเติม ดู เหตุการณ์ล่วงหน้า
StreamOutBehavior
การควบคุม StreamOutBehavior ที่จะนำเสนอเนื้อหาจาก ReplicationFocus ตามเงื่อนไขการจำหน่ายแห่งหน่วยความจำของอุปกรณ์ หรือตามรัศมีการสตรีม
ดูเพิ่มเติม:
- Workspace.StreamingEnabled ซึ่งควบคุมว่าการสตรีมเนื้อหาเปิดใช้งานหรือไม่
StreamingEnabled
สมบัติ StreamingEnabled ระบุว่า การสตรีมเนื้อหาเกมส์ให้เป็นไปตามที่ตำแหน่งนี้สตรีมเนื้อหาเกมส์หรือไม่ สมบัตินี้ไม่สามารถเป็นสคริปต์ได้และจึงต้องการตั้งค่าใน วงดนตรีของงานงาน ใน Studio
ดูเพิ่มเติม:
StreamingIntegrityMode
หากเปิดใช้งาน การสตรีม จะสามารถเกิดขึ้นได้หากตัวละครของผู้เล่นย้ายไปยังภูมิภาคของโลกที่ไม่ได้สตรีมไปยังเครื่องของพวกเขา คุณสมบัติการสตรีมจะนำเสนอวิธีที่จะหลีกเลี่ยงส
StreamingMinRadius
สมบัติ StreamingMinRadius ระบุรัศมีรอบตัวละครของผู้เล่นหรือ ReplicationFocus ในเนื้อหาใด ๆ ที่จะถูกสตรีมในด้านความสำคัญสูงสุด ปกติจะเป็น 64 สตุ๊ด
ควรให้ความสนใจเมื่อเพิ่มรัศมีขั้นต่ำที่กำหนดเนื่องจากจะต้องใช้หน่วยความจำมากขึ้นและการเข้าถึงเซิร์ฟเวอร์มากขึ้นในขณะที่เสียส่วนของคอมพิวเตอร์อื่น
ดูเพิ่มเติม:
- Workspace.StreamingEnabled ซึ่งควบคุมว่าการสตรีมเนื้อหาเปิดใช้งานหรือไม่
StreamingTargetRadius
สมบัติ StreamingTargetRadius ควบคุมระยะทางสูงสุดจากตัวละครของผู้เล่นหรือ ReplicationFocus ในเนื้อหาใดจะถูกสตรีมใน สมบัติเริ่มต้นที่ 1024 studs
หมายเหตุว่าเครื่องยนต์สามารถเก็บเนื้อหาที่โหลดไว้ล่วงหน้านี้ได้อยู่นอกรัศมีเป้าหมาย โดยอนุญาตให้หน่วยความจำ
ดูเพิ่มเติม:
- Workspace.StreamingEnabled ซึ่งควบคุมว่าการสตรีมเนื้อหาเปิดใช้งานหรือไม่
Terrain
สมบัตินี้เป็นการอ้างถึงวัตถุ Terrain ที่เป็นบรรพบุรุษของ Workspace
ดู ภูมิประเทศสิ่งแวดล้อม สำหรับข้อมูลเพิ่มเติม
TouchEventsUseCollisionGroups
TouchesUseCollisionGroups
สมบัตินี้กำหนดว่าจะ parts ในกลุ่มที่แตกต่างกันจะไม่เกี่ยวข้องกับการชนและเหตุการณ์สัมผัส โดยปกติค่าของสมบัตินี้จะตั้งไว้ที่ false
เมื่อคุณสมบัตินี้เปิดใช้งาน, ส่วนในกลุ่มที่แตกต่างกันจะไม่สนใจ CanTouch โปรไฟล์เช่นเดียวกับวิธีที่ BasePart.CanCollide ถูกเพิกเฉยไป สำหรับข้อมู
วิธีการ
GetNumAwakeParts
กลับจำนวน BaseParts ที่ถือว่าเป็นสิ่งที่มีประสิทธิภาพทางกายภาพ เนื่องจากอยู่ภายใต้ผลกระทบของฟิสิกส์เมื่อเร็ว ๆ นี้
ฟังก์ชันนี้ให้การวัดว่าจำนวน BaseParts กำลังได้รับผลกระทบหรือเมื่อเร็ว ๆ นี้โดยการกระทบของพลังลำแสง
print(workspace:GetNumAwakeParts()) -- prints the number of 'awake' parts
การนอนหลับ vs ตื่นตัว
การดำเนินการ
ส่งค่ากลับ
จำนวนชิ้นส่วนตื่น.
GetPhysicsThrottling
กลับมาเป็นตัวเลขที่อยู่ระหว่าง 0 และ 100 ซึ่ง表示物理模拟器กําลังถูกขีดจํากัดอยู่ในขณะนี้
ฟังก์ชันนี้สามารถใช้เพื่อกำหนดว่า และในระดับไหน การคัดค้านการปรับปรุงพลังงานกำลังเกิดขึ้น
คืออะไรความเร่งฟิสิกส์?
ปัญหาการคัดค้านทางกายภาพเกิดขึ้นเมื่อเครื่องมือฟิสิกส์ตรวจพบว่าไม่สามารถเข้าถึงเกมได้ในเวลาจริง เมื่อฟิสิกส์ถูกคัดค้าง มันจะปรับปรุงความถี่น้อยลงจนทำให้ BaseParts ปร
โดยไม่ต้องการปิดการใช้งาน การจำลองภาพละครทางกายภาพจะลดลงอีกข้างจากการซิงค์กับเกม นี่อาจนำไปสู่อัตราเฟรมที่ต่ำกว่าปกติและพฤติกรณ์ที่ไม่พึงประสงค์อื่น ๆ
วัตถุที่เกี่ยวข้องกับ Humanoids จะได้รับการยกเว้นจากการหดตัวทางกายภาพ
ดูเพิ่มเติม Workspace:SetPhysicsThrottleEnabled() .
การแสดงผลประสิทธิภาพของการควบคุม
นักพัฒนาควรหลีกเลี่ยงการสร้างสถานที่ที่เกินขีดจำกัดของเครื่องฟิสิกส์เสมอไปเพราะมันนำไปสู่ประสบการณ์ของผู้เล่นที่เหนือการควบคุม ผู้ที่ต้องการจะจำลองการควบคุมฟิสิกส์สำ
local i = 0while true doi += 1if i % 5 == 0 thentask.wait()endlocal part = Instance.new("Part", workspace)end
ส่งค่ากลับ
ระดับเปอร์เซ็นต์ของการจำลองภาพที่เกิดขึ้นเร็วกว่าที่มีอยู่
GetRealPhysicsFPS
กลับจำนวนเฟรมต่อวินาทีที่การเล่นสมุดกําลังจะจําลอง
การใช้ GetRealPhysicsFPS เพื่อต่อสู้กับนักแฮ็ก
การใช้งานทั่วไปของฟังก์ชันนี้คือการตรวจจับว่าผู้ใช้กําลังเพิ่มอัตราเฟรมพลังงานขอ
ส่งค่ากลับ
กลับจำนวนเฟรมต่อวินาทีที่การเล่นสมุดกําลังจะจําลอง
ตัวอย่างโค้ด
local Players = game:GetService("Players")
local player = Players.LocalPlayer
while task.wait(1) do
if workspace:GetRealPhysicsFPS() > 65 then
player:Kick()
end
end
GetServerTimeNow
GetServerTimeNow รีเทิร์นเวลาจักรวาลบนเซิร์ฟเวอร์ด้วยความแม่นยำของมิโซวินาที เวลาถูกปรับสำหรับการลอยตัวและความละเอียดของมัน (มันรับประกันว่าจะไม่เป็นไปในทิศทางที
กลับไปยังเวลาที่แนบมา Unix ที่สามารถใช้กับ os.date() หรือกับ DateTime.fromUnixTimestamp()
ฟังก์ชันนี้มีประโยชน์สำหรับการสร้างประสบการณ์ที่เกี่ยวข้อง เนื่องจากมีสามสมบัติที่จำเป็นสำหรับการทำเช่นนี้: นั่นคือนาฬิกาเวลาจริง มันเป็นโมโนนิก และมีความแม่นยำที่ดี
ฟังก์ชันนี้ขึ้นอยู่กับเซิร์ฟเวอร์ดังนั้นการโทรจากลูกค้าที่ไม่ได้เชื่อมต่อจะส่งผลให้เกิดข้อผิดพลาด
ดูเพิ่มเติม:
- DistributedGameTime นาฬิกาเวลาเกม
ส่งค่ากลับ
เวลายุคที่คาดไว้บนเซิร์ฟเวอร์
JoinToOutsiders
ฟังก์ชันนี้สร้างข้อต่อระหว่าง Parts และอะไหล่ที่เกี่ยวข้องตามพื้นผิวของอะไหล่และโหมดการสร้างข้อต่อที่กำหนด
ฟังก์ชันนี้สร้างข้อต่อระหว่างชิ้นส่วนที่ระบุและพื้นผิวสัมผัสที่เป็นแผนที่ตามแนวตั้ง ขึ้นอยู่กับพื้นผิวของชิ้นส่วนและโหมดการสร้างของชิ้นส่วนที่ระบุ
- กาว, ตะปู, สกรีด, ยูนิเวอร์ซัล, เชื่อมต่อ, และพื้นผิวเรียบจะสร้างตัวอย่าง Weld
- ไม่มีอะไรจะเหนียวกับที่กลม ด้านข้างที่เรียบของทรงกระบอกจะไม่เหนียว แต่ด้านข้างที่แบนจะเหนียว
ตัวแปรแรกคือรายการของ BaseParts ตัวแปรจะถูกสร้างขึ้นเฉพาะในค่าที่อยู่ในรายการของตัวแปรเท่านั้น ตัวแปรจะไม่ถูกสร้างขึ้นระหว่างค่าในรายการของตัวแปร
ตัวแปรที่สองคือ Enum.JointCreationMode ที่กำหนดวิธีการสร้างของร่วม การส่งผ่านค่านิยมใด ๆ ในรายการ Enum.JointCreationMode.All หรือ Entity.JointCreationMode|Entity.
ฟังก์ชันนี้ใช้โดย Roblox Studio Move เมื่อผู้ใช้เสร็จสิ้นการย้ายตัวเลือก ในขณะที่ใช้ Plugin:GetJoinMode() และ Workspace:UnjoinFromOutsiders() สามารถใช้เพื่อรักษาความสามารถในการเ
-- เสร็จสิ้นการย้ายตัวเลือก, สร้างข้อต่อ
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
workspace:JoinToOutsiders(parts, joinMode)
end
-- เริ่มย้ายตัวเลือก, ทำให้ข้อต่อพัง
local function startMovingParts(parts)
workspace:UnjoinFromOutsiders(parts)
end
พารามิเตอร์
รายการของ BaseParts สำหรับผู้ที่จะต้องทำคู่
EngineJointCreationMode ที่จะใช้ การผ่านใน Enum.JointCreationMode.All หรือ Enum.JointCreationMode.Surface มีพฤติกรรมเดียวกันซึ่งเท่ากับการเข้าร่วมเสมอ
ส่งค่ากลับ
PGSIsEnabled
กลับ true หากเกมมี PGS Physics solver เปิดใช้งาน
เนื่องจาก Workspace.PGSPhysicsSolverEnabled ไม่สามารถเข้าถึงได้โดยสคริปต์จึงสามารถให้เจ้าของได้รับการแจ้งเตือนว่าพลังงานที่ใช้ในเกมกำลังใช้พลังงานที่ใช้ในเกม
print(workspace:PGSIsEnabled()) -- true = PGS solver enabledprint(workspace:PGSIsEnabled()) -- false = Legacy solver enabled
ส่งค่ากลับ
จริงหากเปิดใช้งาน PGS โซลเวอร์
UnjoinFromOutsiders
พังการเชื่อมต่อทั้งหมดระหว่าง BaseParts และ BaseParts อื่น ๆ
ฟังก์ชันนี้ต้องใช้ mat阵์ของ BaseParts ตระหง่านจะไม่ถูกแบ่งออกเป็นสองส่วนระหว่าง BaseParts เหล่านี้ (แต่เฉพาะระหว่าง Class.BasePart|Base
ฟังก์ชันนี้ใช้โดย Roblox Studio Move เมื่อผู้ใช้เริ่มย้ายการเลือก ในขณะที่ใช้ Plugin:GetJoinMode() และ Workspace:JoinToOutsiders() สามารถใช้เพื่อรักษาความสามารถในการเข้าร่วมเมื
-- finished moving a selection, make joints
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
workspace:JoinToOutsiders(parts, joinMode)
end
-- started moving a selection, break joints
local function startMovingParts(parts)
workspace:UnjoinFromOutsiders(parts)
end
พารามิเตอร์
รายการของ BaseParts สำหรับผู้ที่จะถูกแบ่งออก
ส่งค่ากลับ
ZoomToExtents
ตำแหน่งและขนาด Workspace.CurrentCamera เพื่อแสดงขนาด BaseParts ในขณะนี้ใน Workspace
ฟังก์ชันนี้ใช้ในปุ่ม 'ซูมไปยังสิ่งที่เป็น' (F ขายัก) ใน Roblox Studio ฟังก์ชันนี้แสดงพฤติกรรมคล้ายกับการแสดงผล 'ซูมไปที่' (F ขายัก) (F ขายัก) แต่แสดงตำแหน่งของ Workspace แทนท
คุณสมบัตินี้ไม่สามารถใช้ในสคริปต์ได้ แต่จะทำงานในแถบคําสั่งหรือปลั๊กอิน
ส่งค่ากลับ
อีเวนต์
PersistentLoaded
เหตุการณ์นี้จะเปิดให้ใช้ทุกครั้งเมื่อผู้เล่นได้รับทุกโมเดลที่มีอยู่ทั้งหมดและโมเดลอะตอมที่ไม่มีชิ้นส่วน player ปารามิเตอร์แสดงถึงผู้เล่นที่ได้รับโมเดลทั้งหมด
โปรดทราบว่าประสบการณ์การโหลดเกิดขึ้นก่อนการโหลดที่คงที่ และการยิงเหตุการณ์ DataModel.Loaded ไม่ได้แสดงถึงว่ารุ่นทั้งหมดมีอยู่