อ่าน 3 นาที
ปีก
WinG (อ่านว่า วิน จี ) เป็น อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน ที่ออกแบบมาเพื่อให้ประสิทธิภาพกราฟิกเร็วขึ้นบน ระบบปฏิบัติการ Windows 3.
ปีก

WinG (อ่านว่าวิน จี ) เป็นอินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชันที่ออกแบบมาเพื่อให้ประสิทธิภาพกราฟิกเร็วขึ้นบนระบบปฏิบัติการWindows 3.x ในตอนแรกมันถูกวางตำแหน่งให้เป็นวิธีที่ช่วยให้นักพัฒนาเกมสามารถพอร์ตเกม MS-DOS ไปยังWindowsได้ ง่ายขึ้น [ 1 ] WinG ถูกยกเลิกอย่างรวดเร็วและแทนที่ด้วย DirectX
พื้นหลัง
WinG แก้ไขปัญหาไปสองประการ ปัญหาแรกที่ WinG แก้ไขคือ Windows 3.x ไม่รองรับการสร้าง Device Contexts (DCs) โดยอิงจากบิตแมปที่ไม่ขึ้นกับอุปกรณ์ แต่รองรับเฉพาะอุปกรณ์แสดงผลจริงเท่านั้น ข้อจำกัดสำคัญอย่างหนึ่งของGraphics Device Interface (GDI) DCs คือมันเป็นแบบเขียนได้อย่างเดียว ข้อมูลที่เขียนไปแล้วไม่สามารถเรียกคืนได้ ปัญหาที่สองคือ การวาดภาพ GDI ทั้งหมดถูกนำไปใช้ในไดรเวอร์วิดีโอของ Windows 3.x ซึ่งรวมถึงการวาดภาพบิตแมปด้วย
อเล็กซ์ เซนต์ จอห์นหนึ่งในผู้สร้างDirectXกล่าวในการสัมภาษณ์เมื่อปี 2000 ว่า
WinG เป็นเทคโนโลยีที่คริส เฮกเกอร์ กำลังสร้างขึ้น ในกลุ่มวิจัย และในขณะนั้นเป็นหนึ่งในโครงการเล็กๆ ของ Microsoft Skunkworksซึ่งไม่ค่อยเป็นที่รู้จักและค่อนข้างแปลกใหม่ โดยพื้นฐานแล้วเป็นการแก้ไขไดรเวอร์ Windows ที่มีปัญหาเพื่อให้ทำงานได้เร็วขึ้นและยอมรับได้มากขึ้น ด้วยการใช้ WinG เราจึงสามารถสร้าง API วิดีโอที่สามารถรัน DOOM ได้เร็วเกือบเท่าใน DOS ภายใต้ Windows [ 2 ]
ไมโครซอฟต์ประกาศ WinG ในงานGame Developers Conference ปี 1994 โดยสาธิตด้วยเกมDoom เวอร์ชันพอร์ต จากid Software [ 3 ] WinGวางจำหน่ายเมื่อวันที่ 21 กันยายน 1994 [ 4 ]แม้ว่า WinG จะน่าสนใจ แต่โดยพื้นฐานแล้วยังคงใช้การวาดบิตแมปในหน่วยความจำและส่งออกเฟรมหลังจากวาดเสร็จแล้ว ส่งผลให้ WinG ถูกยกเลิกและ มีการสร้าง DirectXขึ้นมา อย่างไรก็ตาม Windows NT 3.5 และ Windows 95 ได้แนะนำ CreateDIBSection เพื่อรองรับการสร้าง DC โดยอิงจาก DIB และไดรเวอร์วิดีโอก็ได้รับการปรับปรุงในที่สุด
การดำเนินการ
WinG ได้แนะนำบริบทอุปกรณ์ประเภทใหม่ที่เรียกว่า WinGDC [ 5 ]ซึ่งช่วยให้โปรแกรมเมอร์สามารถอ่านและเขียนข้อมูลลงในอุปกรณ์ได้โดยตรงโดยใช้บิตแมปที่ไม่ขึ้นกับอุปกรณ์ (DIB) ร่วมกับไดรเวอร์ wingdib.drv โปรแกรมเมอร์สามารถเขียน DIB ลงใน WinGDC และยังคงสามารถเข้าถึงบิตแต่ละบิตของข้อมูลภาพได้ ซึ่งหมายความว่าสามารถเขียนอัลกอริธึม กราฟิกที่รวดเร็วเพื่อให้สามารถเลื่อนภาพได้อย่างรวดเร็ว การวาดทับ สี่เหลี่ยมสกปรก การบัฟเฟอร์คู่และเทคนิคแอนิเมชันอื่นๆ WinG ให้ประสิทธิภาพที่ดีกว่ามากเมื่อคัดลอกข้อมูลกราฟิกไปยังหน่วยความจำของอุปกรณ์กราฟิกทางกายภาพ เนื่องจาก WinG ใช้รูปแบบ DIB จึงสามารถผสมผสานการเรียกใช้ API ของ GDI ดั้งเดิมและการเรียกใช้ WinG ได้[ 5 ]
นอกจากนี้ WinG ยังทำการทดสอบการวิเคราะห์ประสิทธิภาพฮาร์ดแวร์/ไดรเวอร์กราฟิกในการเรียกใช้โปรแกรมครั้งแรก เพื่อกำหนดวิธีการแสดง DIB ที่ดีที่สุด การทดสอบนี้แสดงหน้าต่างที่เต็มไปด้วยเส้นโค้งสีแดง ซึ่งบางส่วนจะสั่นไหวขณะทดสอบประสิทธิภาพ เมื่อ WinG กำหนดวิธีการที่ดีที่สุดได้แล้ว ผลลัพธ์จะถูกบันทึกไว้ในโปรไฟล์
สนับสนุน
การสนับสนุน WinG ที่มาพร้อมกับระบบ (เช่น เป็น API แยกต่างหากจาก Win32) ถูกยกเลิกในWindows 98รุ่นที่สอง (ซึ่งรวมDirectX 6 เข้ามา) เนื่องจากมันไม่ได้ทำอะไรเลยนอกจากส่งต่อไปยัง API ของ Win32 ที่มันครอบคลุมอยู่ (รวมถึง CreateDIBSection) บางครั้ง ไฟล์ DLL ของ WinG ก็ถูกแจกจ่ายมาพร้อมกับแอปพลิเคชัน ซึ่งในกรณีนี้ การคัดลอกไฟล์ wing.dll, wing32.dll, wingde.dll, wingdib.drv และ wingpal.wnd ไปยัง ไดเร็กทอรี system32 (สำหรับ Windows 32 บิต) หรือ ไดเร็กทอรี SysWOW64 (สำหรับ Windows 64 บิต) ก็สามารถเรียกคืนการสนับสนุนทั่วทั้งระบบได้
รายชื่อแอปพลิเคชันที่ใช้ WinG API
- Adobe Photoshop 3.0 (1994)
- Adobe Photoshop 4.0 (1997)
- อยู่ลำพังในความมืด: ผีในเมือง (1996)
- ของเล่นแย่ 3D (1995)
- ซิฟเน็ต (1995)
- คอมิกซ์ โซน (1995)
- ดาร์ค ซีด 2 (1995)
- ภาพยนตร์แอนิเมชั่นจากดิสนีย์: เดอะ ไลออน คิง (1994)
- ดอม (1995)
- ฝุ่น: เรื่องราวของดินแดนตะวันตกที่เชื่อมต่อด้วยสายไฟ (1995)
- เอนโทมอร์ฟ - โรคระบาดแห่งดาร์กฟอลล์ (1995)
- ฟิวรี่ 3 (1995)
- การ์ฟิลด์: ถูกจับได้คาหนังคาเขา (1996)
- แกรนท์ - ลี - เชอร์แมน: สงครามกลางเมือง 2: นายพล (1997)
- ฮีโร่แห่งพลังและเวทมนตร์ ภาค 2 (1996)
- ยักษ์ใหญ่แห่งวงการอุตสาหกรรม (1997)
- โลด รันเนอร์: ตำนานกลับมาแล้ว (1994)
- สตาร์ วอร์ส สกรีน เอนเตอร์เทนเมนต์ (1994)
- เมาอิ มัลลาร์ด ในเงามืดอันเย็นยะเยือก (1996)
- Microsoft Return of Arcade (1996) [ 6 ]
- ไมโครซอฟต์ บ็อบ (1995)
- ไมโครซอฟต์ โอเชียนส์ (1995)
- โมโนโพลี (เวสต์วูด สตูดิโอส์) (1995)
- มัปเป็ตส์ อินไซล์ (1996)
- ไนท์แมร์ 3D (1994)
- นัวร์: ระทึกขวัญลึกลับ (1996)
- พีทีโอ 2 (1995)
- เกมอารยธรรมซิด ไมเออร์ ภาค 2 (1996)
- เกม Sid Meier's Colonization (1995)
- SimCity 2000 (Windows 16-bit) (1995)
- ซิมทาวเวอร์ (1994)
- โรงเรียนโซนิค (1996)
- การกำเนิดและการปกครองของจักรวรรดิโบราณ (1996)
- นี่หมายถึงสงคราม! (1995)
- ประตูแห่งกาลเวลา: การไล่ล่าของอัศวิน (1996)
- ไททานิค: การผจญภัยนอกเวลา (1996)
- Total Distortion (1995)
- ทอย สตอรี่ (1996)
- ค่าจ้างแห่งสงคราม: ธุรกิจแห่งการสู้รบ (1996)
- Warcraft II: Tides of Darkness (โปรแกรมแก้ไขแผนที่) (1995)
- วอร์แฮมเมอร์: เงาแห่งหนูมีเขา (1995)
- โซนกิจกรรมวิชโบน (1997)
- วูดรัฟและชนิบเบิลแห่งอะซิมุธ (1995)
ดูเพิ่มเติม
- ระบบปฏิบัติการ Windows API
- DOSBoxช่วยให้สามารถจำลองการทำงานของโปรแกรม DOS ได้
ลิงก์ภายนอก
- การเขียนเกมยอดนิยมสำหรับ Microsoft® Windows™ - คู่มือสำหรับนักพัฒนาเกมของ Microsoft
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ปีก
WinG (อ่านว่า วิน จี ) เป็น อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน ที่ออกแบบมาเพื่อให้ประสิทธิภาพกราฟิกเร็วขึ้นบน ระบบปฏิบัติการ Windows 3.
พื้นหลัง
WinG แก้ไขปัญหาไปสองประการ ปัญหาแรกที่ WinG แก้ไขคือ Windows 3.
การดำเนินการ
WinG ได้แนะนำบริบทอุปกรณ์ประเภทใหม่ที่เรียกว่า WinGDC [ 5 ] ซึ่งช่วยให้โปรแกรมเมอร์สามารถอ่านและเขียนข้อมูลลงในอุปกรณ์ได้โดยตรงโดยใช้ บิตแมปที่ไม่ขึ้นกับอุปกรณ์ (DIB) ร่วมกับไดรเวอร์ wingdib.
สนับสนุน
การสนับสนุน WinG ที่มาพร้อมกับระบบ (เช่น เป็น API แยกต่างหากจาก Win32) ถูกยกเลิกใน Windows 98 รุ่นที่สอง (ซึ่งรวม DirectX 6 เข้ามา) เนื่องจากมันไม่ได้ทำอะไรเลยนอกจากส่งต่อไปยัง API ของ Win32 ที่มันครอบคลุมอยู่ (รวมถึง CreateDIBSection) บางครั้ง ไฟล์ DLL ของ...