X3D Christmas Tree via XSLT


Have you ever wanted an immersive animation that gave you your own Christmas tree with personalized baubles? You have?! Then read on.

This is a demonstrator of the following technologies:

and concepts:

  • generating graphical charts from XML data
  • using standard data outputs (with some tweaking)
  • basic mathematical solutions for automating 3D layouts and animation

amongst others.


An XML file (based on HR-XML's Organization schema), which can be generated from this InfoPath form or adapted from this sample input, is used to hold images of people (or anything else you wish to display on Christmas tree baubles).

You should use good-quality images, maximum size of 512 by 512 pixels, either PNG or JPEG/JFIF format, and ideally hosted on the web.

This is then transformed with an XSLT stylesheet to produce an X3D file, which is a three-dimensional scene containing models of a room, a tree, and decorations.


Here is a sample output, showing a small set of people from a fictional organization.

Source files

There is an archive of source files you can download.


Creative Commons License
X3D Christmas Tree via XSLT by Tavis Reddick is licensed under a Creative Commons Attribution-Share Alike 2.5 UK: Scotland License.
Based on a work at www.sleepingdog.org.uk.


I found X3D: Extensible 3D Graphics for Web Authors to be an indispensable reference work for X3D.