ฉันถามนักพัฒนาว่าเหตุใดพอร์ต PC ในปี 2023 จึงทำงานเหมือนขยะ

เคารพ dt ภาพเด่น 2
เรื่องราวนี้เป็นส่วนหนึ่งของซีรี่ส์ ReSpec ของ Jacob Roach ซึ่งครอบคลุมโลกของเกมพีซีและฮาร์ดแวร์

เมื่อดูที่ สถานะของการเปิดตัวพีซี ในปี 2566 เริ่มชี้นิ้วได้ง่ายๆ เกมไม่ได้รับการปรับแต่ง (ไม่ว่าจะหมายความว่าอย่างไร) หรือผู้จัดพิมพ์เร่งออกเร็วเกินไป หรือกราฟิกการ์ด Nvidia ขายเรามา ด้วย VRAM ที่น้อยเกินไป. แต่โดยส่วนใหญ่แล้ว ข้อกล่าวหาเหล่านี้ค่อนข้างเชื่องช้าและถือตัว และแม้ว่าจะบอกเป็นนัยถึงความเป็นจริง แต่ก็ไม่ได้บอกเล่าเรื่องราวทั้งหมด

เนื้อหา

  • มีปัญหาอะไร?
  • สิ่งที่คุณสามารถทำได้ถูกต้อง
  • หนทางข้างหน้าสำหรับพอร์ตพีซี

วิดีโอแนะนำ

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

มีปัญหาอะไร?

พีซีสำหรับเล่นเกมขนาดเล็กที่วางอยู่ข้างๆ PS5

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

ที่เกี่ยวข้อง

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

Marc Whitten รองประธานอาวุโสและผู้จัดการทั่วไปของ Unity Create กล่าวว่า "ความหลากหลายและความแปรปรวนของการกำหนดค่าพีซีที่จะเล่นเกม... สามารถเล่นได้อย่างแน่นอน เปิดโปงเรื่องไม่คาดฝัน” Whitten ยังชี้ไปที่ "ระบบปฏิบัติการที่แตกต่างกันและการอัปเดตไดรเวอร์ใหม่ ความร้อนและความหน่วงแฝง และการปรับแต่งของผู้ใช้" เป็นปัจจัยที่ทำให้เกิดปัญหาได้

นั่นคือคำตอบที่ฉันแน่ใจว่าคนส่วนใหญ่คิดว่าเป็นคำอธิบาย

แต่ปัญหาตาม Whitten ไม่ใช่การขาดการทดสอบ เขายืนยันว่าเกม "โดยทั่วไปได้รับการทดสอบอย่างกว้างขวางตลอดการพัฒนา" ปัญหามาลงที่ ขนาดของการกำหนดค่าต่างๆ ที่นักพัฒนาจำเป็นต้องทดสอบ รวมถึงตัวแปรที่พวกเขาไม่สามารถอธิบายได้ สำหรับ.

ในการทดลองทางความคิด สมมติว่านักพัฒนาตรึงการกำหนดค่าพีซีที่แตกต่างกัน 100 รายการเพื่อทดสอบ โดยเปลี่ยน CPU, GPU, แกะและฮาร์ดไดรฟ์ระหว่างกัน สำหรับบันทึกแล้ว นี่เป็นตัวเลขที่ฉันเพิ่งดึงออกมา ไม่ใช่ตัวเลขที่นักพัฒนาอ้างว่าเป็นเป้าหมายจริง เอาการกำหนดค่าทั้งหมดเหล่านั้นมาคูณกับปัจจัยเพิ่มเติมอีกหลายสิบอย่าง: คุณใช้ระบบปฏิบัติการใด OS รุ่นอะไร? แล้วไดร์เวอร์เวอร์ชั่นล่ะ? เปิดใช้งานการตั้งค่า BIOS ใด คุณมีซอฟต์แวร์ที่ทำงานอยู่เบื้องหลังเช่น Razer Synapse หรือ Corsair iCue หรือไม่

RTX 4080 ในม้านั่งทดสอบที่กำลังทำงานอยู่
Jacob Roach / เทรนด์ดิจิทัล

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

วิทเทนไม่ได้อยู่คนเดียวในความรู้สึกนี้เช่นกัน John Johanas ผู้กำกับเกมของ ไฮไฟรัชและ ความชั่วร้ายภายใน 2, กล่าวว่า "มันค่อนข้างไม่สมจริงที่จะคิดว่าคุณสามารถสร้างผลิตภัณฑ์ที่จะทำงานได้อย่างไร้ที่ติ ให้ความรู้สึกเหมือนมีการกำหนดค่า CPU, GPU, หน่วยความจำไม่จำกัด และมีแนวโน้มมากขึ้นว่ากำลังทำงานอยู่ในส่วนใด พื้นหลัง."

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

นี่ไม่ใช่เรื่องใหม่ การกำหนดค่าพีซีจำนวนมากเป็นสาเหตุที่พบบ่อยในทุกสิ่งตั้งแต่ความยากในการปรับแต่งเกมบนพีซีไปจนถึงสาเหตุที่เราไม่เห็น Quick Resume ของ Xbox ปรากฏขึ้นใน Windows. คำถามคือนักพัฒนาสามารถทำอะไรได้บ้างแม้จะมีเวลาและเงินจำกัด เนื่องจากพีซีไม่ได้ง่ายไปกว่านี้แล้ว และเกมยังคงมาถึงบนแพลตฟอร์มที่ใช้งานไม่ได้

สิ่งที่คุณสามารถทำได้ถูกต้อง

Cal Kestis ควงดาบไลท์เซเบอร์สีน้ำเงินและถือ BD-1 ใน Star Wars Jedi: Survivor

เรามีตัวอย่างเกมจำนวนมากที่สนับสนุนพีซีผิดพลาดในปีนี้ หนึ่งนายกรัฐมนตรี ตัวอย่างคือ สตาร์ วอร์ส เจได: ผู้รอดชีวิต, ซึ่งในปัจจุบัน อยู่ในสถานะการตรวจสอบแบบ "ผสม" บน Steam แม้จะเป็นหนึ่งในเกมที่ได้รับรางวัลมากที่สุดแห่งปี บทวิจารณ์ยอดนิยมอ่าน: “ความผิดพลาดเพียงครั้งเดียวทำให้ไฟล์บันทึก NG + 99.8% 99.8% 140 ชั่วโมงของฉันเสียหาย” ใช่

ฉันติดต่อทีมพัฒนาเพื่อรับทราบข้อผิดพลาด และแม้ว่าในตอนแรกพวกเขาจะตอบรับ แต่ EA ก็เข้ามาแทรกแซงและหยุดส่งกลับอีเมลของฉัน ดังนั้น แทนที่จะมองว่าเกมใดทำผิดพลาดบนพีซี เราต้องมองว่านักพัฒนาซอฟต์แวร์ทำอะไรถูกต้อง

ไฮไฟรัช เป็นกรณีศึกษาที่สำคัญ เป็นเกมใหม่จากสตูดิโอ AAA และใช้ Unreal Engine 4 ที่น่าอับอาย คุณอาจคิดว่ามันเป็นการเปรียบเทียบแอปเปิ้ลกับส้มระหว่าง ไฮไฟรัช และเกมที่ชอบ Star Wars Jedi: ผู้รอดชีวิต, แต่พวกมันมีอะไรที่เหมือนกันมากกว่าที่คุณคิด ดังที่ Johanas ชี้ให้เห็นว่า “… ความจริงที่ว่าเกมนี้มีความสวยงามแบบการ์ตูนจะทำให้ผู้ใช้บางคนเข้าใจว่าเกมไม่ควรเป็นปัญหาที่จะเล่นบนพีซีของใครก็ตาม ในความเป็นจริง เกมทำหลายสิ่งหลายอย่างเพื่อให้ได้รูปลักษณ์ที่เราต้องการและต่อเนื่อง โลกที่กำลังเคลื่อนตัวที่ต้องเดินทางโดยรถแท็กซี่ … ฉันรู้ว่าการเข้าไปและทำให้แน่ใจว่าเราพยายามตีพวกมัน ความคาดหวัง”

Chai ฟันหุ่นยนต์ใน Hi-Fi Rush
เบเทสดา

การตั้งเป้าหมายนั้นตั้งแต่เริ่มต้นดูเหมือนจะมีความสำคัญ ไฮไฟรัชความมั่นคง นักพัฒนาทราบว่าเป็นเป้าหมายในการออกแบบตั้งแต่ต้นเพื่อรักษาอย่างน้อย 60 เฟรมต่อวินาที (fps) เนื่องจากความจริงที่ว่ามันเป็นทั้งเกมจังหวะและ เกมแอคชั่นซึ่งการพลาดเครื่องหมายนั้นจะทำให้เกิด "การสะอึก [ที่] อาจส่งผลให้เพลงขาดการซิงค์และรับรู้ประสบการณ์การเล่นเกมที่ไม่ดี" ตาม โยฮานาส.

ทีมงานของ Tango Gameworks ทำสำเร็จได้อย่างไร? สรุปได้อย่างกว้างขวางถึงสามประเด็นหลัก: การตรวจสอบ VRAM อย่างระมัดระวัง การทำงานแบบอะซิงโครนัส และการแคช PSO

ตามที่ Kosuke Tanaka หัวหน้าโปรแกรมเมอร์กราฟิกสำหรับ ไฮไฟรัช, ทีมงานติดตามการใช้งาน VRAM ตลอดทุกขั้นตอนของการพัฒนา แน่นอนว่ารวมถึงการตรวจสอบแต่ละระดับ แต่ยังรวมถึงการใช้ VRAM ของส่วนศิลปะแต่ละส่วนด้วย การขอให้ศิลปินลดการใช้พื้นผิวหรือหน่วยความจำเมชเพื่อให้พอดีกับงบประมาณของเกม นี่ไม่ใช่เรื่องแปลกในการพัฒนาเกมเช่นกัน

ทำงานอะไรใน ไฮไฟรัชความโปรดปรานของมันคือแนวทางศิลปะที่แข็งแกร่ง ดังที่ Tanaka ชี้ให้เห็นว่า: “รูปแบบศิลปะของเราช่วยเราได้เล็กน้อยเพราะเราไม่ต้องการพื้นผิว PBR แบบดั้งเดิม เช่น แผนที่ปกติ ความหยาบ แผนที่หรือแผนที่โลหะ” มันเป็นข้อพิสูจน์ถึงการทำงานกับข้อจำกัดในการสร้างสรรค์ และสิ่งนี้จะมีอิทธิพลต่อความเสถียรของรอบชิงชนะเลิศได้อย่างไร ผลิตภัณฑ์. Johanas กล่าวว่าไม่ใช่เรื่องของขอบเขตที่เล็กลง แต่เป็นเรื่องของการ "ไม่จำเป็นต้องขยายใหญ่ขึ้นโดยไม่มีเหตุผล"

ฉันถามทีมว่าได้เรียนรู้อะไรจาก ไฮไฟรัช มันสามารถนำไปสู่โครงการที่ใหญ่ขึ้นและกว้างขึ้นได้ แต่นั่นไม่ใช่วิธีที่ Tango กำลังเรียนรู้จากเกม อันที่จริง ทีมพัฒนาบอกฉันว่าได้เรียนรู้มากขึ้นเกี่ยวกับการเพิ่มประสิทธิภาพจาก โกสต์ไวร์: โตเกียว, ซึ่งเข้ากับแม่พิมพ์ AAA แบบดั้งเดิมได้มากขึ้น และได้นำแนวคิดเหล่านั้นเข้ามา ไฮไฟรัช, ไม่ใช่วิธีอื่น ๆ

Akito โจมตีศัตรูด้วยเวทมนตร์ใน Ghostwire: Tokyo
Ghostwire: Tokyo เป็นเกมแรกของ TSR ของ Unreal Engine ซึ่งคล้ายกับ FSR 2.0 มาก

“เราได้เรียนรู้ความรู้มากมายเกี่ยวกับวิธีจัดการกับการพูดติดอ่างในเกม ไฮไฟรัช จากประสบการณ์ของเราในการเพิ่มประสิทธิภาพ โกสต์ไวร์: โตเกียวมิยาชิตะบอกฉัน ส่วนใหญ่ก็คือ  การแคช Pipeline State Object (PSO). นี่เป็นคุณสมบัติที่มีอยู่ใน Unreal Engine 4 ที่ช่วยลดการกระตุกโดยการรวบรวมเฉดสีล่วงหน้าก่อนที่คุณจะเริ่มเกม

ปัญหาหลักคือ Unreal Engine 4 ไม่ได้ทำสิ่งนี้โดยอัตโนมัติ ซึ่งนำไปสู่สถานการณ์ที่ Shader ต้องคอมไพล์ในขณะที่คุณกำลังเล่นเกม ซึ่งทำให้เกิดการสะดุด Miyashita กล่าวว่า "สิ่งนี้ส่งผลให้กระบวนการโพสต์และ VFX บางส่วนทำให้เกิดการพูดติดอ่าง" โปรแกรมเมอร์ยังกล่าวอีกว่าการแคช PSO นั้นเป็นทางเลือก ดังนั้นจึงจำเป็นต้องเป็นจุดสนใจเฉพาะสำหรับนักพัฒนา

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

อย่างที่เราเคยเห็นในเกม Unreal Engine 4 อื่น ๆ เช่น สตาร์ วอร์ส เจได: ผู้รอดชีวิต และ เรดฟอล, เอ็นจิ้นไม่ดีมากเกี่ยวกับการปรับขนาดเป็นเธรดจำนวนมากที่มีอยู่ใน CPU สมัยใหม่ อย่างมิยาชิตะ อธิบายว่า: “ความยากในการรองรับมัลติเธรดนั้นขึ้นอยู่กับเอนจิ้นที่ใช้ สถาปัตยกรรม. น่าเสียดายที่ UE4 สั้นไปหน่อยในแง่นี้”

โดยเฉพาะอย่างยิ่ง Unreal Engine 4 ตามที่ผู้พัฒนาระบุว่าสร้างนักแสดง (วัตถุ/ตัวละคร) และวิดเจ็ต (UI และภาพซ้อนทับ) บนเธรด CPU เดียวกันกับเกม นั่นหมายความว่าเมื่อไรก็ตามที่เกมต้องการ เช่น โหลดตัวละครใหม่ มันจะให้ความสำคัญกับเธรดก่อน มิยาชิตะกล่าวว่า "สิ่งนี้อาจส่งผลให้นักแสดงที่ซับซ้อนและการสร้างวิดเจ็ตบล็อกเธรดของเกมเป็นเวลานาน" นั่นคือการพูดติดอ่าง

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

หนทางข้างหน้าสำหรับพอร์ตพีซี

Layla ปกป้องตัวเองด้วยร่มเงาใน Redfall

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

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

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

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

ไม่ยากที่จะดูว่าทำไมจึงมีปัญหาบนพีซีเมื่อพิจารณาจากบริบทนั้น แต่หวังว่าจะมีการเปิดตัวที่ขัดเกลากว่านี้

บทความนี้เป็นส่วนหนึ่งของ ReSpec – คอลัมน์รายปักษ์ที่มีการสนทนา คำแนะนำ และการรายงานเชิงลึกเกี่ยวกับเทคโนโลยีเบื้องหลังเกมพีซี

คำแนะนำของบรรณาธิการ

  • ฉันพยายามหวนนึกถึงมรดกที่ถูกลืมของ Halo ในฐานะแฟรนไชส์ ​​​​Mac — และมันก็เป็นหายนะ
  • พอร์ตพีซีที่แย่ที่สุดตลอดกาล — และทำไมพอร์ตถึงแย่ขนาดนี้
  • Star Wars Jedi: Survivor กำลังถูกรีวิว-ระเบิดบน Steam ว่าเป็นพอร์ตพีซีที่ 'ไร้สาระ'
  • Unreal Engine 5 จัดการกับปัญหาที่ใหญ่ที่สุดในเกมพีซีได้อย่างไร
  • AI กำลังจะมาสำหรับเกมพีซีของคุณ แต่คุณควรตื่นเต้น ไม่ต้องกังวล

หมวดหมู่

ล่าสุด

ตัวอย่าง 'Middle-Earth: Shadow of War'

ตัวอย่าง 'Middle-Earth: Shadow of War'

ต่อยอดความสำเร็จของ เงาแห่งมอร์ดอร์ผู้พัฒนา Mon...

อันดับพลังของ 'Game of Thrones': S7E5, 'Eastwatch'

อันดับพลังของ 'Game of Thrones': S7E5, 'Eastwatch'

ตามหัวข้อเลย การเมืองเข้า. เกมบัลลังก์ ได้รับกา...

ExpressVPN เทียบกับ IPVanish: VPN ไหนดีกว่าในปี 2022?

ExpressVPN เทียบกับ IPVanish: VPN ไหนดีกว่าในปี 2022?

มีผู้ให้บริการ VPN มากมายหลายรายซึ่งทำให้รู้ VP...