Saturday, December 19, 2009

a patent, its implications, and their implications

This Ars Technica article describes an Apple patent application relating to adjustment of the display of 3D objects in response to changes in the position of the observer, presumably to create or reinforce a sense of depth in the display. (For example, a slightly different perspective could be presented to each eye.)

While that article doesn't go into any detail in this regard, one implication of such a system is that the 3D objects which are being adjusted must exist as software objects having a particular shape, orientation, and position, and not just as 2D projections of 3D objects.

This isn't new, not even for Apple. OpenGL, which is built into both the Mac and iPhone versions of OS X, is all about defining and displaying 3D objects, and a system like that in the referenced patent application could probably be implemented in OpenGL, or as an extension of it, without implying extensive new libraries.

On the other hand, it might involve an object representation layer to be inserted underneath OpenGL, which is mainly concerned with surfaces and doesn't know or care about the physical properties of objects beyond their optical properties.

Assuming that's the case (no small assumption), this new object representation layer would greatly ease the development of many types of software, including but not limited to CG animation, games, industrial design and architecture, navigation, etc., by providing standard, supported, primitive data types and basic behaviors (scaling, rotation, and translation) for the representation of 3-dimensional objects - data types which could easily be elaborated as needed through subtyping.

An open question is whether Apple would keep such a system to itself or turn it into an open source project, in the hope of generating some momentum behind it, as they have with both OpenCL and Grand Central Dispatch.

Here's another take on the patent application.

And yet another take from a website that features news and advice about construction-related software.

No comments: