กล้องOpenGL®คืออะไร?

"กล้องOpenGL®" เป็นชื่อที่มอบให้กับตำแหน่งเสมือนจริงของผู้ดูภายในฉาก Open Graphics Library® (OpenGL®) มันถูกกำหนดโดยตำแหน่งของผู้ชมภายในฉากจากนั้นตำแหน่งหรือทิศทางที่ผู้ดูกำลังมองหา ตำแหน่งของกล้องในฉากOpenGL®จะกำหนดว่าส่วนใดของฉากที่จะแสดงผลไปยังอุปกรณ์แสดงผลและที่มุมใด เมทริกซ์สองตัวใช้ในการอธิบายกล้องOpenGL®: เมทริกซ์โมเดลวิวและเมทริกซ์การฉายซึ่งอธิบายตำแหน่งของกล้องและวิธีการแสดงวัตถุที่มองเห็นตามลำดับ กล้องสามารถเคลื่อนย้ายภายในฉากเพื่อแสดงพื้นที่ต่าง ๆ หรือเพื่อจำลองการเคลื่อนไหวแม้ว่าในหลาย ๆ กรณีจะง่ายกว่าหรือมีประสิทธิภาพมากกว่าในการเคลื่อนย้ายวัตถุในฉากแทนที่จะเป็นกล้อง

เมื่อเรียนรู้OpenGL®โปรแกรมเมอร์บางคนมีช่วงเวลาที่ยากลำบากในการทำความเข้าใจคุณสมบัติที่ค่อนข้างเป็นนามธรรมของกล้องOpenGL® นี่เป็นสาเหตุหลักเนื่องจากการเปลี่ยนแปลงบางอย่างและฟังก์ชั่นอื่น ๆ ไม่ทำงานในลักษณะเดียวกันกับกล้องเช่นเดียวกับที่ใช้กับวัตถุOpenGL®มาตรฐาน นอกจากนี้การดำเนินงานที่ซับซ้อนด้วยกล้องOpenGL®มักจะต้องมีความเชี่ยวชาญด้านคณิตศาสตร์เมทริกซ์และความเข้าใจในขั้นตอนการแปลงOpenGL® มีฟังก์ชั่นอำนวยความสะดวกบางอย่างในการรองรับไลบรารี OpenGL แม้ว่ามันอาจเป็นเรื่องยากที่จะพึ่งพาเพียงชุดเครื่องมือสนับสนุนในแอปพลิเคชันแบบโต้ตอบมากขึ้น

ตำแหน่งของกล้องOpenGL®ถูกกำหนดโดยใช้ modelview matrix กล้องสามารถวางตำแหน่งที่ใดก็ได้ในฉากและแปลหรือหมุนไปตามแกนใด ๆ ในแอพพลิเคชั่นหลาย ๆ แอพพลิเคชั่นที่สะดุดตาที่สุดที่มีเพียงวัตถุเพียงหยิบมือเท่านั้นมันจะง่ายกว่าที่จะนำการแปลงผกผันไปใช้กับวัตถุภายในฉากเพื่อให้มีลักษณะของการเคลื่อนไหว โดยพื้นฐานแล้วฉากทั้งหมดจะเคลื่อนที่ไปรอบ ๆ กล้องนิ่งในกรณีนี้ สำหรับฉากที่มีขนาดใหญ่ขึ้นจะสามารถจัดการกับความซับซ้อนของไพพ์ไลน์และเมทริกซ์คณิตศาสตร์ได้ง่ายกว่าในการเคลื่อนย้ายกล้องได้อย่างอิสระ

คุณสมบัติของกล้องOpenGL®นั้นควบคุมโดย matrix matrix ในการใช้การเปรียบเทียบกล้องสามารถใช้เมทริกซ์การฉายภาพเหมือนกับชนิดของเลนส์ที่ใช้ เมทริกซ์การฉายภาพถูกแก้ไขบ่อยครั้งเพื่อให้การประมาณการแบบออโธกราฟฟิคซึ่งไม่มีการปรับมุมมองและการประมาณการมุมมองที่พิจารณาระยะทางในการกำหนดขนาดของวัตถุ เอฟเฟกต์อื่น ๆ เช่นเลนส์ตาปลาความยาวโฟกัสหรืออัตราส่วนภาพต่าง ๆ สามารถตั้งค่าได้ด้วยการใช้เมทริกซ์การฉายภาพ