ระบบการสร้าง

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

Roblox Battle Royale มีระบบการสร้างที่ช่วยให้ผู้ใช้สามารถสร้างโครงสร้างของตนเองเพื่อเข้าถึงที่สูงขึ้นเพื่อมุมยิงที่ดีกว่า หรือเพื่อให้การปกป้องในระหว่างการต่อสู้ โดยใช้เมนู ผู้ใช้สามารถเลือกจากประเภทของแผ่นกระเบื้องที่แตกต่างกันจำนวนหนึ่งและวางลงในโลก

ตัวอย่างการสร้าง

เพื่อรักษาระบบที่มีระเบียบและมีโครงสร้าง:

  • แผ่นกระเบื้องแต่ละแผ่นต้องเชื่อมต่อกับแผ่นกระเบื้องที่มีอยู่แล้วหรือกับพื้นดิน
  • วางแผ่นกระเบื้องทั้งหมดในกริดที่ประสานกับโลกสามมิติเพื่อให้แผ่นกระเบื้องเชื่อมต่ออย่างถูกต้องและไม่ทับซ้อนกัน

องค์ประกอบของแผ่นกระเบื้อง

เพื่อให้ผู้ใช้สามารถสร้างแผ่นกระเบื้องใหม่ได้อย่างรวดเร็วและง่ายดาย ระบบการสร้างต้องเข้าใจว่าแผ่นกระเบื้องไหนเชื่อมต่อกันและที่ไหนสามารถวางแผ่นกระเบื้องใหม่ลงในกริดได้

แผ่นกระเบื้องมี 3 ส่วนประกอบ: สินทรัพย์ ที่ใช้เป็นวัตถุแผ่นกระเบื้อง ข้อมูลเกี่ยวกับ พื้นที่ที่แผ่นกระเบื้องครอบครอง โดยอิงกับวัตถุในโลกอื่น ๆ และ จุดเชื่อมต่อ ของแผ่นกระเบื้องที่อนุญาตให้แผ่นกระเบื้องเพิ่มเติมเชื่อมต่อกับขอบที่มีอยู่

สินทรัพย์

สินทรัพย์คือ BasePart (Part, MeshPart เป็นต้น) ที่วางอยู่ใน ReplicatedStorage/BuildingSystem/Assets ซึ่งแสดงถึงลักษณะของแผ่นกระเบื้องในโลกสามมิติ BasePart นี้ต้องมีลูกสองตัว:

  • ObjectTypeStringValue ที่มี Value ของชื่อประเภทแผ่นกระเบื้อง
  • StartingRotationNumberValue ที่มี Value ของการหมุนเริ่มต้นของแผ่นกระเบื้องเมื่อผู้ใช้วางไว้ในโลก

การครอบครอง

การทำให้แน่ใจว่าแผ่นกระเบื้องครอบครองตำแหน่งที่ถูกต้องในระบบกริดเป็นเรื่องสำคัญและสามารถทำได้โดยใช้บิตมาสก์ บิตมาสก์จะแสดงถึงพื้นที่กายภาพที่ประเภทแผ่นกระเบื้องใช้ภายในส่วนพื้นฐานของพื้นที่โลก หรือเซลล์ แผ่นกระเบื้องในระบบสามารถครอบครองด้านหน้าใดของเซลล์กริด (หน้า, ซ้าย, หลัง, ขวา, บน, และล่าง) และจำนวนอ๊อกแทนใด ๆ ในเซลล์กริด ผู้ใช้สามารถวางวัตถุในระบบการสร้างในเซลล์ได้เฉพาะเมื่อทุกด้านและอ๊อกแทนที่วัตถุครอบครองว่างในเซลล์นั้น การครอบครองสำหรับวัตถุในระบบการสร้างถูกกำหนดไว้ดังนี้:

ดัชนีบิตความหมาย
0ด้านล่างของเซลล์
1ด้านบนของเซลล์
2ด้านขวาของเซลล์
3ด้านหลังของเซลล์
4ด้านซ้ายของเซลล์
5ด้านหน้าเซลล์
6+X, –Y, +Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
7+X, +Y, +Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
8–X, –Y, +Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
9–X, +Y, +Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
10–X, –Y, –Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
11–X, +Y, –Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
12+X, –Y, –Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์
13+X, +Y, –Z อ๊อกแทนของเซลล์โดยมีต้นกำเนิดที่กลางของเซลล์

การเชื่อมต่อ

แผ่นกระเบื้องต้องเชื่อมต่อกันเพื่อสร้างโครงสร้าง คุณสามารถใช้บิตมาสก์ซึ่งแสดงถึงส่วนที่แผ่นกระเบื้องสัมผัสกับด้าน/ขอบของเซลล์ การเชื่อมต่อของวัตถุในระบบการสร้างแสดงถึงโดยชุดของจุดเชื่อมต่อ บิต บนผิวของเซลล์ จะแสดงในลักษณะดังต่อไปนี้บนด้านผิวของเซลล์:

ภาพถ่ายลูกบาศก์อ๊อกแทน

วัตถุในระบบการสร้างถือว่ากำลังเชื่อมต่อกับวัตถุในระบบการสร้างอื่นในกริดหากพวกเขาแชร์จุดเชื่อมต่ออย่างน้อย 2 จุดบนผิวของเซลล์

สร้างประเภทแผ่นกระเบื้องใหม่

ในการสร้างประเภทแผ่นกระเบื้องใหม่:

  1. วางสินทรัพย์ใน ReplicatedStorage/BuildingSystem/Assets โปรดจำไว้ว่า สินทรัพย์ต้องประกอบด้วยลูกที่ชื่อว่า ObjectType และ StartingRotation ตามที่กำหนดไว้ข้างต้น

    ตัวอย่างอาวุธ Battle Royale
  2. กำหนด การครอบครอง และ การเชื่อมต่อ สำหรับประเภทแผ่นกระเบื้องใหม่ของคุณใน ReplicatedStorage/BuildingSystem/Libraries/Grid/ObjectTypeConfigurations:

    ตัวอย่างอาวุธ Battle Royale

ตัวอย่าง เช่น ประเภทแผ่นกระเบื้อง Wall จะแสดงดังนี้:


ObjectTypeConfigurations.Wall = {
ASSET_OFFSET_FROM_CENTER = Vector3.new(0, 0, -CELL_DIMENSIONS.Z / 2),
CONNECTIVITY = 0xFF8000, -- 0b 111 111 111 000 000 000 000 000
OCCUPANCY = 0x20, -- 0b 00 00 00 00 1 0 0 0 0 0
}

ทำงานร่วมกับภูมิประเทศ

หากคุณต้องการสร้างแผนที่ที่มีภูมิประเทศที่ไม่เป็นระเบียบ terrain ที่มีความตรงกันกับระบบการสร้าง เราขอแนะนำให้คุณใช้ระบบ heightmap import ตามที่ระบุใน Environmental Terrain และให้คุณปฏิบัติตามรายละเอียดต่อไปนี้:

  • ภูมิประเทศใน Roblox แทนที่จะเป็นอาเรย์สามมิติของวอกเซลแต่ละตัวที่ครอบครองลูกบาศก์ขนาด 4×4×4 สตั๊ดในโลก ด้วยเหตุนี้ Roblox Battle Royale จึงใช้ขนาดเซลล์กริดที่ 20×16×20 สตั๊ด โดยมีแผ่นกระเบื้องผนังขนาด 20×16×1 สตั๊ด และแผ่นกระเบื้องพื้น/เพดานขนาด 20×1×20 สตั๊ด ขนาดนี้ช่วยให้แผ่นกระเบื้องสร้างและภูมิประเทศตรงกันได้อย่างถูกต้อง

  • ทุกพิกเซลในภาพ heightmap ของคุณควรแทนที่วอกเซลภูมิประเทศหนึ่งตัวใน X/Z แพลน ซึ่งพื้นที่ขนาด 5×5 พิกเซลแทนที่เซลล์กริดในระบบการสร้างที่ครอบครองพื้นที่ขนาด 20×20 สตั๊ด

  • ในภาพ heightmap ของคุณ โปรดตรวจสอบให้แน่ใจว่าค่าช่องสัญญาณแดงหรือช่องสัญญาณเทาของแต่ละพิกเซลสามารถหารด้วยความสูงของเซลล์กริดระบบการสร้างของคุณได้เพื่อให้แผ่นกระเบื้องชั้นนั่งอยู่บนภูมิประเทศได้อย่างสวยงาม

  • เมื่อคุณนำเข้า heightmap ให้ตั้งค่า:


    Position (X, Y, Z) = 0, 0, 0
    Size (X, Y, Z) = heightmap_width × 4, 256, heightmap_length × 4
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ