OpenSource QuickDraw 3D? (was Re: :(

Lawson English english at primenet.com
Sat Jun 19 00:35:01 UTC 1999


Duane Maxwell <dmaxwell at launchpados.com> said:
Lawson English <english at primenet.com> said:

[demise of QD3D]

>
>Good luck - despite this idea coming up _every_ time Apple discontinues an
>interesting product, it never happens.  Apple even actually said they'd
>release OpenDoc open source and never did, though IBM did release the OS/2
>version.  There's no reason to believe it will happen now.  Squeak only
>became open after it _left_ Apple and became Disney's.  Lord only knows
>what Disney's thinking, but I'm certainly happy to be able to take
>advantage of it.
>
>>An obvious candidate for maintaining the OpenSource QD3D code would be
>the
>>Squeak community (see www.squeak.org), which only has a nascent 3D
>library
>>available.
>
>I don't think this is obvious at all.  While I like the architecture of
>QD3D, speaking for myself I think the Squeak community should concentrate
>on Squeak. 

There already is a 3D library used with Squeak. It is nowhere near as well
developed as QD3D, which has been around for years and is a robust 3D
library on both MacOS and WIndows.  If QD3D were available as an OpenSource
cross-platform library that was Squeak-compatible and could be ported
along-with Squeak to any platform where Squeak was available, wouldn't it
make more sense to embrace QD3D than trying to reinvent all the features of
QD3D?

QD3D also comes with a well-defined 3D file format, among other goodies.

See Tom Thompson's article in Byte about the comparison of OpenGL and QD3D
at <http://www.byte.com/art/9606/sec11/art4.htm> for
advantages/disadvantages of QD3D vs OpenGL.

 Next you'll be saying we should be adopting/supporting QDGX
>(stand back everyone!).

Funny that you should mention that. Why would you NOT want to use the QDGX
color model in Squeak, if it were available as a cross-platform solution?

The core of the QDGX color model is the ability to define the drawing of an
object in a different color space than the object's own color space while
applying a different drawing mode to each drawing-color channel.

That allows for far, FAR more interesting graphics than a simple
alpha-channel model, and the specification of this part of the GX color
options can still fit in a single 4-byte set of flags for optimization
purposes, AND one can still maintain backwards compatibility with the
current Squeak color model, which only uses a few bits out of the 32
available.

If a GX-like extension to the Squeak color model were made available,
wouldn't it be worth using?

>
>>If Apple made QD3D available to the Squeak development community, and
>>*they* ported the QD3D library to other platforms in such a form as to
>make
>>it useable to both Squeak developers and regular applications/games
>>developers, maybe that would make QD3D a viable cross-platform,
>OpenSource
>>3D library.
>
>Which is not the point of this group.

The point of this list is the discussion of Squeak programming and
enhancements to the Squeak platform. If (BIG IF, I know) Apple were to
allow the Squeak community to port QD3D to other platforms in exchange for
assurances that non-Squeak developers would be able to use the same shared
library/DLL, then it would make QD3D cross-platform support attractive to
non-Squeak developers, increasing the likelihood of viable Squeak-QD3D
libraries on a larger variety of platforms. Porting and optimizing a 3D
library isn't the same as porting and optimizing a SmallTalk interpreter.
If mainstream 3D app developers had an incentive to help in the port of an
optimized QD3D library, then the Squeak community would benefit as well as
the 3D applications community on platforms where OpenGL costs lots of
money.

Alternatively, Mesa 
<http://www.opengl.org/Documentation/Implementations/Mesa.html>
 might be used instead, although the issues that Tom Thompson raises in his
article should still be addressed. Maybe a 3DMF-like implmentation in
Squeak would be a good thing to look at?

Other useful things would be a core image database implemented in
C/C++/Obj-C on top of whatever Squeak 3D library is used that would allow
extensions via SmallTalk while the core elements and functionality would be
already optimized.



----------------------------------------------------------------------
Lawson English, immortalized in Web Literature:
<http://www.aaskolnick.com/junkyarddog/dictionary.htm>
----------------------------------------------------------------------





More information about the Squeak-dev mailing list