Graphical Library (WebGL) เป็น Web-based Graphical Programming Interface (API) ที่ออกแบบมาเพื่อให้สามารถใช้กราฟิกสามมิติ (3D) ได้โดยตรงในเว็บเบราว์เซอร์โดยไม่จำเป็นต้องใช้ซอฟต์แวร์หรือปลั๊กอินแยกจากเบราว์เซอร์หลัก . ความแตกต่างระหว่าง 3D WebGL ™และภาษากราฟิก 3D บนเบราว์เซอร์เช่นภาษาเสมือนจริงมาร์กอัป (VRML) - คือ 3D WebGL ™ที่ช่วยให้เข้าถึงหน่วยประมวลผลกราฟิก (GPU) โดยตรงบนการ์ดแสดงผลฮาร์ดแวร์ที่มีอยู่ใน คอมพิวเตอร์. ข้อแตกต่างอีกประการหนึ่งคือ 3D WebGL ™ไม่ใช่ภาษาที่แยกต่างหาก แต่ API ที่ใช้งานผ่านภาษาสคริปต์ JavaScript ที่เข้าใจได้โดยเว็บเบราว์เซอร์เกือบทั้งหมด ในขณะที่การเข้าถึงฮาร์ดแวร์ระดับต่ำโดยตรงของระบบคอมพิวเตอร์เป็นหนึ่งในจุดแข็งของ WebGL ™ แต่ก็เป็นปัญหาที่ใหญ่กว่าเนื่องจากเป็นปัญหาด้านความปลอดภัยที่ไม่สามารถแก้ไขได้อย่างง่ายดาย
การพัฒนาที่สำคัญอย่างหนึ่งที่ทำให้ 3D WebGL ™เป็นไปได้คือการแนะนำองค์ประกอบผ้าใบในข้อกำหนดคุณสมบัติภาษา HyperText Markup รุ่น 5 (HTML5) องค์ประกอบ Canvas ช่วยให้สามารถเข้าถึงวิวพอร์ตในระดับต่ำซึ่งสามารถวาดและคงไว้ในสไตล์ที่สอดคล้องกับ API การแสดงผลประเภทที่มีอยู่ในภาษาการเขียนโปรแกรมคอมพิวเตอร์อื่น ๆ WebGL ™ API ทำงานร่วมกับ Canvas แบบเร่งนี้เพื่อมอบความสามารถในการแสดงฉากที่ซับซ้อนอย่างรวดเร็วโดยไม่ต้องพึ่งพาการจำลองซอฟต์แวร์ข้ามแพลตฟอร์มหรือการใช้งานที่แตกต่างกัน
3D WebGL ™ API ไม่เพียง แต่ใช้องค์ประกอบ Canvas แต่ยังใช้ไลบรารี Open Graphics สำหรับระบบสมองกลฝังตัว (OpenGL ES®) นี่เป็นเวอร์ชันพกพาของไลบรารีOpenGL®มาตรฐานที่ออกแบบมาให้พกพาได้ไม่เพียง แต่ระหว่างระบบปฏิบัติการคอมพิวเตอร์ที่แตกต่างกัน แต่ยังใช้กับอุปกรณ์ทุกชนิดที่ต้องใช้กราฟิก 3D ระดับต่ำ รอยขนาดเล็กนี้ช่วยให้ห้องสมุดสามารถรวมเข้ากับเบราว์เซอร์ใด ๆ สำหรับอุปกรณ์เกือบทุกชนิด
การใช้ 3D WebGL ™ช่วยให้การพัฒนาโปรแกรมแบบโต้ตอบที่สามารถเรียกใช้โดยตรงจากภายในเว็บไซต์หรือดาวน์โหลดและเรียกใช้เป็นแอปพลิเคชันแบบสแตนด์อโลนภายในเว็บเบราว์เซอร์ มันสามารถใช้ในการสร้างวิดีโอเกม 3 มิติ, ซอฟต์แวร์การศึกษา, การจำลองและซอฟต์แวร์การสร้างภาพ 3 มิติสำหรับธุรกิจและการวิจัยทางวิทยาศาสตร์ ด้วยการใช้เบราว์เซอร์เป็นแอปพลิเคชั่น wrapper ทำให้สามารถพัฒนาสภาพแวดล้อม 3 มิติได้โดยไม่ต้องกังวลเกี่ยวกับรหัส boilerplate ซ้ำ ๆ สำหรับการเชื่อมต่อพื้นฐาน
หนึ่งในอุปสรรคที่ใหญ่ที่สุดในการใช้ 3D WebGL ™และสิ่งหนึ่งที่ขัดขวางการยอมรับอย่างกว้างขวางกับ บริษัท ผู้ผลิตซอฟต์แวร์และฮาร์ดแวร์บางรายคือความเสี่ยงด้านความปลอดภัยที่นำเสนอ ความสามารถของโปรแกรมในการเข้าถึง GPU สามารถให้โปรแกรมที่เป็นอันตรายสามารถบังคับระบบคอมพิวเตอร์แม่ข่ายให้รันโค้ดที่เป็นอันตรายได้ นอกจากนี้ยังแสดงให้เห็นว่าการโจมตีแบบปฏิเสธการให้บริการ (DOS) นั้นเป็นไปได้โดยใช้ WebGL ™ API ด้วยเหตุนี้จึงมี บริษัท คอมพิวเตอร์รายใหญ่บางแห่งที่ปฏิเสธที่จะสนับสนุน WebGL ™ในผลิตภัณฑ์ของตนอย่างเต็มที่


