ไดเรกต์เอกซ์

จากวิกิพีเดีย สารานุกรมเสรี

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

ส่วนประกอบ[แก้]

โดยทั่วไปแล้ว ไดเรกต์เอกซ์ ประกอบด้วยส่วนย่อย 5 ส่วน (อาจไม่เหมือนกันเปลี่ยนแปลงไปตามแต่ละเวอร์ชัน) คือ

  • DirectDraw (DDraw) ส่วนสำหรับการวาดภาพ 2 มิติ
  • Direct3D (D3D) ส่วนสำหรับการวาดภาพแบบ 3 มิติ แบ่งเป็น 2 ประเภทคือ
    • Direct3DRM (Retained Mode) (D3DRM) ส่วนการวาดภาพ 3 มิติ อย่างง่าย
    • Direct3DIM (Immediate Mode) (D3DIM) ส่วนการวาดภาพ 3 มิติ อย่างยาก
  • DirectInput (DXInput) ส่วนสำหรับการรับข้อมูลจากผู้ใช้ เช่น keyboard mouse และ joystick
  • DirectSound (DXSound) ส่วนสำหรับการประมวลผลเสียง และสร้างเสียง
  • DirectPlay (DXPlay) ส่วนสำหรับการทำงานสำหรับผู้เล่นหลายคนผ่านระบบเครือข่าย

ตัวอย่าง[แก้]

สร้างสามเหลี่ยมที่มี สีแดง เขียว และ น้ำเงิน

// Render a triangle
D3DTLVERTEX v[3];
v[0] = D3DTLVERTEX (D3DVECTOR (160, 50,0) ,1,D3DRGB (1,0,0) ,D3DRGB (0,0,0) ,0,0) ;
v[1] = D3DTLVERTEX (D3DVECTOR (240,200,0) ,1,D3DRGB (0,1,0) ,D3DRGB (0,0,0) ,0,0) ;
v[2] = D3DTLVERTEX (D3DVECTOR ( 80,200,0) ,1,D3DRGB (0,0,1) ,D3DRGB (0,0,0) ,0,0) ;
 
D3DDevice->BeginScene () ; 
D3DDevice->DrawPrimitive (D3DPT_TRIANGLELIST, D3DVT_TLVERTEX, &v, 3, NULL) ; 
D3DDevice->EndScene () ;

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

DirectX 11[แก้]

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

Project Alky[แก้]

โปรเจกต์แอลกี้ได้เริ่มขึ้นเมื่อไมโครซอฟเปิดตัว DirectX 10 เพื่อแก้ไขให้ DirectX 10 สามารถใช้ได้กับ วินโดวส์เอกซ์พี, ลินุกซ์ และเครื่องสเปคต่ำ โดยตัวโปรเจกต์เป็นฟรีแวร์ โปรเจกต์แอลกี้พัฒนาโดย Cody Brocious อายุ 19 ปี

ดูเพิ่ม[แก้]

แหล่งข้อมูลอื่น[แก้]