public SpaceRegion build(Node node) {

		SpaceRegion region = (SpaceRegion) super.build(node);
		GroupSector masterSector = new GroupSector(region);

		SpatialDivisionBuilder builder;

		NodeList nodeLst;

		nodeLst = node.getChildNodes();

		for (int s = 0; s < nodeLst.getLength(); s++) {

			Node fstNode = nodeLst.item(s);

			if (fstNode != null) {

				if (fstNode.getNodeType() == Node.ELEMENT_NODE) {

					builder = builders.get(fstNode.getNodeName());

					if (builder != null) {
						
						SceneNode newNode = builder.build(fstNode);
						//XML files save their relative positions
						Vec3 posBefore = new Vec3( newNode.localPosition );
						masterSector.addChild( newNode );
						newNode.localPosition.set( posBefore );
						
					} else if ("material".equalsIgnoreCase(fstNode.getNodeName())) {
						readShade(masterSector, fstNode);
					}
				}
			}
		}

		return masterSector;
	}