เงา Open Graphics Library® (OpenGL®) เป็นการประมาณค่าทางภาพในฉากOpenGL®แบบสามมิติ (3D) ที่แสดงให้เห็นเงาในชีวิตจริงภายใต้สภาพแสงแบบเดียวกัน Shadows เป็นคุณสมบัติด้านภาพที่ซับซ้อนที่จะนำไปใช้ในOpenGL®ส่วนใหญ่เป็นเพราะไม่มีการสนับสนุนโดยธรรมชาติสำหรับการส่งเงาในฉาก แทนที่จะมีเทคนิคหลายอย่างที่สามารถใช้ในการสร้างเงาจากวัตถุและรูปทรงเรขาคณิตภายในฉากโดยใช้เครื่องมือต่าง ๆ เช่นบัฟเฟอร์ที่พร้อมใช้งานที่หลากหลาย shaders และในบางกรณีส่วนขยายที่ให้การเข้าถึงคุณลักษณะพิเศษในกราฟิกบางอย่าง บัตร ในกรณีส่วนใหญ่คุณภาพความแม่นยำและความเร็วของการเรนเดอร์เงาOpenGL®นั้นเกี่ยวข้องโดยตรงกับกำลังการประมวลผลและหน่วยความจำของฮาร์ดแวร์กราฟิกที่มีอยู่ในคอมพิวเตอร์หรืออุปกรณ์ วิธีการที่นิยมใช้กันมากในการใช้งานOpenGL® shadow รวมถึงปริมาณเงาการจับคู่เงาและการติดตามรังสี
การสร้างแอปพลิเคชันที่มีการสนับสนุนเงาOpenGL®ต้องใช้ความรู้ทางคณิตศาสตร์และความเข้าใจอย่างลึกซึ้งว่าOpenGL®ทำงานอย่างไร OpenGL®ส่วนใหญ่ใช้ในการสร้างฉาก 3 มิติที่เป็นแบบไดนามิกและเรนเดอร์เรียลไทม์ดังนั้นอัลกอริธึมที่ใช้ในการสร้างเงาต้องไม่ปรับให้เหมาะกับความเร็วเท่านั้น แต่ยังต้องวัดอย่างระมัดระวังสำหรับการใช้ทรัพยากรและการหยุดชะงัก อาจเกิดจากไปป์ไลน์กราฟิกที่ใช้สำหรับการแสดงผล ด้วยเหตุผลเหล่านี้วิธีการพื้นฐานที่สุดในการสร้างเงาที่เรียกว่าการติดตามรังสีมักจะใช้ไม่ได้กับฉาก 3 มิติเต็มรูปแบบเนื่องจากอาจใช้เวลานานมาก
การติดตามเรย์โดยทั่วไปตามเส้นจินตภาพหรือเรย์จากระนาบการดูหรือตำแหน่งของกล้องผ่านฉากหนึ่งไปยังพื้นผิวของวัตถุจากนั้นคำนวณสีของพื้นผิวตามตำแหน่งของแหล่งกำเนิดแสงหนึ่งแห่งหรือมากกว่าและปัจจัยอื่น ๆ ในระหว่างกระบวนการ rasterization ที่ฉาก 3 มิติถูกดึงไปยังพื้นผิวสองมิติ (2D) เพื่อให้สามารถแสดงได้กระบวนการของการติดตามรังสีจะต้องดำเนินการในทุกพิกเซลที่วาดขึ้นและโดยเฉพาะอย่างยิ่งกับพื้นผิวหรืออื่น ๆ คุณสมบัติพื้นผิวอาจต้องประเมินพิกเซลเดียวกันหลายครั้ง นี่หมายถึงการติดตามรังสีแบบเรียลไทม์แม้ว่ามันจะให้เงาได้อย่างแม่นยำ
วิธีการอื่นที่สามารถใช้เพื่อสร้างเงาOpenGL®นั้นเรียกว่าการทำแผนที่เงา วิธีนี้ใช้ความลึกหรือบัฟเฟอร์ลายฉลุเพื่อแสดงฉากจากมุมของแหล่งกำเนิดแสงเป็นชุดของระยะทางจากแหล่งแสงไปยังพื้นผิวของวัตถุต่าง ๆ ภายในฉาก จากนั้นฉากจะเรนเดอร์เป็นครั้งที่สองจากมุมมองที่ถูกต้องตรวจสอบเพื่อดูว่าแต่ละพิกเซลอยู่ในช่วงระยะทางที่แน่นอนภายในบัฟเฟอร์หรือไม่แสดงว่าพิกเซลนั้นสว่างหรือเงา การใช้การจับคู่เงาอาจเป็นเรื่องที่ต้องใช้หน่วยความจำมากและด้วยฉากที่มีแหล่งกำเนิดแสงมากกว่าหนึ่งแห่งสามารถเกี่ยวข้องกับการสร้างแผนที่หลายรูปแบบจากหลายมุม
Shadow volume เป็นวิธีการสร้างเงา OpenGL ที่แม่นยำกว่าวิธีอื่น ๆ แต่มันนำเสนอปัญหาของตัวเอง ปริมาณเงาเป็นส่วนที่มองไม่เห็นของเรขาคณิตในฉากที่ขยายออกจากพื้นผิวที่มีแสงสว่างของวัตถุอยู่ห่างจากแหล่งกำเนิดแสง ปริมาณนี้สามารถตรวจสอบกับวัตถุอื่น ๆ เพื่อดูว่าพวกเขาจะตกอยู่ในเงามืดของพื้นผิวที่เกิดจากปริมาณ ขั้นตอนนี้อาจซับซ้อนมากและสร้างสิ่งประดิษฐ์ที่มองเห็นได้เมื่อปรับให้เหมาะกับความเร็ว


