Wednesday, July 26, 2006

Physx -> A Physics Processing Unit!!

วันนี้ผมได้มีโอกาสเข้าไปใน Tomhardware เพื่อหาข้อมูล
เกี่ยวกับ Windows on Go (USBLive) เหมือนหับตัว Usbuntu
น่ะครับ แล้วก็ได้เห็นกระทู้ที่พูดถึงการ์ดตัวนี้ครับ Physx
ก่อนอื่นผมขอตั้งชื่อการ์ดใหม่ตัวนี้ว่า "การ์ดฟิสิกส์" นะครับ และ
คาดว่าในปีสองปีนี้ มันจะเริ่มเข้ามามีบทบาทใหเครื่อง PC ของ
เรามากขึ้นครับ
แล้วมันคืออะไรน่ะเหรอครับ? มันก็คือ หน่วยประมวลผลการ
คำนวณเฉพาะงานด้านฟิสิกส์ของโปรแกรมครับ ทาง ageia เขา
จะเน้นไปในทางเกมครับ คือลองนึกดูนะครับ เรามี cpu ไว้ประมวล
ผลค่าต่างๆในเกมใช่มั้ยครับ แล้วเราก็มี gpu (การ์ดจอยุคปัจจุบัน)
ไว้คอยคำนวณงานด้านกราฟฟิก อย่างเช่นสมการที่เกี่ยวกับการ
เรนเดอร์พวกภาพ 3D ไปออกหน้าจอ ซึ่งงานพวกนี้ได้รับการรองรับ
เป็นอย่างดีจากพวก api อย่าง directx หรือ opengl แต่งานด้าน
ฟิสิกส์โดยตรงนั้น ยังเป็นงานที่ cpu ต้องมารับเคราะห์อยู่ครับ
ซึ่งสมการฟิสิกส์แต่ละตัวถ้านำมาคำนวณกันจริงๆนี่ เล่นเอา cpu
ตายโหงเลยนะครับ ผมได้ยินมาว่า cpu ยุคปัจจุบันรองรับ object
algorithm ได้ประมาณ 2-3พัน objectเอง แต่เจ้าการ์ดฟิสิกส์ใหม่
นี้มันรองรับ object ได้ตัง 500,000 object เลยครับ!
แล้วที่มันมีออกมา จะเห็นผลลัพธ์ของมันยังไง? ก็ลองนึกแบบนี้ดูนะครับ
เกมยุคเก่า > เราวิ่งเอาจรวดมายิงใส่กัน ตัวละครตายห่า แต่ map แค่
เปลี่ยน texture ไปเป็นรอยไหม้...
เกมยุคใหม่ที่เน้นเรื่องฟิสิกส์ > เราเอาจรวดลองยิงอัดกำแพงดู
ตูม!! กำแพงทะลุเป็นรูอย่างสมจริง ไอ๊ส่วนที่เป็นกำแพงนั้นลอยไปตาม
แรงอัดของระเบิดที่เกิดขึ้น แตกเป็นเศษเล็กเศษน้อย แล้วแตกกระจาย
ไปตามทิศต่างๆตามหลักการเรื่องการระเบิดของวัตถุ... ศัตรูที่อยู่อีกฝั่ง
ตกใจที่จู่ๆมีเศษอิฐลอยผ่านหัวมันไป งงซิครับ!?
คืิเริ่มเห็นภาพแล้วใช่มั้ยครับ ว่ามันเพิ่มความรู้สึกในการเล่นเกมได้มาก
แค่ไหน มันช่วยเพิ่มความรู้สึกสมจริงเข้าไปในตัวเกมอย่างชัดเจน
ฟังแล้วก็ดูเว่อร์ๆดีนะครับ แต่มาถึงคำถามสำคัญของคนที่ซื้อมันมา
ใช้กันดีกว่านะครับ

- ผมซื้อมาแล้ว เกมที่ผมเล่นมันจะเร็วขึ้นรึเปล่า?
ผมขอตอบตรงนี้เลยนะครับว่า "ไม่เลย"... เพราะมันทำงานในด้านฟิสิกส์
ซึ่งไอ๊ความเร็วที่คุณต้องการนั้นมันอยู่ที่ cpu ของคุณจะประมวลผลงาน
ของเอนจิ้นเกมได้เร็วมั้ย คุณมี memory เพียงพอจะรองรับ object ที่เกิด
อยู่ในฉากนั้นและสถานการณ์ขณะนั้นรึเปล่า คุณมีการ์ดจอที่แรงเพียงพอ
กับการคำนวณtexture&shaded pixel ที่เกิดขึ้นในภาพที่คุณกำลังมอง
ขณะนั้นรึเปล่า... นี่ตะหากครับสิ่งที่คุณควรพิจารณาถ้าอยากให้เกมที่คุณ
เล่นมันไม่"กระตุก"

- จำเป็นต้องมีมันตอนนี้มั้ย?
ไม่จำเป็นเลยซักนิดเดียวครับ ยกเว้นแต่คุณจะนำมันมาคำนวณโปรแกรม
จำลองผลทางวิทยาศาสตร์ของคุณที่เต็มไปด้วยสมการเกี่ยวกับฟิสิกส์
เต็มพรืดครับ
สิ่งที่ผมนำมาพูดนี้เป็นการ์ดที่มีอยู่เจ้าเดียวในตลาดตอนนี้ครับ แถมสนน
ราคาก็ล่อไปตั้ง 300US$ นะครับ แพงกว่าคอมที่ทำงานธรรมดาในตลาด
ได้ซะอีกแน่ะครับ

แต่อย่างที่ผมได้บอกไปแต่ต้นครับ ว่าในปีสองปีนี้ การ์ดตัวนี้จะเริ่มเข้ามา
มีบทบาทครับ เมื่อ software ต่างๆเริ่มรองรับความสามารถตรงนี้ได้ ตอน
นั้นความจำ้เป็นก็จะเริ่มเพิ่มขึ้นมา และราคาของผลิตภัณฑ์ลดลงมาด้วย
นี่เป็นเรื่องที่น่ายินดีครับ เพราะนี่เป็นนิมิตหมายที่จะบอกว่า ในอนาคตอัน
ใกล้นิดเดียวนี้ เราจะมีเกมที่พัฒนาไปยังอีกขั้นของประสบการณ์การเล่นครับ
จำ 3dfx'voodoo ได้มั้ยครับ? เค้าคือผู้ปฏิบัติวงการเกมด้วย การนำเสนอการ์ด
จอแบบ 3 มิติ ทำให้เราได้เล่นเกมที่เรนเดอร์ด้วย 3 มิติกัน ซึ่งได้กลายเป็น
มาตรฐานของอุตสาหกรรมในยุคปัจจุบันไปแล้ว (แม้ว่า 3dfx จะตายไปจาก
ตลาดนานแล้วก็ตาม) Aeiea'Physx ก็เช่นเดียวกันครับ จะกลายเป็นผู้เปิด
ประตูสู่การปฏิวัติวงการเกมและงานapplication สมัยใหม่ให้ยิ่งสมจริงมากขึ้น
ครับ ขอบคุณที่อ่าน...

1 comment:

Anonymous said...

ก็คือถ้าเราอยากให้เกมเก่าๆเร็วขึ้น ไม่กระตุก ไอ้การ์ดตัวที่ว่านี่ก็ไม่มีผลบวกแต่อย่างใด
แต่ถ้าเราต้องการเล่นเกมใหม่ๆที่ยังไม่ออก เราก็ต้องซื้อไอ้การ์ดตัวที่ว่านี่+ซื้อเครื่องใหม่ด้วยสินะ

...อะไรวะเนี่ย