DICE ได้ปล่อยอัพเดตล่าสุดให้กับ Battlefield 4 เพื่อรองรับการใช้งาน Mantle API ซึ่งจะช่วยเพิ่มประสิทธิภาพให้กับ PC ที่ใช้การ์ดจอ AMD
Johan Andersson ผู้อำนวยการทางด้านเทคนิคของ DICE กล่าวว่า Mantle นั้นเป็นส่วนติดต่อด้านกราฟฟิกระดับล่าง (low-level graphic API) ที่เขาได้ทำงานร่วมกับ AMD อย่างใกล้ชิดเป็นเวลากว่าสองปี ซึ่งช่วยเปลี่ยนแปลงและปรับปรุงวิธีการเขียนโปรแกรมและใช้งาน GPU ให้สามารถรีดประสิทธิภาพออกมาได้ดีขึ้น การรัน Battlefield 4 บน PC ด้วย Mantle จะช่วยลดการใช้งาน CPU ลงได้อย่างมีนัยสำคัญ, กระจายงานไปยัง CPU หลายคอร์ได้ดีขึ้นและลด overhead หลายๆ ส่วนลงได้ ( อ่านรายละเอียดเพิ่มเติมเกี่ยวกับ Mantle )
ผลที่ได้จากการเปิดใช้งาน Mantle จาก การทดสอบโดย DICE ช่วยให้ประสิทธิภาพของเกมดีขึ้นโดยวัดได้ตั้งแต่ 14,25 จนไปถึง 58 เปอร์เซ็นต์แตกต่างกันไปตามการตั้งค่ากราฟฟิกและสเปกเครื่องที่ใช้
เครื่องที่สามารถเปิดใช้งาน Mantle บน Battlefield 4 ได้นั้นต้องติดตั้งไดรเวอร์การ์ดจอ Catalyst เวอร์ชั่น 14.1 beta, ใช้การ์ดจอ AMD Radeon สถาปัตยกรรม GCN (Graphic Core Next) และรันบนระบบปฏิบัติการ Windows 7 ที่เป็น 64-bit ขึ้นไป โดยสามารถเลือกเปิดใช้งานได้ที่หน้า Option ของเกมครับ
ที่มา - GameSpot
Comments
ลองกับ 7970 แล้วรู้สึกไหลลื่นขึ้นหน่อยตอนเล่น eyefinity 3จอ(เพราะถ้าเล่นจอเดียวมันลื่นมากอยู่แล้ว) แต่ไม่ได้วัดเป็นตัวเลข
นั่งรอตั้งนาน กดรีเฟรชหน้าไดร์เวอร์ตัว beta ของ AMD มันเพิ่งออกเลยใช่ไหมครับเนี้ยสำหรับ 14.1
ในเกมสั่งเปิดดูค่า FPS ได้นะครับ ลองเรียก console แล้วใช้คำสั่ง PerfOverlay.DrawFps 1
คำแนะนำ FPS ไม่จำเป็นต้องมีตัวเลขสูง ๆ จนเกินจำเป็น มันควรมีค่าเท่ากับค่า refresh rate ของจอ ซึ่งปกติจะตั้งกัน 60 (ผม set ให้มัน refresh rate วิ่งที่ 75 เพราะผมเห็นความแตกต่างของภาพระหว่าง 60 กับ 75 ส่วนใครแยกไม่ออกก็เอาแค่ 60 พอครับ)
แต่ถ้าใช้คำสั่งไม่สะดวก ลองสร้างไฟล์ชื่อ user.cfg ไว้ใน root ของตัวเกม แล้วนำบรรทัดเหล่านี้ไปใส่ไว้ก็ได้ครับ
PerfOverlay.DrawFps 1GameTime.MaxVariableFps 75
สำหรับคำสั่ง GameTime.MaxVariableFps 75 จะเป็นการบังคับไม่ให้การ์ดจอทำ FPS เกิน 75 เพราะจอเรามี refresh rate ที่ผตั้งไว้ 75
ทำตามนี้ภาพจะไหล่ลื่น (ถ้าทำ FPS ได้เท่านี้นะ)
แต่กรณีที่ตัว Monitor Property ไม่มีให้เลือก refresh rate 75 ก็ลองเปลี่ยนไดร์เวอร์ หรือลงโปรแกรมที่มันทำให้จอบางตัวทำ refresh rate ไปถึงได้ครับ (ผมใช้โปรแกรมชื่อ CRU.exe ส่วนวิธีการหาใน google ได้ครับ)
แล้วจะพบว่าการทำแต้ม การยิงนั้นดีขึ้นผิดหูผิดตาเลยครับ
เพจตัวอย่างผลงานถ่ายภาพ / วีดีโอ
ขอบคุณครับ จะได้ลองดู เพราะถ้าใช้frap แล้วรู้สึกเลยว่ามันหน่วงมากๆ
ส่วนเลข fps ผมไม่เคยหวังถึง 60 กับ eyefinity 3จอหรอกครับ แต่แตะ 30ขึ้นไปก็ถือว่าลื่นแล้วล่ะ แลกเอากับมุมมองที่กว้างมากๆเอา
มุมมองเทียบกับ Oculus Rift แล้วอันไหนกว้างกว่าครับ? ผมยังสงสัยอยู่เลยว่า Oculus Rift มันความละเอียดต่ำขนาดนั้นจะออกมาดีเหรอครับ - -"
มุมมองกว้างประมาณนี้ครับ จากfarcry3 นะ
ส่วนBF4 ยังไม่ได้ทำscreen shotเลย แต่ลองใส่user configไว้โชว์FPSแล้ว ปรับ eyefinity แบบhigh บน mantle APIได้ 45++fps ค่อนข้างพอใจครับ
มาเป็นภาพแบนๆ นี่มองยากเหมือนกันนะครับเนี่ย แต่ดูแล้วคงเล่นสนุกกว่าจอเดียวแน่ๆ
จอวางจริงวางโค้งๆครับ มันจะพอดีสายตา ภาพตรงมุมๆมันจะยืดออกพอดี เล่นแล้วติดเลยล่ะครับ ไม่อยากไปเล่นจอเดียวอีกเลย
เข้าใจเรื่องสามจอวางเรียงมุมกันครับ แต่พอดีภาพที่ท่านส่งมาเปิดบนจอผมยังไงมันก็แบน (T^T)
แต่ก่อนผมก็ไม่ได้สนใจ fps มากครับ ก็แค่ดูแล้วไม่กระตุกจนรำคาญ และเล่นสนุกก็พอใจแล้ว แต่พบว่าพอเราหาทางทำให้ fps มันเท่ากับ refresh rate แล้ว จะพบว่า เกมเล่นสนุกขึ้นอีกหลายเท่า จากที่ทำคะแนนได้ไม่มากนักกลายเป็นขึ้นมาติด 1 - 10 ของทุกรอบตลอด
แต่ถ้าทำ eyefinity อันนี้ผมไม่รู้เพราะไม่เคยทำเลย แต่ก็คงกินแรง gpu เอาเรื่อง อย่างไงถ้าไม่แคร์เรื่อง effect ของภาพ ก็ให้ปรับทุกอย่างให้ต่ำสุดให้หมดครับ แต่เปิด Mesh quality ไว้ตั้งแต่ระดับกลางขึ้นไป รวมไปถึง Lighting quality ก็ตั้งแต่กลางขึ้นไปด้วยครับ นอกนั้นปรับ low ได้หมดภาพจะไม่น่าเกลียด ถ้าอยากได้ความชัดเจนมาก ๆ จริง ๆ ให้ไปเพิ่ม Resolution scale ให้สูงขึ้นแทน แต่ค่าตัวนี้กินทรัพยากรมาก ๆ เลยนะครับ
อันนี้เป็นบรรทัดการตั้งค่าในไฟล์ user.cfg ทั้งหมดของผม ซึ่งบางค่าผมก็ไม่รู้ว่ามันคืออะไร รู้แค่บางค่าครับ แต่ผมก็ทำ fps ไม่เคยต่ำกว่าค่า 75 ที่ตั้งไว้เลย
PerfOverlay.DrawFps 1
PostProcess.BlurMethod 0
PostProcess.DofMethod 0
PostProcess.DynamicAOEnable 0
PostProcess.DynamicAOMethod 0
Render.VSyncFlashTestEnable 0
RenderDevice.Dx11Enable 0
RenderDevice.ForceRenderAheadLimit 1
RenderDevice.TripleBufferingEnable 0
RenderDevice.VSyncEnable 0
WorldRender.DxDeferredCsPathEnable 0
WorldRender.FxaaEnable 0
WorldRender.MotionBlurEnable 0
WorldRender.SpotLightShadowmapEnable 0
WorldRender.SpotLightShadowmapResolution 256
WorldRender.TransparencyShadowmapsEnable 0
WorldRender.PlanarReflectionEnable 0
GameTime.MaxVariableFps 75
เพจตัวอย่างผลงานถ่ายภาพ / วีดีโอ
อันนี้คงต้องแล้วแต่คนชอบคับ ระหว่าง no-tearing กับ better response time/less input lag
ให้ดีที่สุดคงเป็นแบบคุณ Fasndee ครับ ที่ใช้จอ refresh rate สูงๆ (75/100/120Hz) แล้วเปิด vsync
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
เรื่อง vsync จากที่ได้ทดสอบด้วยตัวเองมามันจะประมาณว่า
ถ้า refresh rate นั้นต่างกับ fps ที่ทำได้มาก ๆ การเปิด vsync จะหน่วง และกินทรัพยากรอย่างมาก บางเกมถึงขั้นทำให้ภาพที่ได้ไม่ตรงกับข้อมูลจริง ๆ บน server (กรณีเล่นเกม online)
แต่ถ้าเราทำ refresh rate ได้เท่ากับ fps แล้ว การเปิด vsync สำหรับเครื่องบางเครื่อง (แค่บางเครื่องนะครับ) ก็ไม่จำเป็นต้อนเปิดครับ อาการภาพขาด ภาพเหลื่อมจะหายไปเอง แต่ก็พบว่าบางเครื่องยังต้องเปิดอยู่ แต่ถ้าทำ refresh rate ได้ใกล้เคียงกับ fps การเปิด vsync แทบจะไม่ทำให้ fps ลดลงเลยซึ่งต่างจากเงื่อนไขในย่อหน้าก่อนหน้านี้มาก
กรณี refresh rate 120 Hz ผมคิดว่าเป็นการยาก (จนผมเชื่อว่าเป็นไปไม่ได้) ที่ตาของมนุษย์จะรับรู้ความแตกต่างในระดับนั้น ส่วนใหญ่ 120 Hz ออกแบบมาสำหรับการแสดงผล 3D เพราะเหมือนต้องวิ่ง 2 รอบหรือไงเนี้ยแหละ ซึ่งมันจะออกมาได้เท่ากับ 60 Hz แต่หลายคนนิยมซื้อจอแพง ๆ หน่อยระดับ 120 Hz แต่ไม่ได้ซื้อมาใช้ 3D แต่ซื้อเพื่อทำ refresh rate สูง ๆ ให้ภาพไหลลื่น ซึ่งการทำ fps ตาม refresh rate ระดับนั้นโดยได้ภาพสวย ๆ เปิดเทคนิคการแสดงผลภาพสูง ๆ นั้นผมพบว่าทำได้ไม่มีทางนิ่งพอครับในระดับ 120 Hz ยกเว้นคุณจะใช้การ์ดจอหลายใบ
เพจตัวอย่างผลงานถ่ายภาพ / วีดีโอ
ผมพูดถึงกรณี input lag นะครับ ซึ่งเป็นเรื่องปกติอยู่แล้วสำหรับ vsync
Edit: อ่าน comment ที่ 2 ของคุณแล้ว เห็นว่าคุณใช้ FPS Cap(ซึ่ง input lag จะน้อยกว่า) แต่ไม่ได้เปิด vsync เป็นอันว่าประเด็นผมตกไปนะครับ
Edit2: ขอแก้หน่อยที่ว่า 100Hz/120Hz แล้วเปิด vsync จริงๆไม่ควรเปิดนะครับ เพราะ FPS ที่ได้น้อยกว่า refresh rate อยู่แล้วยังไงก็ไม่เกิด tearing หรือเกิดน้อยมาก
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
120Hz เขาเอาไว้รันภาพ 3D คือเป็นสลับเฟรมระหว่างภาพของตาซ้าย และภาพของตาขวา ด้านละ 60Hz ล่ะครับ
ส่วนที่จะเอาไปรันเฟรมเรทสูง ๆ นี่ ถ้าเครื่องไม่แรงจริง เกมที่ออกในปีเดียวกันไม่ว่าสเปคสูงขนาดไหนก็ไม่พอกับเฟรมเรทระดับสูงกว่า 60FPS ที่คุณภาพสูงสุดน่ะครับ (ฮา) เผลอ ๆ ใช้ multi-gpu อาจจะได้เฟรมเรทลดลงด้วย 555
ที่จริงเกมคอนโซลสมัยก่อนเปิด V-Sync เป็นมาตรฐานแทบทั้งนั้นเลยครับ
Catalyst beta 14.1 เหมือนจะเพิ่งออกวันนี้ครับ ที่ Gamespot ฝรั่งบ่นกันใหญ่เลยว่าอัพเดตมาเกือบ 3 วันแล้ว ไดรเวอร์ยังไม่ตามมาซักที
ผมลองกับ Radeon HD 7850 แล้วภาพมันสะอึกแฮะ คือช่วงลื่นมันก็ลื่นขึ้นช่วงจะกระตุกมันก็อืดซะ คงเป็นเพราะไดรเวอร์ยังไม่สมบูรณ์ (ที่เคยยิงใครไม่ค่อยได้อยู่แล้วเลยหนักกว่าเดิมอีก = =" คงต้องปิดไปก่อน)
Achievement Unlocked: Being a Blognone's Writer
แต่เจอระเบิดเยอะๆ นี่ Mantle ชนะ DX11 ขาด แต่ยังมีร่วงทั้งๆที่ไม่ได้ทำอะไร -..-
ลองแล้วเป็นเหมือนที่คุณ iPongHD บอกเลยแฮะ สงสัยต้องรอไดร์เวอร์ กับ patch เกมมันเสถียรกว่านี้
เพจตัวอย่างผลงานถ่ายภาพ / วีดีโอ
ของผมภาพมันสะอึกชัดๆ ตอนมีเอฟเฟคกระสุนยิงเฉี่ยว จะเล็งสวนใครคืนลำบากมากมาย รออัพเดตไดรเวอร์ต่อไป -..-
Achievement Unlocked: Being a Blognone's Writer
ใช้โปรแกรม Battlefield 4 Settings Editor ช่วยตั้งค่าตัวเกมส์ได้สะดวกขึ้น
http://battlefield.realmware.co.uk/bf4-settings-editor/
ตกใจ ลืมปรับ core/mem ให้เท่าเดิมว่าทำไมมันไม่ลื่นเลย -..-
ผมไม่ได้เล่น B4 เลยไม่มีให้ลอง แต่ไปลองเล่น Star Swarm ของ Oxide Game แล้วพบว่า ... เฟรมเรทลดครับ (เฉลี่ย DX 16fps -> Mantle 10fps) 555 เป็นไปได้ว่าซีพียูผมห่วยเกินน่ะ
ใช้ Phenom III X4 924 กับ Radeon HD7790 ครับ
แล้วเทคโนโลยีการ์ดจอก็เริ่มแยกทางกันอีกครั้ง
เราต้องเลือกข้างนะครับ (จากใจคนซื้อ GCN มาแบบงงๆ รู้ตัวอีกทีก็เปิด Mantle ได้เฉย)
Achievement Unlocked: Being a Blognone's Writer
มีแต่ Intel นี่สิครับ รู้สึกอนาถใจตัวเอง orz
พรรคค่ายทางเลือกก็งี้แหละครับ :PAchievement Unlocked: Being a Blognone's Writer