X-Reyes

Wednesday, January 11, 2006

Goals

The following list identifies the things I hope to achieve by undertaking the task of implementing the Reyes rendering architecture using XML and XSLT.

1) Extend my knowledge of and experience with XSLT 2 and XPath 2.

2) Learn some of the fundamental principles of building a Reyes renderer and 2D/3D rendering in general.

3) Better understand what can be achieved by using functional programming techniques, where recursion replaces conventional loops and there are no side-effects from calling a function.

4) Produce a renderer that can, initially, render simple SVG graphics as Base64 encoded TIFF files.

5) The longer term goal is to then extend X-Reyes to render simple X3D scenes with a basic lighting model. This is altogether more of a challenge as it really gets to the core of what Reyes rendering, and 3D rendering in general is all about.

6) Everything that is created should be as human readable as possible. I say this because there is one thing I cannot stand, and that is the anonymous list of arguments to a function. When reading someone's code, at a glance it is not possible to tell what the nature of those arguments might be. Now that XSLT 2 allows the passing of parameters to both matching templates as well as named templates it is possible to get a better idea of what parameters are expected at the other end. I know that the xsl:function element has anonymous parameters but then nothing's perfect.

Labels: , , ,

0 Comments:

Post a Comment

<< Home