OpenGL++: Difference between revisions

Content deleted Content added
m Technical limitations text
No edit summary
Line 5:
OpenGL++ (OGL++) was intended to offer a selection of routines and standardized data structures to dramatically simplify writing "real" programs using OpenGL. Instead of the programmer having to keep track of the objects in the 3D world and make sure they were culled properly, OpenGL++ would include its own [[scene graph]] system and handle many of the basic manipulation duties for the programmer. In addition, OGL++ included a system for modifying the scene graph on the fly, re-arranging it for added performance.
 
Much of OGL++ was a combination of ideas from earlier SGI projects in the same vein, namely [[Open Inventor]] which offered ease-of-use, and [[OpenGL Performer]] which splitwas written offseparately from Inventor to deliver a system that re-arrangedoptimized scene graphs for increased performance and exploited scalable architectures. It was later realizedintended that therea wasnew nodesign reasoncould get the twobest couldn'tof beboth mergedworlds while forming the underlying framefork for several projects including CAD, image processing, simulation, scientific visualization and user interfaces allowing them to interoperate, thereby offering both rapid development and high performance.
 
SGI had already releasedalmost completed one effort to merge the functionality of these two asscene graphs[[Cosmo 3D]], Cosmo 3D was in fact the spinoff from an earlier collaboration with Sun which was supposed to produce a scene graph for Java with SGI's new scene graph, Sun and SGI went their separate ways with Java3D and Cosmo3D. When theySGI then startedannounced the OGL++ effort, they droppedhalted development of Cosmo3D when it had just reached a beta release,. positioningInternal thedevelopment on a CAD layer of functionality had already been implemented on Cosmo3D by then and then released as a product. Other "front end" packagepackages like, Cosmo Code, as a [[VRML]] authoring tool., OGL++were wasproduced essentiallyby a cleaneddifferent updivision and moreuse flexibleof version ofthe Cosmo, butname itwas ismerely notpart clearof howa closelybroader relatedmarketing thestrategy, twoit packagesran are,on asOpenGL. OGL++ was neverintended released.to Muchbe ofa thecleaned OGL++up effortand appearsmore toflexible haveversion beenof aimedCosmo3D, atmost definingof athe flexibleCosmo3D sceneteam graphstarted thatwork wason moreOGL++ easilyand modifiablea thanlot of the oneeffort inwas Cosmo,aimed workat whicha wouldspecification eventuallyand evolveimplementation intothat ancould importantdeliver parton the promise of thea Fahrenheittruly effortpowerfull yet generic scene graph.
 
In the end, there is nothing to show for any of these efforts. Parnerships with [[Sun Microsystems]], Intel and IBM and Microsoft all led to nothing as SGI jumped from project to project. In retrospect, itSGI isreacted notbadly entirelyto cleara whatrapidly happened,changing environment. An internal desire to create a new improved generic but theextensible historyscene alonegraph appearswas toconstantly sidetracked by a suggestbelief that SGI wascouldn't simplygo it alone. Partnerships were formed and later abandoned unwillingdue to "giveirreconcilable updifferences or simply as priorities and internal pressures shifted. OGL++ was the familymost jewels",nacent orof these efforts and although it was perhapsthe simplyoption floatingthat arapidly seriesgained the strongest interest the power of [[trialthe balloon]]idea forced an unholy alliance between Microsoft in the form of Farenheit, SGI joining because of it's long held belief that it couldn't go it alone and Microsoft because it wanted to avert the possibility of a truly open 3D scene graph. OneAncillary wayissues orlike another,powerfull CAD APIs running on Cosmo3D complicated the picture. In the final analysis the new unified scene graph concept was bounced from project to project, and eventually died in 2000 when Fahrenheit was killed.
 
Today, no such standardized scene graph exists, and SGI has all but exited the API world. SGI has released the earlier Open Inventor code into [[open source]], but the source to OGL++ seemswas never completed to beany satisfactory degree. No specification exists and as with OpenGL the spec and idea behind such an open platform would have been what lent it it's lasting value, not a single implementation of a scene longgraph goneidea.