Ouvrir l\'inventeur

L'inventeur ouvert , à l'origine l'inventeur d'IRIS de , est un api de graphiques du mode maintenu par orienté objectivement 3D du du C++ conçu par SGI pour fournir une couche plus élevée de programmation pour le OpenGL . Ses objectifs principaux sont une meilleures convenance et efficacité de programmeur.

Histoire des débuts

Autour de 1988&ndash ; 1989, Yen de Wei de a demandé au Rikk Carey pour mener le projet d'inventeur d'IRIS. Leur but était de créer une trousse à outils qui a facilité des applications se développantes des graphiques 3D pour faire. La stratégie a été basée sur les lieux que les gens ne développaient pas assez d'applications 3D avec OpenGL parce qu'il était trop long pour faire ainsi avec l'interface de bas niveau fournie par OpenGL. Si la programmation 3D étaient facilitées, par l'utilisation d'un api orienté objectivement, alors de plus de personnes créerait les applications 3D et le SGI bénéficierait. Par conséquent, le credo était toujours &ldquo ; &rdquo d'utilisation facile ; avant &ldquo ; performance&rdquo ; , et bientôt le &ldquo de tagline ; 3D programmant pour le humans&rdquo ; était appliqué largement.

Utilisation

OpenGL (OGL) est une bibliothèque de bas niveau qui prend des listes de polygones simples et les rend aussi rapidement que possible. Pour faire quelque chose plus pratique comme le &ldquo ; dessiner un house&rdquo ; , le programmeur doit décomposer l'objet en série d'instructions simples d'OGL et les envoyer dans le moteur pour le rendu. Un problème est que l'exécution d'OGL a lieu fortement - sensible à la manière ces instructions sont envoyées dans le système, exigeant de l'utilisateur de savoir quelles instructions d'envoyer et quel ordre, et en les forçant à cueillir soigneusement les données pour éviter d'introduire les objets qui ne sont pas même évidents dans l'image en résultant. Pour des programmes simples par montant énorme de programmation doit être fait juste pour obtenir commencé.

L'inventeur ouvert (OI) a été écrit pour aborder cette issue, et fournit une couche basse commune pour commencer à travailler avec. Des objets ont pu subclassed d'un certain nombre de formes pré-roulées comme des cubes et des polygones, et puis être facilement modifiés dans de nouvelles formes. Le &ldquo ; world&rdquo ; pour être tiré a été placé dans un graphique de scène de couru par OI, avec le système appliquant l'occlusion cueillant sur des objets dans le graphique automatiquement. OI a également inclus un certain nombre d'objets et de systèmes de contrôleur pour les appliquer à la scène, facilitant des tâches communes d'interaction. En conclusion, OI a également fourni un format de fichier commun pour stocker le &ldquo ; worlds&rdquo ; , et le code automatiquement pour sauver ou charger un monde à partir de ces dossiers. Les applications 3D de base ont pu alors être écrites dans quelques cent lignes sous OI, en attachant ensemble des parties de la trousse à outils avec le &ldquo ; glue&rdquo ; code.

En baisse il est notoirement difficile faire OI tendus pour être plus lents que le code manuscrit, en tant que tâches 3D pour se comporter bien sans brouiller les données dans le graphique de scène à la main. Un autre problème pratique était qu'OI pourrait seulement être employé avec son propre format de fichier, forçant des lotisseurs à écrire des convertisseurs à et du système interne.

TGS ouvrent l'inventeur

L'inventeur ouvert plus tard a été ouvert pour 3rd-party autorisant, qui est quand il a commuté du &ldquo ; IRIS&rdquo ; au &ldquo ; Open&ldquo ;. Il a été autorisé à deux tiers réalisateurs, à logiciel de graphiques de calibre de et à graphiques portatifs. TGS plus tard a acheté les graphiques portatifs, leur faisant le concessionnaire unique. Dans 2004 TGS a été acquis par les systèmes informatiques de Mercury de , qui continuent à développer et soutenir OI.

Interprète

Environ une année dans le projet d'inventeur, une philosophie différente a commencé à émerger. Au lieu de la rendre simplement facile d'écrire des applications sur des systèmes de SGI, le but a été changé pour la rendre difficile d'écrire des applications lentes. Les membres de l'inventeur team à gauche pour constituer leur propre groupe, qui a fondé la base du projet de l'interprète d'OpenGL de . L'interprète a été également basé sur un graphique interne de scène, mais a été permis de le modifier pour une meilleure vitesse pendant qu'elle voyait l'ajustement, même laissant tomber le &ldquo ; moins d'important&rdquo ; les objets et les polygones afin de maintenir ont garanti des niveaux des performances. L'interprète avait l'habitude également un certain nombre de processus pour courir des tâches en parallèle pour l'exécution supplémentaire, lui permettant d'être courue (dans une version) sur les processeurs multiples. À la différence de l'inventeur, l'interprète est resté de propriété industrielle de sorte que le SGI ait l'agilité pour modifier l'api comme nécessaire pour garder parallèlement à les derniers perfectionnements de matériel.

Milieu des années 90

À un certain point au milieu des années 90 on l'a réalisé qu'il n'y avait aucune bonne raison pour laquelle les deux systèmes ne pourraient pas être combinés, ayant pour résultat un api à niveau élevé simple avec l'exécution et la programmabilité. Le SGI a commencé le travail sur encore un autre projet visé fusionnant les deux, par la suite aboutissant au Cosmo 3D . Cependant Cosmo a eu un certain nombre de problèmes pratiques qui pourraient avoir été évités avec une meilleure conception.

Par la suite toutes ces idées viendraient ensemble pour créer l'effort du OpenGL++ , avec le Intel , le IBM et le DEC . Essentiellement nettoyé et plus de &ldquo ; open&rdquo ; la version de Cosmo 3D, travail sur Cosmo fini et SGI s'est tournée vers OpenGL++ à plein temps. L'effort d'OpenGL++ traînerait et être tué par la suite, et le SGI puis a essayé encore avec le Microsoft avec le projet semblable de Fahrenheit , qui est également mort. Pendant ce temps SGI ignoré OI, et par la suite tourné lui au loin complètement à TGS.

Histoire récente

Après beaucoup d'années de l'inventeur étant autorisation de propriété industrielle de dessous seulement disponible de TGS, il a été libéré sous un permis de la source ouverte en août 2000, qui est fourni par le SGI.

Approximativement au même temps, une bibliothèque de clone d'api appelée le Coin3D a été libérée par le Kongsberg SIM de compagnie. La bibliothèque de pièce de monnaie avait été écrite d'une mode de salle propre à partir de zéro, ne partageant aucun code avec la bibliothèque originale d'inventeur de SGI, mais mettant en application le même api pour des raisons de compatibilité. Des systèmes dans la bibliothèque de la pièce de monnaie du mouvement est libérés sous un arrangement d'autorisation duel, disponible tous les deux sous le GNU GPL (pour le développement de logiciel gratuit ) et un permis commercialement vendu pour le développement de logiciel de propriété industrielle.

La version de source ouverte du SGI est depuis tombée dans l'obscurité, car le SGI n'a montré aucun engagement pour faire le développement ultérieur de la bibliothèque, et semble dépenser de petites ressources même en entretien.

Les systèmes dans la bibliothèque de la pièce de monnaie du mouvement et l'inventeur de TGS prospèrent toujours en cours de développement actif, et tous les deux ont ajouté de nombreuses améliorations à l'inventeur original api comme le soutien étendu de la norme de VRML .

En dépit de son âge, l'inventeur ouvert api est encore employé couramment pour un éventail de systèmes scientifiques et de technologie de visualisation autour du monde, s'étant prouvé bien projeté pour le développement efficace du logiciel de l'application 3D complexe.

Random links:Garfield | Rhianus | Li blême | Ombre de Wong | Abrir_a_inventor