สร้างห้องสมุดทรัพย์สิน

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


การสร้างห้องสมุดทรัพย์สิน เป็นกระบวนการนำเข้าและกำหนดค่าคอลเลกชันของทรัพย์สินในสถานที่ศูนย์กลางภายในเกมของคุณเพื่อให้เข้าถึงและนำกลับมาใช้ใหม่ได้ง่าย กระบวนการนี้สามารถช่วยประหยัดเวลาได้มากเมื่อคุณเตรียมสร้างสภาพแวดล้อมของคุณ โดยเฉพาะอย่างยิ่งหากคุณกำหนดค่าค่าของแต่ละทรัพย์สินเพื่อเพิ่มประสิทธิภาพและปรับแต่งการใช้หน่วยความจำในอุปกรณ์ระดับกลางถึงต่ำ

โดยใช้ไฟล์ Environment Art - Assembling .rbxl เป็นข้อมูลอ้างอิง ส่วนนี้ของหลักสูตรศิลปะสิ่งแวดล้อมจะแสดงให้คุณเห็นวิธีการสร้างห้องสมุดทรัพย์สินจากทรัพย์สินที่ผ่านการปรับแต่งแล้วของคุณ รวมถึงคำแนะนำทีละขั้นตอนเกี่ยวกับ:

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

หลังจากที่คุณทำส่วนนี้เสร็จแล้ว คุณจะได้เรียนรู้วิธีการใช้ห้องสมุดทรัพย์สินของคุณในวิธีที่สร้างสรรค์เพื่อแทนที่หรือแปลงสภาพแวดล้อมสีเทา และเพิ่มการตกแต่งสุดท้ายที่ช่วยเพิ่มคุณภาพโดยรวมของพื้นที่ 3D

ชุดโมดูลและอุปกรณ์ของเกมเลเซอร์แท็กตัวอย่าง

สร้างวัสดุที่กำหนดเอง

Studio แสดงวัสดุที่กำหนดเองเป็นวัตถุ MaterialVariant ภายใน MaterialService วัตถุ MaterialVariant เหล่านี้มีสี่คุณสมบัติที่รวมแผนที่พื้นผิวที่สามารถทำซ้ำได้สี่แผนที่เพื่อสร้างวัสดุที่กำหนดเองคุณภาพสูงที่มีลักษณะทางกายภาพ:

หลังจากที่คุณจัดเตรียมแผนที่พื้นผิวให้กับคุณสมบัติเหล่านี้แล้ว คุณสามารถนำวัสดุที่กำหนดเองใหม่ของคุณไปใช้กับทั้งชิ้นส่วน เมช และภูมิประเทศได้ คุณสามารถใช้หรือปรับเปลี่ยนแผนที่พื้นผิวตัวอย่างไฟล์ .png เพื่อสร้างวัสดุ Lumpy Moss, Flowering Lumpy Moss, Lumpy Moss with Stones และ Stones ภายในสภาพแวดล้อมเลเซอร์แท็กตัวอย่างสุดท้าย หรือคุณสามารถใช้ของคุณเองที่คุณออกแบบในส่วนก่อนหน้าของบทเรียน

ในการสร้างวัตถุ MaterialVariant สำหรับพื้นผิวที่สามารถทำซ้ำได้ของคุณ:

  1. จากเมนู Window3D ให้เลือก Material เพื่อเปิด Material Manager

  2. ในรายการ Materials ให้เลือกวัสดุพื้นฐานที่ตรงกับพื้นผิวที่สามารถทำซ้ำได้ของคุณมากที่สุด ตัวอย่างเช่น หากคุณกำลังสร้างวัตถุ MaterialVariant สำหรับพื้นผิว Lumpy Moss ให้เลือกวัสดุพื้นดินเริ่มต้นเพื่อให้วัสดุสืบทอดคุณสมบัติทางกายภาพ

  3. ในแถบเครื่องมือด้านบน ให้คลิกที่ไอคอน วัตถุ MaterialVariant ใหม่จะแสดงในพาเลตพร้อมไอคอนที่มุมขวาล่างที่บ่งบอกว่านี่คือวัสดุที่กำหนดเอง

    วัสดุใหม่ใน Material Manager พร้อมไอคอนเพื่อระบุวัสดุที่กำหนดเอง
  4. ใน Inspector ให้ไปที่ส่วน General จากนั้นเปลี่ยนชื่อวัสดุให้ตรงกับชื่อของพื้นผิวที่สามารถทำซ้ำได้ของคุณ

    มุมมอง Inspector ที่มีชื่อวัสดุเน้น
  5. ในส่วน Texture Maps ที่ด้านขวาของ Color ให้คลิกที่ปุ่ม Import จะมีการแสดงเบราว์เซอร์ไฟล์

    ส่วน Texture Maps ของมุมมอง Inspector ที่มีปุ่ม Import เน้น
  6. ในเบราว์เซอร์ไฟล์ ให้เลือกไฟล์แผนที่พื้นผิว Albedo .png สำหรับพื้นผิวที่สามารถทำซ้ำได้ที่เกี่ยวข้อง จากนั้นคลิกปุ่ม Open เบราว์เซอร์ไฟล์จะปิดลง และแผนที่สีใหม่จะแสดงพร้อมกับ ID ทรัพย์สินของมัน

  7. ทำซ้ำกระบวนการนี้สำหรับแผนที่พื้นผิว Metalness, Normal และ Roughness วัสดุที่กำหนดเองจะอัปเดตเพื่อสะท้อนแผนที่พื้นผิว

    แผนที่พื้นผิวทั้งหมดสำหรับวัสดุ Moss_Lumpy_A
    ชิ้นส่วนทรงกลมที่มีวัสดุ Moss_Lumpy_A ใช้
  8. ในส่วน Overrides ให้เปิดใช้งานสวิตช์ Set as Override เพื่อให้แน่ใจว่าเมื่อคุณนำพื้นดินไปใช้กับภูมิประเทศของคุณ Studio จะใช้วัสดุที่กำหนดนี้

    สวิตช์ Set as Override เปิดใช้งาน
  9. OPTIONAL
    หากคุณกำลังสร้างวัสดุที่กำหนดเองที่แสดงถึงวัสดุอินทรีย์

    1. ในส่วน Tiling ให้คลิกที่ดรอปดาวน์ Pattern
    2. เลือก Organic เพื่อสุ่มผลลัพธ์และลดการทำซ้ำที่มองเห็นได้
    ส่วน Tiling ของมุมมอง Inspector พร้อมการตั้งค่า
  10. ทำซ้ำกระบวนการนี้สำหรับพื้นผิวที่สามารถทำซ้ำได้แต่ละรายการที่คุณต้องการรวมไว้ในเกมของคุณ

สร้างแพ็คเกจ SurfaceAppearance

Studio ใช้แผ่นขอบภายในวัตถุ SurfaceAppearance ที่คุณสามารถเป็นบิดาให้กับ MeshParts ที่มีข้อมูล UV คล้ายกับวัสดุที่กำหนดเอง วัตถุ SurfaceAppearance มีสี่คุณสมบัติที่รวมแผนที่พื้นผิวแผ่นขอบสี่แผนที่เพื่อสร้างการรักษาภาพ 3D คุณภาพสูง:

SurfaceAppearance.ColorMap – แสดงแผนที่พื้นผิวอัลบีโด SurfaceAppearance.MetalnessMap – แสดงแผนที่พื้นผิวโลหะ SurfaceAppearance.NormalMap – แสดงแผนที่พื้นผิวปกติ SurfaceAppearance.RoughnessMap – แสดงแผนที่พื้นผิวขรุขระ

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

คุณสามารถใช้หรือปรับเปลี่ยนแผนที่พื้นผิวตัวอย่างไฟล์ .png เพื่อสร้างวัตถุ SurfaceAppearance ที่เคารพข้อมูล UV สำหรับทรัพย์สินโมดูลและอุปกรณ์ตัวอย่างภายในสภาพแวดล้อมเลเซอร์แท็กตัวอย่างสุดท้าย หรือคุณสามารถใช้ของคุณเองที่คุณออกแบบในส่วนก่อนหน้าของบทเรียนที่ใช้กับทรัพย์สินโมดูลและอุปกรณ์ของคุณเอง

ในการสร้างแพ็คเกจ SurfaceAppearance ที่คุณสามารถเป็นบิดาให้กับชุดโมดูลและอุปกรณ์ของคุณ:

  1. แทรกวัตถุ SurfaceAppearance ลงใน Workspace

  2. เลือกวัตถุ SurfaceAppearance จากนั้นในหน้าต่าง Properties ให้เลือกคุณสมบัติ ColorMap จะมีการแสดงป๊อปอัป

  3. คลิกที่ปุ่ม Add Image… จะมีการแสดงเบราว์เซอร์ไฟล์

    ป๊อปอัป ColorMap ที่มีปุ่ม Add Image เน้น
  4. เลือกแผนที่พื้นผิว Albedo สำหรับพื้นผิวที่สามารถทำซ้ำได้ที่เกี่ยวข้อง จากนั้นคลิกปุ่ม Open เบราว์เซอร์ไฟล์จะปิดลง และคุณสมบัติ ColorMap จะอัปเดตด้วย ID ทรัพย์สินใหม่

  5. ทำซ้ำกระบวนการนี้สำหรับคุณสมบัติ MetalnessMap, NormalMap และ RoughnessMap โดยเลือกแผนที่พื้นผิวที่เกี่ยวข้องจากเบราว์เซอร์ไฟล์

  6. ในหน้าต่าง Explorer คลิกขวาที่วัตถุ SurfaceAppearance จากนั้นเลือก Convert to Package จากเมนูบริบท จะมีการแสดงกล่องโต้ตอบ Convert to Package

  7. กรอกข้อมูลในฟิลด์ Title และ Description ตั้งค่าการเป็นเจ้าของให้กับตัวคุณเองหรือกลุ่ม จากนั้นคลิกปุ่ม Submit เมื่อเสร็จสิ้น จะมีสัญลักษณ์โซ่ปรากฏขึ้นเหนือไอคอนของวัตถุ SurfaceAppearance เพื่อระบุว่าเป็นแพ็คเกจ

    ไอคอน Surface Appearance พร้อมสัญลักษณ์โซ่
  8. OPTIONAL
    เลือกวัตถุ PackageLink ที่เป็นบุตรของวัตถุ SurfaceAppearance จากนั้นในหน้าต่าง Properties ให้เปิดใช้งาน AutoUpdate เพื่ออัปเดตแพ็คเกจโดยอัตโนมัติหากคุณทำการแก้ไขใดๆ กับวัตถุ SurfaceAppearance

นำเข้าทรัพย์สินโมดูลและอุปกรณ์

Studio แสดงทรัพย์สินโมดูลและอุปกรณ์ที่คุณนำเข้าเป็นวัตถุ Model ที่มี MeshParts เป็นบุตรสำหรับแต่ละส่วนประกอบของทรัพย์สิน ตัวอย่างเช่น หากคุณนำเข้าชิ้นส่วนผนังที่มีแผ่นขอบด้านบน แผ่นขอบด้านล่าง และส่วนผนัง Studio จะแสดงไฟล์ .fbx หรือ .obj เป็น Wall_Section Model ที่มีบุตรแยกเป็น Top_Trim, Bottom_Trim, และ Wall MeshParts

โดยใช้ Importer คุณสามารถนำเข้าชุดโมดูลและอุปกรณ์ตัวอย่างเข้าสู่ Studio เพื่อใช้ในห้องสมุดทรัพย์สินของคุณ หรือคุณสามารถนำเข้าทรัพย์สินใดๆ ที่คุณออกแบบในส่วนก่อนหน้าของบทเรียน สำหรับข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชันการทำงานของเครื่องมือนี้ โปรดดูที่ Importer

ในการนำเข้าทรัพย์สินโมดูลและอุปกรณ์ของคุณเข้าสู่เกม:

  1. จากเมนู File ให้เลือก Import จะมีการแสดงเบราว์เซอร์ไฟล์

  2. เลือกไฟล์ .fbx สำหรับทรัพย์สินโมดูลหรืออุปกรณ์

  3. ตรวจสอบตัวอย่างวัตถุและตรวจสอบว่าการตั้งค่าการนำเข้านั้นถูกต้องสำหรับวัตถุของคุณ

  4. คลิก Import ทรัพย์สินจะแสดงในหน้าต่าง Explorer และในมุมมอง

  5. ทำซ้ำกระบวนการนี้สำหรับทรัพย์สินโมดูลและอุปกรณ์แต่ละรายการ

  6. ย้ายทรัพย์สินทั้งหมดของคุณไปยังพื้นที่เดียวในเกมของคุณใกล้กับเรขาคณิตสีเทาของคุณ โซนนี้คือห้องสมุดทรัพย์สินของคุณ

ใช้ข้อมูล SurfaceAppearance

เมื่อคุณทำการห่อ UV ของเมชในซอฟต์แวร์การสร้างโมเดลของบุคคลที่สาม ซอฟต์แวร์จะเก็บข้อมูล UV ไว้ภายในไฟล์ .fbx หรือ .obj ของเมช เมื่อคุณนำเข้าเมชนั้นเข้าสู่ Studio วัตถุ MeshPart ที่เกิดขึ้นจะเก็บข้อมูลนั้นไว้ แต่คุณยังต้องนำวัตถุ SurfaceAppearance ที่มีคุณสมัติแผนที่พื้นผิวจากแผ่นขอบของคุณไปใช้เพื่อแสดงพื้นผิวขอบของคุณบนทรัพย์สิน

ในการนำข้อมูลแผนที่พื้นผิว SurfaceAppearance ไปใช้กับเมชที่ไม่ได้ห่อในห้องสมุดทรัพย์สินของคุณ:

  1. ในหน้าต่าง Explorer คลิกที่แพ็คเกจ SurfaceAppearance ของคุณ จากนั้นกด CtrlD (D) เพื่อทำสำเนา
  2. เป็นบุตรของแพ็คเกจ SurfaceAppearance ที่ทำสำเนาให้กับทรัพย์สินโมดูลหรืออุปกรณ์ เมชจะนำข้อมูล UV ของมันไปใช้กับแผนที่พื้นผิวและแสดงการรักษาภาพของมัน
  3. ทำซ้ำกระบวนการนี้สำหรับทรัพย์สินโมดูลและอุปกรณ์แต่ละรายการ

ตั้งค่าพารามิเตอร์ฟิสิกส์และการเรนเดอร์

ตอนนี้คุณมีทรัพย์สินของคุณอยู่ใน Studio แล้ว สิ่งสำคัญคือต้องตั้งค่าพารามิเตอร์ฟิสิกส์และการเรนเดอร์ที่ช่วยให้ทรัพย์สินรักษาคุณภาพภาพที่ดีที่สุดเท่าที่จะเป็นไปได้ในอุปกรณ์ที่มีข้อจำกัดด้านหน่วยความจำและ GPU โดยทั่วไป ยิ่งคุณปฏิบัติตามคำแนะนำในส่วนนี้มากเท่าไหร่ เกมของคุณก็จะมีประสิทธิภาพมากขึ้นเท่านั้น อย่างไรก็ตาม สิ่งสำคัญคือต้องพิจารณาบริบทที่คุณวางทรัพย์สินแต่ละรายการในสภาพแวดล้อมโดยรวมเพื่อให้แน่ใจว่าคุณรักษาเป้าหมายด้านสุนทรียศาสตร์และความต้องการในการเล่นเกม

Anchored

คุณสมบัติ BasePart.Anchored กำหนดว่าระบบฟิสิกส์ของ Roblox Engine มีผลต่อการวางตำแหน่งของวัตถุหรือไม่ เมื่อคุณเปิดใช้งานคุณสมบัตินี้สำหรับ Part หรือ MeshPart มันจะลบวัตถุออกจากการคำนวณทางกายภาพของการจำลองแบบพลศาสตร์ที่กำลังทำงานอยู่ในเกม ซึ่งหมายความว่าวัตถุจะไม่เปลี่ยนตำแหน่งเนื่องจากแรงโน้มถ่วงหรือการชนจากวัตถุอื่น

วัตถุที่ไม่จำลองการตอบสนองทางฟิสิกส์จะมีค่าใช้จ่ายในการเรนเดอร์ที่ต่ำกว่าเพราะพวกเขาไม่ใช้ GPU ที่จำเป็นสำหรับการคำนวณฟิสิกส์เหล่านั้น เมื่อคุณปล่อย GPU คุณจะปรับปรุงประสิทธิภาพสำหรับเกมของคุณ โดยเฉพาะอย่างยิ่งในอุปกรณ์ระดับต่ำที่ต้องการประหยัด GPU สำหรับการเล่นเกมที่รวดเร็ว นี่คือเหตุผลที่ ทุก ทรัพย์สินยกเว้นประตูในสภาพแวดล้อมเลเซอร์แท็กตัวอย่างสุดท้ายถูกยึด

CanCollide

คุณสมบัติ BasePart.CanCollide กำหนดว่าวัตถุสามารถโต้ตอบทางกายภาพกับวัตถุอื่นได้หรือไม่ เมื่อคุณเปิดใช้งานคุณสมบัตินี้สำหรับ Part หรือ MeshPart วัตถุจะไม่สามารถเจาะได้ และ Roblox Engine จะคำนึงถึงมันในการคำนวณฟิสิกส์ การคำนวณเหล่านี้อาจส่งผลกระทบต่อประสิทธิภาพของเกมของคุณเมื่อมีวัตถุจำนวนมากที่เอนจินต้องพิจารณาในการคำนวณฟิสิกส์

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

CanTouch

คุณสมบัติ BasePart.CanTouch กำหนดว่าถึง Touched และ TouchEnded เหตุการณ์จะเกิดขึ้นกับวัตถุหรือไม่ เมื่อคุณเปิดใช้งานคุณสมบัตินี้สำหรับ Part หรือ MeshPart Roblox Engine จะตรวจสอบสถานะเหตุการณ์สัมผัสของวัตถุเพื่อดูว่าจำเป็นต้องเรียกใช้หรือหยุดเหตุการณ์หรือไม่

กระบวนการนี้เกิดขึ้นในทุกเฟรม ซึ่งอาจใช้หน่วยความจำจำนวนมากหากเอนจินต้องตรวจสอบสถานะเหตุการณ์สัมผัสสำหรับวัตถุหลายรายการในครั้งเดียว เพื่อบรรเทาผลกระทบนี้ต่อหน่วยความจำ ให้เปิดใช้งานคุณสมบัตินี้เฉพาะสำหรับวัตถุที่ต้องเรียกใช้เหตุการณ์

CanQuery

คุณสมบัติ BasePart.CanQuery กำหนดว่า Roblox Engine พิจารณาวัตถุในระหว่างการดำเนินการค้นหาพื้นที่หรือไม่ เช่น การเรย์แคส Studio เปิดใช้งานคุณสมบัตินี้สำหรับ Part หรือ MeshPart ทุกตัวโดยค่าเริ่มต้น ซึ่งหมายความว่าเอนจินจะตรวจสอบว่าต้องเรียกใช้การดำเนินการค้นหาพื้นที่สำหรับวัตถุแต่ละรายการหรือไม่ กระบวนการนี้เกิดขึ้นในทุกเฟรม ซึ่งอาจใช้หน่วยความจำจำนวนมากเมื่อเอนจินต้องทำการตรวจสอบเหล่านี้สำหรับวัตถุหลายรายการในครั้งเดียว

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

CastShadow

คุณสมบัติ BasePart.CastShadow กำหนดว่าวัตถุจะสร้างเงาหรือไม่ เมื่อคุณเปิดใช้งานคุณสมบัตินี้สำหรับ Part หรือ MeshPart Roblox Engine จะคำนวณตำแหน่งของเวอร์เท็กซ์แต่ละจุดของวัตถุในระหว่างการทำงาน จากนั้นวาดการเรย์แคสต์จากดวงอาทิตย์ไปยังวัตถุที่อยู่ใกล้เคียงจนกว่าจะชนกับวัตถุอื่นเพื่อสร้างเงา

การคำนวณเหล่านี้อาจมีค่าใช้จ่ายด้านประสิทธิภาพ โดยเฉพาะเมื่อคุณมีวัตถุจำนวนมากที่มีความซับซ้อนทางเรขาคณิต นี่เป็นเพราะว่าวัตถุที่มีความซับซ้อนทางเรขาคณิตมีพอลิกอนมากกว่าวัตถุที่มีความซับซ้อนทางเรขาคณิตน้อย ซึ่งหมายความว่ามีเวอร์เท็กซ์มากขึ้นที่เอนจินต้องคำนวณสำหรับเงาของวัตถุ ยิ่งพอลิกอนในวัตถุมีน้อยเท่าไหร่ การดำเนินการก็จะเร็วขึ้นและเงาของมันก็จะมีค่าใช้จ่ายน้อยลง

ส่วนผนังที่มีพอลิกอนน้อย และพืชที่มีพอลิกอนมากสร้างเงาบนผนังสีขาว

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

พืชพรรณสร้างเงา
BasePart.CastShadow = เปิดใช้งาน
พืชพรรณไม่สร้างเงา
BasePart.CastShadow = ปิดใช้งาน

DoubleSided

คุณสมบัติ MeshPart.DoubleSided กำหนดว่าจะเรนเดอร์ทั้งสองด้านหรือพอลิกอนในเมชหรือไม่ เมื่อคุณเปิดใช้งานคุณสมบัตินี้สำหรับ MeshPart แบบแผ่น เช่น ใบไม้ ผม หรือการ์ดผ้า Roblox Engine จะเรนเดอร์ทั้งสองด้านหรือพอลิกอนในเมชเพื่อให้ผู้ใช้สามารถมองเห็นความสมบูรณ์ของวัตถุไม่ว่าจะมองจากมุมไหน ตัวอย่างเช่น ใบไม้ของต้นไม้ต่อไปนี้เป็นเมชแผ่นด้านเดียว และเมื่อคุณเปิดใช้งานคุณสมบัตินี้ ใบไม้ใดๆ ที่หันออกจากกล้องจะมองเห็นได้โดยผู้ใช้

ต้นไม้ที่มีเมชแผ่นทั้งหมดหันไปทางกล้อง
MeshPart.DoubleSided = เปิดใช้งาน
ต้นไม้ที่มีใบไม้ลดลงเพราะเมชแผ่นทั้งหมดที่หันออกจากกล้องถูกปิดใช้งาน
MeshPart.DoubleSided = ปิดใช้งาน

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

CollisionFidelity

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

เมชปราสาทสีเทา
เมชต้นฉบับ
เมชปราสาทเดียวกันที่มีกล่องชนที่มีสีสันซึ่งแสดงให้เห็นว่าผู้ใช้สามารถชนกับปราสาทได้ที่ไหน
ค่าเริ่มต้น

คุณสามารถตั้งค่าคุณสมบัตินี้เป็นค่าอื่นเพื่อลดความแม่นยำของกล่องชนของเมช ตัวอย่างเช่น เมื่อคุณตั้งค่าคุณสมบัตินี้เป็น Hull เอนจิน Roblox จะลดจำนวนเวอร์เท็กซ์ของกล่องชนของเมชอย่างมาก และเมื่อคุณตั้งค่าคุณสมบัตินี้เป็น Box เอนจินจะลดกล่องชนของเมชให้เป็นลูกบาศก์ที่ล้อมรอบเมช นอกจากนี้ หากคุณต้องการเพิ่มความแม่นยำของกล่องชนของเมช คุณสามารถตั้งค่าคุณสมบัตินี้เป็น PreciseConvexDecomposition เพื่อเพิ่มจำนวนเวอร์เท็กซ์ในกล่องชน

เมชปราสาทเดียวกันที่มีกล่องชนลูกบาศก์ที่แสดงให้เห็นว่าผู้ใช้สามารถชนกับปราสาทได้ที่ไหน
กล่อง
เมชปราสาทเดียวกันที่มีกล่องชนทรงกระบอกที่แสดงให้เห็นว่าผู้ใช้สามารถชนกับปราสาทได้ที่ไหน
Hull
เมชปราสาทเดียวกันที่มีกล่องชนที่มีสีสันซึ่งแสดงให้เห็นว่าผู้ใช้สามารถชนกับปราสาทได้ที่ไหน รุ่นนี้แสดงให้เห็นว่ามีหน้าสีสันมากกว่ากล่องชนเริ่มต้น
PreciseConvexDecomposition

คล้ายกับ BasePart.CastShadow ยิ่งเอนจินต้องเรนเดอร์เวอร์เท็กซ์มากเท่าไหร่ ค่าใช้จ่ายด้านประสิทธิภาพก็จะสูงขึ้นเท่านั้น ด้วยเหตุนี้จึงเป็นสิ่งสำคัญที่จะต้องพิจารณาว่าคุณต้องการให้ผู้ใช้โต้ตอบกับแต่ละเมชอย่างไรเพื่อดูว่าคุณสามารถลดจำนวนเวอร์เท็กซ์ที่เอนจินต้องเรนเดอร์สำหรับกล่องชนของเมชได้หรือไม่ ในกรณีที่ไม่จำเป็นต้องมีความแม่นยำสำหรับกล่องชน ให้ตั้งค่าคุณสมบัตินี้เป็น Box หรือ Hull

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

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

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

โมเดลผนังที่มีกล่องชนสำหรับแผ่นขอบด้านบน เนื่องจากกล่องยื่นออกมา ผู้ใช้จึงชนกับแผ่นขอบโดยไม่ตั้งใจ
กล่อง
โมเดลผนังเดียวกันที่มีกล่องชนสำหรับแผ่นขอบด้านบน เนื่องจากกล่องชนของ Hull ปรับให้เข้ากับด้านบนของโมเดลได้ใกล้เคียงมากขึ้น ทำให้ผู้ใช้หลีกเลี่ยงการชนกับแผ่นขอบ
Hull

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

โมเดลประตูพร้อมกล่องชนที่ปรับให้เหมาะสม

RenderFidelity

คุณสมบัติ MeshPart.RenderFidelity กำหนดระดับรายละเอียดของเมชที่แสดงให้ผู้ใช้เห็น เมื่อคุณตั้งค่าคุณสมบัตินี้เป็น Enum.RenderFidelity.Automatic เอนจิน Roblox จะลดความละเอียดของเมชเมื่อผู้ใช้ห่างจากเมช และเมื่อคุณตั้งค่าคุณสมบัตินี้เป็น Enum.RenderFidelity.Precise ทุกเวอร์เท็กซ์ของเมชของคุณจะเรนเดอร์อย่างที่คุณตั้งใจไว้ไม่ว่าจะอยู่ห่างกันแค่ไหน

ยิ่งวัตถุที่เอนจินต้องเรนเดอร์อย่างแม่นยำให้กับผู้ใช้จากระยะทางใดๆ โดยเฉพาะอย่างยิ่งหากมีจำนวนเวอร์เท็กซ์สูง ค่าใช้จ่ายด้านประสิทธิภาพก็จะสูงขึ้น ด้วยเหตุนี้จึงแนะนำให้ตั้งค่าคุณสมบัตินี้เป็น Enum.RenderFidelity.Performance สำหรับวัตถุที่มีความซับซ้อนทางเรขาคณิต เช่น พืชพรรณในห้องสมุดทรัพย์สินตัวอย่าง เพราะพวกเขาไม่จำเป็นต้องแสดงทั้งหมดจากระยะไกลสำหรับความต้องการในการเล่นเกมใดๆ สิ่งนี้ช่วยลดจำนวนพอลิกอนในเกมของคุณโดยไม่ลดคุณภาพภาพรวม

แปลงทรัพย์สินเป็นแพ็คเกจ

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

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

ในการแปลงทรัพย์สินโมดูลและอุปกรณ์ของคุณเป็นแพ็คเกจ:

  1. ในหน้าต่าง Explorer คลิกขวาที่ทรัพย์สินโมดูลหรืออุปกรณ์ จากนั้นเลือก Convert to Package จากเมนูบริบท จะมีการแสดงกล่องโต้ตอบ Convert to Package

  2. กรอกข้อมูลในฟิลด์ Title และ Description ตั้งค่าการเป็นเจ้าของให้กับตัวคุณเองหรือกลุ่ม จากนั้นคลิกปุ่ม Submit เมื่อเสร็จสิ้น จะมีสัญลักษณ์โซ่ปรากฏขึ้นเหนือไอคอนของโมเดลเพื่อระบุว่าเป็นแพ็คเกจ

    ไอคอนโมเดลพร้อมสัญลักษณ์โซ่
  3. ทำซ้ำกระบวนการนี้สำหรับทรัพย์สินโมดูลและอุปกรณ์แต่ละรายการ

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

©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ