การสร้างพื้นที่ด้วย Greybox คือกระบวนการสร้างระดับด้วยรูปร่างง่าย ๆ ก่อนที่จะใช้เวลาไปกับการเขียนสคริปต์หรือสร้างแอสเซตศิลปะขั้นสุดท้าย ช่วยให้คุณทดสอบการเล่นเกม ระบุปัญหาการจัดวาง และทำการเปลี่ยนแปลงได้อย่างรวดเร็วในขณะที่สภาพแวดล้อมยังสามารถแก้ไขได้ง่าย
ในส่วนนี้ คุณจะสร้างแพลตฟอร์มทะเล(stack) ที่ประกอบขึ้นเป็นพื้นที่ที่เล่นได้ของประสบการณ์ เมื่อเลย์เอาต์รู้สึกถูกต้องแล้ว คุณสามารถเริ่มการเขียนสคริปต์ได้
วางแผนพื้นที่ที่เล่นได้
ในประสบการณ์สุดท้าย ผู้เล่นจะเก็บเหรียญเพื่อเพิ่มพลังการกระโดดและเข้าถึงแพลตฟอร์มที่สูงขึ้น คุณจะดำเนินระบบความก้าวหน้านี้ในภายหลังในบทเรียน แต่เป็นสิ่งสำคัญที่จะต้องวางแผนสำหรับประสบการณ์นี้ในขณะที่สร้างพื้นที่การสร้างด้วย xgreybox ตามกฎทั่วไป ความแตกต่างของความสูงระหว่างแพลตฟอร์มควรเพิ่มขึ้นทีละน้อยเพื่อกระตุ้นให้ผู้เล่นเก็บเหรียญและดำเนินการต่อไป
เป็นการอ้างอิง เกมตัวอย่าง Island Jump - Building ใช้เจ็ดระดับความสูง แพลตฟอร์มแรกตั้งต่ำพอที่ผู้เล่นต้องการเหรียญเพียงไม่กี่เหรียญในการเข้าถึง ระดับความสูงถัดไปเพิ่มขึ้นเป็น 8, 20, 35, 55, 81 และ 110 studs สร้างความรู้สึกความก้าวหน้าอย่างสม่ำเสมอตลอดทั้งประสบการณ์

เพิ่มแพลตฟอร์ม
ในตอนนี้คุณมีแผนสำหรับความแตกต่างของความสูงระหว่างแพลตฟอร์มแล้ว ให้เพิ่ม Part ออบเจ็กต์เป็นตัวแทนของทะเลสแต็ค ส่วนประกอบเป็นบล็อกการสร้างพื้นฐานของ Roblox ที่มีคุณสมบัติควบคุมรูปร่าง ขนาด สี และคุณลักษณะทางกายภาพอื่นๆ
ในโครงการนี้ ให้ใช้ชิ้นส่วน cylinder เพื่อสร้างพื้นผิวเรียบให้ผู้เล่นลงจอดขณะกระโดด


สร้างโครงสร้างการจัดระเบียบ
ก่อนที่จะเพิ่มส่วน ให้สร้างโฟลเดอร์สองโฟลเดอร์เพื่อรักษารูปแบบของโครงการให้เป็นระเบียบ Roblox มีให้ใช้ Folder ออบเจ็กต์สำหรับการจัดกลุ่มอินสแตนซ์ที่เกี่ยวข้องและ Model ออบเจ็กต์สำหรับการจัดกลุ่มวัตถุ 3D ในบทเรียนนี้ คุณจะสร้างโฟลเดอร์ World เพื่อเก็บสภาพแวดล้อมและโมเดล Blockout_Parts ภายในโฟลเดอร์นั้นเพื่อเก็บแท่น greybox
- ใน Explorer ให้สร้างโฟลเดอร์ชื่อ World ภายใน Workspace.
- สร้างโมเดลชื่อ Blockout_Parts ภายในโฟลเดอร์ใหม่
แทรกส่วน
ตอนนี้คุณมีโครงสร้างการจัดระเบียบแล้ว ให้เพิ่มซีลินเดอร์สำหรับแพลตฟอร์มของคุณ คุณสามารถใช้คำแนะนำจาก Assistant สร้างเลย์เอาต์ของคุณเองด้วยตนเอง หรือสร้างเลย์เอาต์จากตัวอย่างเกมใหม่
เพื่อให้ Assistant สร้างทั้งบล็อกเอาต์ในขั้นตอนเดียว ให้คัดลอกคำแนะนำที่ตรงตามต้องการถ้าคุณต้องการเลย์เอาต์ที่ไม่ซ้ำกันหรือสำเนาที่ตรงกับตัวอย่างเกม
สร้างเลย์เอาต์ของคุณเองสร้างหลายส่วน cylinder ภายใน Workspace > World > Blockout_Parts เพื่อสร้างแพลตฟอร์ม เริ่มด้วยซีลินเดอร์ใหญ่เรียบตรงกลางเกาะ จากนั้นเพิ่มซีลินเดอร์อย่างน้อยเจ็ดตัวที่ทั้งหมดเริ่มที่ฐานแนวดิ่งเดียวกัน แต่มีความสูงแตกต่าง (เหมือนตึกสูง) เพื่อสร้างเส้นทางขึ้นไป ปรับขนาด ตำแหน่ง และทิศทางให้แน่ใจว่าพื้นผิวบนเรียบและสามารถเดินได้ และตั้งค่าส่วนทั้งหมดให้ Anchored
สร้างใหม่จากตัวอย่างสร้างส่วน cylinder ต่อไปนี้ภายใน Workspace > World > Blockout_Parts:1. Level_1 (ขนาด 12, 131, 131; CFrame.Position -23, -4, 9; CFrame.Orientation 0, 0, 90)2. Level_2 (ขนาด 20, 81, 81; CFrame.Position -8, 0, 24; CFrame.Orientation 0, 0, 90)3. Level_3a (ขนาด 40, 44, 44; CFrame.Position 42, 10, 9; CFrame.Orientation 0, 0, 90)4. Level_3b (ขนาด 40, 34, 34; CFrame.Position 87, 10, 4; CFrame.Orientation 0, 0, 90)5. Level_3c (ขนาด 40, 44, 44; CFrame.Position 97, 10, 49; CFrame.Orientation 0, 0, 90)6. Level_4a (ขนาด 75, 39, 39; CFrame.Position 112, 27.5, 46.5; CFrame.Orientation 0, 0, 90)7. Level_4b (ขนาด 75, 65, 65; CFrame.Position 137, 27.5, 69; CFrame.Orientation 0, 0, 90)8. Level_4c (ขนาด 75, 60, 60; CFrame.Position 159.5, 27.5, 91.5; CFrame.Orientation 0, 0, 90)9. Level_4d (ขนาด 75, 30, 30; CFrame.Position 207, 27.5, 106.5; CFrame.Orientation 0, 0, 90)10. Level_4e (ขนาด 75, 61, 61; CFrame.Position 250, 27.5, 74; CFrame.Orientation 0, 0, 90)11. Level_5a (ขนาด 130, 60, 60; CFrame.Position 268, 55, 50; CFrame.Orientation 0, 0, 90)12. Level_5b (ขนาด 130, 25, 25; CFrame.Position 256, 55, 2.5; CFrame.Orientation 0, 0, 90)13. Level_5c (ขนาด 130, 25, 25; CFrame.Position 276, 55, -17.5; CFrame.Orientation 0, 0, 90)14. Level_5d (ขนาด 130, 54, 54; CFrame.Position 322, 55, -21; CFrame.Orientation 0, 0, 90)15. Level_6a (ขนาด 211, 79, 79; CFrame.Position 367, 94.5, -41; CFrame.Orientation 0, 0, 90)16. Level_6b (ขนาด 211, 24, 24; CFrame.Position 387, 94.5, 11.5; CFrame.Orientation 0, 0, 90)17. Level_6c (ขนาด 211, 44, 44; CFrame.Position 397, 94.5, 51.5; CFrame.Orientation 0, 0, 90)18. Level_7 (ขนาด 321, 61, 61; CFrame.Position 407, 149.5, 79; CFrame.Orientation 0, 0, 90)ตรวจสอบให้แน่ใจว่าส่วนทั้งหมดได้รับการตรึง ตำแหน่งถูกต้อง และจัดแนวเพื่อสร้างเลย์เอาต์ระดับที่ต่อเนื่อง
จัดแนวส่วน
หากคุณสร้างเลย์เอาต์ของคุณเอง การจัดการความสูงของแพลตฟอร์มมักจะทำได้ง่ายกว่าเมื่อแพลตฟอร์มทุกอันแชร์ระดับฐานความสูงเดียวกันและแตกต่างกันเพียงในขนาด เครื่องมือ Align สามารถทำได้นี้ในคลิกเดียวโดยการจัดแนวขอบ ด้านล่าง บนแกน Y.
ใน Explorer ให้เลือกแพลตฟอร์มทั้งหมดของคุณ
ในแท็บเครื่องมือ Model ให้คลิก Align.
ในหน้าต่าง Align Tool:
- ตั้ง Mode ให้เป็น Min.
- ตั้ง Align In เป็น World และ Y.
- ตั้ง Relative To ใน Selection Bounds.
คลิก Align.

สร้างอุโมงค์กลวง
เพื่อเพิ่มความหลากหลายทางภาพ ให้ขุดอุโมงค์ผ่านทางหนึ่งในทะเลสแต็คโดยใช้เครื่องมือ solid modeling ของ Studio ในบทเรียนนี้ คุณจะใช้ Negate เพื่อสร้างรูและ Union เพื่อรวมส่วนต่าง ๆ เข้าเป็นรูปแบบเดียว สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือการสร้างโมเดลทั้งหมด ดูที่ solid modeling.
สร้างอุโมงค์กลวงสร้างโครงสร้างอุโมงค์กลวงโดยใช้ขั้นตอนเหล่านี้:1. สร้างซีลินเดอร์ Part ที่มีชื่อว่า Tunnel ขนาด 24, 65, 69 และ CFrame.Position 137, 77, 69 และ CFrame.Orientation 0, 0, 90. ตั้งค่า Anchored เป็น true.2. สร้างบล็อก Part ที่ชื่อว่า Hollow_Part ขนาด 24.5, 72, 22 และ CFrame.Position 134.5, 77, 71 และ CFrame.Orientation 0, 135, 90. ตั้งค่า Anchored เป็น true. ส่วนนี้ควรจะตัดผ่านซีลินเดอร์เพื่อกำหนดพื้นที่กลวง.3. Negate Hollow_Part เพื่อให้มันกลายเป็นรูรูปแบบ.4. เลือกทั้ง Tunnel และ Hollow_Part ที่ negated แล้วทำการดำเนินการ Union เพื่อให้รูปแบบกลวงถูกตัดออกจากซีลินเดอร์.5. เปลี่ยนชื่อการรวมผลลัพธ์เป็น Level_4b_Union.6. ค้นหาแพลตฟอร์ม Level_4b ที่มีอยู่ ทำสำเนามันแล้วเปลี่ยนชื่อสำเนาเป็น Level_4b_Top.7. ตั้งค่า Level_4b_Top เป็นขนาด 74, 65, 69 และ CFrame.Position 137, 126, 69 และ CFrame.Orientation 0, 0, 90. ตรวจสอบให้แน่ใจว่ามันอยู่ในตำแหน่งเหนืออุโมงค์.ตรวจสอบให้แน่ใจว่าส่วนทั้งหมดจัดแนงอย่างถูกต้องและผลลัพธ์สุดท้ายเป็นอุโมงค์ซีลินเดอร์ที่มีทางผ่านเปิดและแพลตฟอร์มตั้งอยู่ด้านบน.
ทดสอบเลย์เอาต์
ก่อนที่คุณจะเริ่มเขียนสคริปต์ ให้ทดสอบเลย์เอาต์เพื่อจับข้อผิดพลาดในขณะที่มันยังแก้ไขได้ง่าย.
เริ่มการทดสอบจากแท็บ Test และจำลองสถานะเริ่มต้นของผู้เล่น.
- ค้นหาตัวละครของคุณใน Explorer และเลือก Humanoid.
- เปิดใช้งาน UseJumpPower.
- ในหน้าต่าง Properties ใหตั้ง JumpPower เป็น 0.
- ขณะที่คุณไปถึงแพลตฟอร์มที่สูงขึ้น ให้เพิ่ม JumpPower เพิ่มขึ้นเป็น 30 เพื่อจำลองการเก็บการอัปเกรดการกระโดดและตรวจสอบให้แน่ใจว่าแต่ละระดับเข้าถึงได้.

ในส่วนถัดไป คุณจะได้เรียนรู้วิธีการเขียนสคริปต์การเล่นเกมทั้งหมด