المخترع المفتوح

المخترع المفتوح، مخترع IRIS، هو مجموعة أدوات الرسومات ثلاثية الأبعاد لوضع احتفاظ الكائنات الموجهة في لغة السي++ والتي تم تصميمها من قبل سيليكون غرافيكس لتقدم قدرة أعلى على البرمجة لمكتبة الرسوميات المفتوحة. أهدافه الرئيسية ملائمة وكفاءة أكثر للمبرمج. يوجد المخترع المفتوح كبرنامج احتكاري وكبرمجيات مجانية ومفتوحة المصدر، يخضع لمتطلبات رخصة جنو العمومية الصغرى (LGPL)، نسخة 2.1.

التاريخ المبكر 
حوالي 1988-1989، طلب Wei Yen من Rikk Carey قيادة مشروع IRIS. كان هدفهما تقديم مجموعة أدوات تجعل من تطوير الرسومات ثلاثية الأبعاد أسهل. قامة الاستراتيجية على افتراض عدم قيام الناس بتطوير ما يكفي من البرامج ثلاثية الأبعاد باستخدام IRIS GL لأنها تستهلك الكثير من الوقت بسبب واجهتها منخفضة المستوى. إذا أمكن تسهيل استخدام البرمجة ثلاثية الأبعاد من خلال واجهة برمجة التطبيقات سيقوم أشخاص أكثر ببرمجة التطبيقات ثلاثية الأبعاد مما سيفيد SGI. لذلك، كان الاعتقاد دائما «تسهيل الاستخدام» قبل «الأداء»، وسرعان ما انتشر شعار «البرمجة ثلاثة الأبعاد للبشر» على نطاق واسع.

الاستخدام 
أوبن جي إل (OGL) هي واجهة برمجة تطبيقات (API) مخفضة المستوى تأخذ قائمة بسيطة من المضلعات وتقوم بعرضها بأسرع وقت ممكن. للقيام بأمر عملي أكثر مثل «رسم منزل» يجب على المبرمج تقسيم المهمة إلى سلسلة من أوامر OGL البسيطة ومن ثم إرسالها إلى النظام لعرضها. إحدى مشاكل OGL حساسية أدائها العالية لطريقة إرسال الأوامر إلى النظام، مما يفرض على المستخدم معرفة أي الأوامر يجب ارسالها وبأي ترتيب، وإجبارهم على اختيار البيانات بعناية لتجنب إرسال كائنات لا تكون مرئية في الصورة الناتجة. البرامج البسيطة تتطلب كمية هائلة من البرمجة فقط للبدء.

تمت كتابة المخترع المفتوح (OI) لحل هذه المشكلة، وتوفير طبقة أساسية مشتركة لبدء العمل منها. يمكن إنشاء الكائنات من عدد من الشكال المرفقة سابقا مثل المكعبات والمضلعات، ومن ثم تعديلها بسهولة لإنشاء شكل جديد. «العالم» ليتم رسمه تم وضعه في scene graph تديرها OI، مع تطبيق النظام لانتقاء الانسداد على الكائنات في الرسم البياني بشكل تلقائي. كما إضافة OI عدد من كائنات التحكم والأنظمة لإضافتها على المشهد، مما يجعل من المهام الشائع أسهل. أخيرا، كما قام OI أيضا بتزويد ملف شائع للتخزين "worlds"، وكتابة البرمجة لتخزين أو تحميل أي عالم بشكل تلقائي من الملف. يمكن كتابة تطبيقات ثلاثية الأبعاد أساسية في بضع مئة سطر من خلال OI، بربط الأجزاء ببعضها من مجموعة أدوات شفرة "glue". على الجانب السلبي تميل OI لكونها ابطء من الشفرات التي تكتب باليد، من المعروف صعوبة جعل أداء المهام ثلاثية الأبعاد جيدا من دون خلط البيانات في scene graph من قبل المستخدم. مشكلة عملية أخرى هي امتلاك OI ملف منسق خاصا به ولا يمكن استخدام غيره، مما يجبر المطور على كتابة محولات من وإلى النظام الداخلي.

مراجع 

أدوات تطوير برمجيات جافا
برمجيات تستخدم كيوت
برمجيات متعددة المنصات
مكتبات جافا
مكتبات سي++
مكتبة الرسوميات المفتوحة
واجهات برمجة التطبيقات
واقع افتراضي