Re: 3DeLight

Gerard Iglesias <[email protected]> Sun, 19 Jan 2003 23:34:52 +0100
Newsgroups gmane.comp.gnu.3dkit.general
Message-ID <[email protected]>
On Sunday, January 19, 2003, at 12:45 PM, Philippe C.D. Robert wrote:

> On Friday, January 17, 2003, at 01:23  Uhr, Gerard Iglesias wrote:
>> On Friday, January 17, 2003, at 08:24 AM, Philippe C.D. Robert wrote:
>>
>>> Sort of, but my (initial) idea was to convert the stuff into 
>>> Objective-C methods which are declared in the renderer class and 
>>> subclassed by concrete renderers. But maybe this is a stupid idea 
>>> and we should just take what is there - in C (for the sake of 
>>> compatibility and performance).
>>
>> Ok, the C API is interesting and necessary because we need to code 
>> efficiently in the core of 3D object in certain case.
>>
>> This bring in my head the comparison with NSBezierPath, we need low 
>> and high level API to draw geometry : in certain case I use the 
>> NSBezierPath method to draw Quartz elements and in othe cases I need 
>> to go down the CG... functions.
>
> I agree more or less, but do you think we should really provide a 1 to 
> 1 mapping of a subset of RenderMan?

No, I think that we need really :

1/ Mathematical utilities

2/ Rib compatible file format

3/ High level 3D objects, that means :
	- Camera
	- Light
	- Shapes
	- Shaders (Renderman shaders)

The Rib file format compliance means that the drawable objects will 
need to handle the kind geometry Renderman accepts.

In the shapes area I see something that will permit to build easily 
complex polyhedral shapes, I think of the things we can see in Maya 
while manipulating polygon... And also we need curved surfaces...

And because we need to be able write new kind of 3D objects we need a 
low level API to draw basic things, more than the classic conics and 
triangles meshes.

Because I think that we need to make the things simple, Maybe the 
simple support at the beginning for conics, Polymesh, and nurbs would 
be enough.

Sure that the most important thing to do is to make the global 
architecture of the 3D Rendering system, the kind of supported shapes 
can be postponed because it has to be easy to add new geometric shape 
to the system.

The challenge is to make the shader renderman compliant.


That's all for this evening.

Best regards

	Gerard