Re: OGL portability and future delivery
- From: Wolfgang Draxinger <wdraxinger@xxxxxxxxxxxxxxxx>
- Date: Fri, 30 Jun 2006 11:51:38 +0200
nopa wrote:
Perhaps #5 is a serious reason if the driver model is radically
different, but the other 4 reasons are easier to workaround
than the move from PPC to Intel. If Apple didn't want to depend
on PPC, and so developed OSX to be Intel-compatible, I wouldn't
be surprised if the OSX graphics side has some sort of "B Plan"
in case OpenGL fails, or in case it becomes a problem to depend
on it (for whatever reason like less games, less popularity,
etc...).
There is a major difference in switching the CPU plattform and
changes within the software architecture. MacOS X is based on
the Darwin kernel, which is itself based on the Mach
microkernel. Kernels in the Unix(-like) world are built for
portability, which means that whole operating systems can be
ported to other platforms without great changes in the
sourcecode.
However if a critical underlying API is changed this is a major
effort. Adding DirectX to MaxOS X would be the easiest
implemented by wrapping a layer aroung OpenGL.
Actually I think the driver modell is the least problem.
Now that you can boot XP in a Mac, OpenGL will be the only
difficulty for game developers who wish to port from Windows to
Mac. And they will tell Apple about it, they'll want to have
D3D support in OSX.
The CPU plattform is the least weighing argument. You can't just
change an underlying API a huge part of the OS is depending on.
Although QuartzExtreme is an abstration layer around OpenGL,
changing to DirectX would require a lot of work. Especially in
MacOS X which is so different in it's concepts to Windows.
OTOH rewriting a renderer from DirectX to OpenGL is done within
few days (if you know both APIs by heart). I've done it once for
a DirectX 8 renderer.
I think you didn't understand what I meant: I was talking about
a graphics API that didn't have any hardware drivers, but just
a driver for OpenGL, another for D3D, or for any other API of
interest.
Almost every good 3D engine uses such an abstraction layer
(including mine). And all major 3D engines that use mainly
DirectX Graphics also bring an OpenGL module. That are e.g. the
Unreal Engine, CryEngine,
I just dont think, that Apple will implement DirectX. The most
important reason IMHO is, that DirectX is a moving target. With
every new version the API changes radically and you don't want
to build an operating system on such a slippy base.
Wolfgang Draxinger
--
.
- References:
- OGL portability and future delivery
- From: Charles E Hardwidge
- Re: OGL portability and future delivery
- From: fungus
- Re: OGL portability and future delivery
- From: Charles E Hardwidge
- Re: OGL portability and future delivery
- From: nopa
- Re: OGL portability and future delivery
- From: Wolfgang Draxinger
- Re: OGL portability and future delivery
- From: nopa
- OGL portability and future delivery
- Prev by Date: Re: OGL portability and future delivery
- Next by Date: Texture 3D interpolation between layers
- Previous by thread: Re: OGL portability and future delivery
- Next by thread: Re: OGL portability and future delivery
- Index(es):
Relevant Pages
|