คู่มือเกมแลค › ปัญหาที่เกิดกับบางคนเท่านั้น
หน่วยความจำ/VRAM ไม่พอจนสตรีมล้มเหลว Memory / VRAM exhaustion
ID สาเหตุ pt-vram · ผู้รับผิดชอบหลัก พัฒนาไคลเอนต์ (ทีมพัฒนาเกม) · ร่วมกับ ภายนอก (ภายนอก)
เปิดการ์ดในฉบับหลักที่มีภาพและการทดลอง →
ถ้าสองไคลเอนต์แบ่งหน่วยความจำกราฟิกกันใช้ จะไม่มีที่ให้โหลดโมเดลหรือเท็กซ์เจอร์ที่ต้องใช้ใหม่ บางส่วนจึงไม่ถูกวาด
ทำไม สองไคลเอนต์แบ่ง VRAM และ RAM กันใช้ บางครั้ง OS ลดโควตาหน่วยความจำกราฟิกของหน้าต่างเบื้องหลังก่อน → ผลคือ เอนจินโหลดโมเดลหรือเท็กซ์เจอร์ใหม่ไม่ได้ หรือเอาออกแล้วโหลดใหม่ซ้ำไปมา → บนหน้าจอ NPC โผล่ช้า ภาพเบลอ หรือมองไม่เห็น, กระตุก
- อาการ
- มองไม่เห็น/ตัวผี, กระตุก
- ปัจจัย
- การหยุดชะงัก
- ใครเจอ
- ไคลเอนต์เดียวในเครื่องที่เปิดหลายจอ
- เกิดเมื่อไร
- ระหว่างเดินทาง/ย้ายแมพ, ตอนคนแห่มารวมกัน
- ผู้รับผิดชอบ
- ผู้รับผิดชอบหลัก พัฒนาไคลเอนต์ (ทีมพัฒนาเกม) · ร่วมกับ ภายนอก (ภายนอก)
- งานฝั่งทีมพัฒนาเกม
- ปรับคุณภาพอัตโนมัติให้อยู่ในงบหน่วยความจำ, แสดงโมเดลทดแทนเมื่อโหลดล้มเหลว
- งานฝั่งภายนอก
- แนะนำผู้เล่นที่เปิดสองไคลเอนต์พร้อมกันให้ลดคุณภาพกราฟิกหรือใช้โหมดสเปกต่ำ, แจ้งสเปก VRAM และ RAM ที่แนะนำ
- บนกราฟ
- ชนเพดานแล้วแบนราบ · ปริมาณการใช้ dedicated GPU memory แยกตามโปรเซส
- จุดที่ต้องดู
- ใน Task Manager บน PC ของผู้เล่น เพิ่มคอลัมน์ Dedicated GPU memory ในแท็บ “Details” แล้วเทียบผลรวมการใช้ของสองไคลเอนต์กับความจุ VRAM ของการ์ดจอ ฝั่งเกมให้บันทึกงบ (Budget) และปริมาณที่ใช้อยู่ (CurrentUsage) ที่ QueryVideoMemoryInfo ของ DXGI รายงาน
- สัญญาณว่าใช่
- ผลรวมการใช้ของสองไคลเอนต์แบนราบใกล้ความจุ VRAM และการโหลดโมเดลหรือเท็กซ์เจอร์ล้มเหลวกระจุกในช่วงที่ปริมาณที่ใช้อยู่เกินงบ ถ้าลดคุณภาพหรือเปิดตัวเดียว อาการจะหายไป
- สัญญาณว่าไม่ใช่
- VRAM ยังเหลือแต่ยังมองไม่เห็น: น่าจะเป็น “การเข้าถึงไฟล์แคช/แอสเซ็ตพร้อมกันจนชนกัน” หรือ “ตัวเลือกการแสดงผลต่างกัน”
- วิธีตรวจ
- ตรวจที่สภาพแวดล้อมฝั่งผู้เล่น
แหล่งอ้างอิง
- Residency (Direct3D 12) Microsoft
งบ video memory อาจลดลงมากเมื่อสลับไปแอปอื่น และถ้าเกินงบจะหยุดชะงักหรือสร้าง resource ไม่สำเร็จ ถ้าไม่ได้อยู่ foreground ส่วนที่จองไว้ก็ไม่รับประกัน - GPUs in the task manager Microsoft
ถ้าเพิ่มคอลัมน์ในแท็บ Details ของ Task Manager จะเห็นการใช้ dedicated และ shared GPU memory แยกตามโปรเซส dedicated GPU memory คือ VRAM ของการ์ดจอ - DXGI_QUERY_VIDEO_MEMORY_INFO structure (dxgi1_4.h) Microsoft
Budget (งบ video memory ที่ OS กำหนด) และ CurrentUsage (ปริมาณที่แอปใช้อยู่) ถ้าใช้เกินงบอาจเกิดอาการกระตุก
สาเหตุที่ควรดูประกอบ
ชั้นเดียวกัน: ปัญหาที่เกิดกับบางคนเท่านั้น
สาเหตุจากชั้นอื่นที่ทำให้เกิดอาการเดียวกัน (มองไม่เห็น/ตัวผี)
ดูการ์ดในฉบับหลักที่มีภาพและการทดลอง