อ่าน 3 นาที
ยักษ์
Object-Oriented Graphics Rendering Engine ( OGRE ) เป็น เอนจิ้นการเรนเดอร์ 3 มิติ แบบ เรียลไทม์โอเพนซอร์สที่ เน้นฉาก [ 2 ] [ 3 ]
ยักษ์
| ยักษ์ | |
|---|---|
ภาพหน้าจอจากชุดเดโมอย่างเป็นทางการของ OGRE จากการทดสอบประสิทธิภาพ "การสะท้อนและการหักเหของแสงแบบเฟรสเนล" | |
| นักพัฒนา | ทีม OGRE |
| ปล่อย | กุมภาพันธ์ พ.ศ. 2548 |
| เวอร์ชันเสถียร | 14.5.2 [ 1 ] |
| เขียนเป็น | ซี++ |
| ระบบปฏิบัติการ | ซอฟต์แวร์ข้ามแพลตฟอร์ม |
| แพลตฟอร์ม | Windows (ทุกเวอร์ชันหลัก), Linux , macOS , Android , iOS , JavaScript (ผ่าน EMScripten), Windows Phone (สนับสนุน โดยMicrosoft) และWinRT |
| พิมพ์ | เครื่องมือเรนเดอร์กราฟิก |
| ใบอนุญาต | ใบอนุญาต MIT |
| เว็บไซต์ | www.ogre3d.org |
| ที่เก็บข้อมูล |
|
Object-Oriented Graphics Rendering Engine ( OGRE ) เป็น เอนจิ้นการเรนเดอร์ 3 มิติแบบเรียลไทม์โอเพนซอร์สที่เน้นฉาก[ 2 ] [ 3 ]
Ogre ได้รับการพอร์ตไปยัง Windows, macOS, Linux, PocketPC, Xbox และ PS3 [ 3 ] [ 4 ]
ฟังก์ชันการทำงาน
OGRE เป็น ไลบรารีคลาส C++ที่สร้างขึ้นบนสถาปัตยกรรมแบบโมดูลาร์ซึ่งมีการขยายฟังก์ชันการทำงานผ่านปลั๊กอินที่โหลดแบบไดนามิก[ 5 ]ระบบย่อยหลักถูกนำไปใช้เป็นปลั๊กอิน ทำให้ผู้พัฒนาสามารถเลือกการใช้งานได้ในขณะรันไทม์
ส่วนประกอบสำคัญ เช่น ระบบเรนเดอร์ ตัวโหลดรูปแบบภาพ และตัวนำเข้าโมเดล 3 มิติ จะถูกจัดการโดยระบบปลั๊กอินนี้ เพื่ออำนวยความสะดวกในการพัฒนาอย่างรวดเร็ว SDK ได้รวม ไลบรารี Assimpสำหรับการโหลดโมเดล 3 มิติอย่างครอบคลุม และ Dear ImGui สำหรับการสร้างส่วนติดต่อผู้ใช้แบบกราฟิก การผสมผสานนี้ทำให้การสร้างแอปพลิเคชันสำหรับการแสดงภาพและการตรวจสอบข้อมูล 3 มิติเป็นเรื่องง่าย โดยทั่วไปแล้ว สถาปัตยกรรมปลั๊กอินช่วยให้นักพัฒนาสามารถปรับแต่งความสามารถและขนาดของเอนจินได้ เช่น การใช้ชุดตัวนำเข้าสินทรัพย์แบบเต็มรูปแบบสำหรับเครื่องมือในการพัฒนา ในขณะที่จัดส่งชุดขั้นต่ำในผลิตภัณฑ์ขั้นสุดท้าย
นอกเหนือจาก API ดั้งเดิมของ C++ แล้ว OGRE ยังมีส่วนเชื่อมต่อภาษาอย่างเป็นทางการสำหรับภาษาโปรแกรมอื่นๆ เช่น C#, Java และ Python โดยส่วนเชื่อมต่อเหล่านี้จะถูกสร้างขึ้นโดยอัตโนมัติจากซอร์สโค้ด C++ โดยใช้เครื่องมือ SWIG
ประวัติศาสตร์
Ogre มีต้นกำเนิดราวปี 1999 จาก DIMClass ซึ่งเป็นโครงการสร้างแบบจำลอง Direct3D โดยนักพัฒนาชื่อ Steve 'Sinbad' Streeting เมื่อตระหนักว่าการออกแบบสามารถใช้งานได้กับทุกแพลตฟอร์มและ API เขาจึงจดทะเบียนโครงการ Ogre อย่างเป็นทางการบน SourceForge ในเดือนกุมภาพันธ์ปี 2000 การพัฒนาอย่างจริงจังเริ่มต้นในเดือนตุลาคมปีเดียวกัน นำไปสู่การปล่อยเวอร์ชันที่ใช้งานได้จริงครั้งแรกสำหรับ Win32 และ Direct3D 7 ในปี 2001
ความก้าวหน้าครั้งสำคัญคือการเปิดตัวในเดือนกันยายน พ.ศ. 2545 (v0.99d) ซึ่งทำให้ Ogre กลายเป็นเอ็นจิ้นข้ามแพลตฟอร์มโดยการเพิ่มการรองรับ Linux และเรนเดอร์ OpenGL เวอร์ชันนี้ยังแนะนำระบบแอนิเมชั่นโครงกระดูกที่แข็งแกร่ง และทีมพัฒนาหลักก็เริ่มขยายตัว[ 6 ]
การพัฒนาเพิ่มเติมส่งผลให้มีการเปิดตัว Ogre 1.0 ในเดือนกุมภาพันธ์ พ.ศ. 2548 โครงการนี้ได้รับการนำเสนอเป็นโครงการประจำเดือนของ SourceForge ในเดือนมีนาคม พ.ศ. 2548 [ 7 ]
ตั้งแต่ปี พ.ศ. 2549 [ 8 ]ถึง พ.ศ. 2556 [ 9 ]โครงการนี้เป็นผู้เข้าร่วมประจำในฐานะองค์กรให้คำปรึกษาในGoogle Summer of Codeซึ่งให้ทุนสนับสนุนการมีส่วนร่วมของนักเรียนจำนวนมากในโค้ดเบสของเอ็นจิ้น
ในปี 2010 ใบอนุญาตของเอนจิ้นถูกเปลี่ยนจากLGPL เป็น ใบอนุญาต MITที่อนุญาตมากกว่าพร้อมกับการเปิดตัวเวอร์ชัน 1.7 Streeting ให้เหตุผลว่าใบอนุญาตที่เรียบง่ายกว่าจะช่วยขยายชุมชนและส่งเสริมการมีส่วนร่วมโดยสมัครใจได้ดีกว่าการพยายามบังคับทางกฎหมาย[ 10 ]ในปีเดียวกันนั้น เขาได้ลาออกจากตำแหน่งหัวหน้าโครงการ โดยอ้างถึงอาการปวดหลังเรื้อรังที่ทำให้ไม่สามารถทุ่มเทเวลาตามที่กำหนดได้[ 11 ]
ตั้งแต่ปี 2019 Ogre ประกอบด้วยสองเวอร์ชันที่พัฒนาแยกกัน ได้แก่ Ogre (เรียกอีกอย่างว่า Ogre1) ซึ่งใช้โค้ดเบส 1.x ดั้งเดิมเป็นพื้นฐาน และ Ogre Next (เรียกอีกอย่างว่า Ogre2) ซึ่งใช้ความพยายามในการพัฒนาเวอร์ชัน 2.x เป็นพื้นฐาน[ 12 ]
หลังจากการเปิดตัว Ogre 1.12 ในปี 2021 โครงการได้เปลี่ยนไปใช้เวอร์ชัน Ogre 13 โดยตัดคำนำหน้า "1." ออกจากการกำหนดหมายเลขเพื่อให้สอดคล้องกับการกำหนดเวอร์ชันเชิงความหมายมากขึ้น[ 13 ]
เกมและแอปพลิเคชัน
- โลกนิรันดร์
- อังค์
- อันค์: หัวใจของโอซิริส
- แจ็ค คีน
- โปรแกรมจำลองศาลา[ 14 ]และศาลา Ignition [ 15 ]
- ฮอบ
- เคนชิ
- OpenMW (จนถึงเวอร์ชัน 0.37.0)
- กาแล็กซีกบฏ
- กบฏกาแล็กซี เอาท์ลอว์
- แท่นยึดแท่ง
- Roblox (2009–2014)
- วิ่งพร้อมปืนไรเฟิล
- ช่างซ่อมเศษเหล็ก (จนถึงปี 2016) [ 16 ]
- เงา: อาณาจักรนอกรีต
- ผู้แก้ไขปัญหา: เด็กที่ถูกทอดทิ้ง[ 17 ]
- Torchlight [ 4 ]และ Torchlight II
- แทรมโพลีนของวาลาเบอร์
- โลกแห่งการต่อสู้: มอร์นิงสตาร์ (2009–2012)
- เวกเตอร์ ทรัสต์
- คนขับซอมบี้[ 18 ]
ลิงก์ภายนอก
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ยักษ์
Object-Oriented Graphics Rendering Engine ( OGRE ) เป็น เอนจิ้นการเรนเดอร์ 3 มิติ แบบ เรียลไทม์โอเพนซอร์สที่ เน้นฉาก [ 2 ] [ 3 ]
ฟังก์ชันการทำงาน
OGRE เป็น ไลบรารีคลาส C++ ที่สร้างขึ้นบนสถาปัตยกรรมแบบโมดูลาร์ซึ่งมีการขยายฟังก์ชันการทำงานผ่านปลั๊กอินที่โหลดแบบไดนามิก [ 5 ] ระบบย่อยหลักถูกนำไปใช้เป็นปลั๊กอิน ทำให้ผู้พัฒนาสามารถเลือกการใช้งานได้ในขณะรันไทม์
ประวัติศาสตร์
Ogre มีต้นกำเนิดราวปี 1999 จาก DIMClass ซึ่งเป็นโครงการสร้างแบบจำลอง Direct3D โดยนักพัฒนาชื่อ Steve 'Sinbad' Streeting เมื่อตระหนักว่าการออกแบบสามารถใช้งานได้กับทุกแพลตฟอร์มและ API เขาจึงจดทะเบียนโครงการ Ogre อย่างเป็นทางการบน SourceForge ในเดือนกุมภาพันธ์ปี...
เกมและแอปพลิเคชัน
โลกนิรันดร์ อังค์ อันค์: หัวใจของโอซิริส แจ็ค คีน โปรแกรมจำลองศาลา [ 14 ] และ ศาลา Ignition [ 15 ] ฮอบ เคนชิ OpenMW (จนถึงเวอร์ชัน 0.37.