กระโดดไปยังแผงนำทาง

Inside Direct3D 23 December 2006 6:00 pm

บันทึกโดย Mr. PeeTai ใน : E-Book , ตรวจย้อนกลับ

เล่มนี้เก่าหน่อยนะคงไม่ว่ากัน ที่ว่าเก่าก็เพราะว่าเดี๋ยวนี้ไมโครซอฟท์ได้โอน Direct3D เข้าไปไว้เป็นส่วนหนึ่งของ DirectX เป็นที่เรียบร้อยแล้ว แต่ผมก็เชื่อว่าโดยพื้นฐานของการทำอะไร ๆ ที่เกี่ยวกับการจัดการภาพสามมิติล่ะก็ เจ้า DirectX ก็น่าจะมีพื้นฐานมาจาก Direct3D เช่นกัน

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

ก่อนที่จะมี Direct3D หรือ DirectX นะ ผมยังจำได้เลยว่าการที่จะแสดงผลจุดสีแค่จุดเดียวบนจอภาพได้ ไม่ใช่ง่าย ๆ เลยล่ะ เพราะผมต้องเรียนรู้การขอ Interrupt CPU เพื่อเปิดโหมดกราฟิกส์ ทั้งแบบ CGA, XGA, EGA, VGA แล้วตอนหลังก็เปิดได้ระดับ VESA

จากนั้นก็ต้องจองพื้นที่หน่วยความจำใน RAM ให้มีขนาดหน่วยความจำเท่ากับ Video RAM เพื่อจะเขียนข้อมูลลงผืนหน่วยความจำดังกล่าว แล้วส่งปรู๊ดเข้า Video RAM เพื่อไปแสดงผลต่อไป

คิดว่าเด็กสมัยนี้คงไม่รู้หรอกว่า Video RAM คืออะไร มันก็คือผืนหน่วยความที่ CPU จะอ่านเพื่อใช้แสดงผลบนหน้าจอคอมพิวเตอร์อ่ะครับ

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

สมัยนั้นการเขียนเกมนะ ลำบากมากเลยล่ะ เพราะ MultiThreading บนระบบวินโดวส์ยังไม่มี ตอนนั้นมีแต่ MS-DOS การจะแสดงผลภาพกราฟิกส์ไปด้วยแล้วบรรเลงเพลงไปด้วยน่ะ วุ่นบรมเลย ทำลูปจนงงไปหมด

จะเขียนด้วย Turbo C++ ก็ไม่ได้ เพราะมันไม่เหมาะ แล้วตอนนั้นเขาใช้อะไรรู้เปล่า? เขาก็ใช้ WatCom C++ ไง เจ้าคอมไพเลอร์ตัวนี้นะเปิด Protect Mode ได้ด้วยล่ะ เล่าแล้วยาวเอาเป็นว่าหยุดดื้อ ๆ แล้วก็โหลด e-book ดีกว่าครับ

Inside Direct3D

ป.ล. เดี๋ยวพวกทำเกมสบายกันแล้ว มี Application Framework ดี ๆ อย่าง DirectX ก็ทุ่นแรงไปอักโขเลยล่ะ ดูเหมือนไมโครซอฟท์จะเก่งกาจเรื่องแบบนี้นะ

Technorati Tags: , , , ,

ความคิดเห็น»

1. SmileSquare - 25 December 2006

โหดอีกเรื่อง programming เป็นเรื่องที่น่าสนใจ ผมก็ชอบครับ แต่ขี้เกียจเหลือหลาย

2. xinexo - 28 December 2006

Direct3D เป็นของ DirectX มาตั้งแต่แรกแล้วนะครับ ไม่ได้มีการโอนแต่อย่างใด

ถ้้าโอนจริงๆ คือตอนนี้ Direct3D ได้ถูกรวมกับ DirectDraw แล้วเรียกเป็น DirectGraphics ครับ (ซึ่งก็นานแล้ว)

3. พี่ไท้ - 28 December 2006

การสร้างซอฟต์แวร์มีหลายแขนงมากเลยครับคุณ SmileSquare เราคงเรียนไม่ได้ทุกอย่างหรอก อย่างผมเองก็เน้นไปทางด้าน Natual Language Processing ซะส่วนใหญ่ เรื่องกราฟิกส์อ่ะนะ อ่อนโคตร ๆ เหมือนกัน

ผมไม่รู้จริงอ่ะครับคุณ xinexo งานนี้เชื่อตามคุณ xinexo ครับ


*
เพื่อพิสูจน์ว่าคุณเป็นมนุษย์ (ไม่ใช่หุ่นยนต์) ดังนั้น กรุณาใส่รหัสป้องกันซึ่งแสดงอยู่ด้านล่างด้วยครับ
Anti-Spam Image