'Sculptor' - a 3D Computer Sculpting System

Mike King
London Guildhall University

Abstract
The Author describes Sculptor, a three-dimensional computer modelling system that allows the use of sculptural methods for the construction of objects. These objects can be subsequently realised as physical sculptures through the use of a contour-slicing routine, though the major use of the system has been in the production of computer images of 3D 'scenes'. The origins, structure, and usage of the system are described, followed by a discussion of the author’s personal exploration of its possibilities.

Introduction
Computer solid modelling systems are aimed mainly at commercial animation, engineering, product design or architectural users, and are usually based on a polygon-mesh description of objects. There are two main methods of constructing objects described in this way; constructive solid geometry (CSG), where complex forms are created by the intersection of 'positive' or 'negative' primitive volumes, or surface modelling, where surfaces are created in 3D using sets of control points. Artists and sculptors have used these systems, but are presented first with the problem of modelling techniques more suited to other applications, and secondly with the problem of 'photo-realistic' rendering techniques. Artists have traditionally applied a personal feel for depth, perspective, light and shadow, which they are robbed of with computer graphics systems, as these use more and more the laws of optics in the precise renderings of objects. The rendering software can only be tuned to certain degrees by the artist, so the main area of expression lies with the modelling. The modelling in Sculptor presents an alternative to the techniques more suited to engineering, and also some limited departures in the methods of rendering. Sculptor comes closer to CSG than surface modelling in that objects are built up only by the intersection of positive volumes, starting with a single sphere as the primitive. 

1) Description of the system and its origins 

Sculptor allows the interactive creation and editing of arbitrary objects composed of spheres overlapping in three dimensions. The system allows the user to create a three-dimensional object by successively adding spheres of the desired radius at arbitrary positions in space. Further manipulations, such as scaling, rotating, translating, copying, mirroring and deleting are provided by the system. Perspective viewing of a single object, or scenes composed of a number of objects, is provided, along with provision for adjusting the viewing parameters for close or far perspectives. 

Sculptor was originally conceived as a simple 3D modelling system, built by the author as a test bed for investigating user interface design in interactive graphics media. More recently it has been used by the author as a system for generating a very personal style of imagery. Some of the interface design concepts arising from Sculptor have been used in a 2D painting/drafting system called ICAS (Integrated Computer Art System) [1]. Using the sphere as the only primitive reduced development effort, and also resulted in an unusually organic imagery, in contrast to the more geometrical imagery of conventional 3D modelling systems. The system uses the techniques of object representation and display described by Badler et al. [2] and Knowlton [3] to achieve the organic shapes, rather than, for example, the approach adopted by Wyvill et al. in SOFT [4] and [5]. 

Because of the unique symmetry of the sphere as a primitive, three concurrent views can be easily provided to help the user visualise the object. A first-angle projection system is employed where circles are used to represent the spheres; the computational expense of doing this being negligible compared to using other kinds of primitive. Fig. 1 shows the screen layout, consisting of the first-angle views of the object (elevation, plan, and side view) and also the menus and various symbols informing the user of the status of the system. 

In order to create objects of reasonable complexity a large number of spheres are needed (at present the system allows a maximum of around 20,000), and this can make editing of an object very difficult once the sphere count is more than even 100. To counter this problem a technique is used called hiding where spheres can be made invisible (though not lost from memory). In order to do this in a practicable way, spheres are added to the current object in groups, of which the system provides 12. A current group is selected for editing, while the remaining groups can be made invisible to facilitate the editing process. Hence objects are usually created or sculpted in parts, where the spheres in each part are grouped together. Various operations are provided to allow ungrouping, regrouping, transferring, and merging of existing groupings. Groups can also be loaded from and saved to memory allowing the user to build up libraries of sculptural 'components'. The blocks of little squares on the right of the plan view show a tree-structure of groupings which allow the user to select and make visible any combination of the twelve available groups. 

Operations for manipulating the medium are grouped in five sub-menus, and each operation that has variations is provided with a menu of 'switches' which appear whenever the operation is selected. The main menu is always visible; sub-menus are called up from the main menu and appear below the main menu, while switches appear below the submenu (refer to fig. 1). The tree-structure of menus, sub-menus and switches is shown in fig. 2. 

Fig.1 Sculptor screen layout
This shows three orthogonal views of the object under construction in 1st angle projection. The user drives the system through the menus to the right of the views, using a mouse or a tablet and puck. The small boxes to the right of the plan view are used to select one or more groupings to work with and make visible or invisible - this is needed in the construction of complex objects.

Fig.2 Sculptor menus
The operations for the Sculptor system are arranged in five menus, which group related operations together. Operations which have variations can have these set by switches arranged below the operations on the screen. The Sculptor system was originally built as a test-bed for user interface design and considerable development effort has gone into this aspect of the system.

Kenneth Knowlton's paper entitled  'Computer-Aided Definition, Manipulation, and Depiction of Objects Composed of Spheres' [6] outlines the algorithm I have used in Sculptor for object representation and rendering. I have modified the rendering algorithm in several ways to give a choice of finished imagery. The illusion of solid objects is created using two types of filled disc, called respectively the facade and the outliner which are sorted by depth and drawn in order from the rearmost to the foremost. The outliner is always drawn as a filled black disc, painted directly into the frame buffer (i.e. overwriting pixels). Originally the facade was drawn in OR mode which allows previously drawn highlights to 'shine' through; now an alternative technique is used involving the comparison of colour values to see which is brighter - brighter colours are drawn over darker colours, never the other way round. 

Different rendering styles are achieved by drawing different types of facade: a white disc for 'outline', and a series of up to 256 discs with smoothly interpolating colour values, giving the 'smooth' rendered option. The two types of rendering take different times; 'outline' being the fastest and 'smooth' being the slowest. While the 'smooth' rendered version is usually used for the final result, the 'outline' version is useful for a quick 3D visualisation to guide the user in the creation of the object. These rendering algorithms are essentially a 'fudge', in that no 3D data is used for drawing a given sphere, but are performed much more quickly than any true 3D rendering could be. 

Sculptor, written in C, runs on an IBM AT compatible driving an Digisolve Ikon frame-store. The frame-store has 768 x 576 resolution with 8 bits per pixel, and its own 68000 processor and Hitachi ATRTC graphics chip and graphics commands in firmware. I have also adapted it to run on the Hercules Graphics Station card, which is controlled by the TIGA graphics processor, and is significantly faster.

2) Constructing objects (modelling)

In looking at creative computer media in the visual arts for my PhD research at the Royal College of Art (London, England) [7], I identified the principle of synthesis from primitives as a useful concept. In Sculptor the only primitive is the sphere, and all the operations provided allow for the construction or synthesis of some end-result from the (single) primitive. In considering the processes involved I proposed a distinction between arbitrary  and algorithmic synthesis from primitives. Arbitrary synthesis from primitives implies a sequence of operations on the medium determined solely by the artistic discretion of the user, while algorithmic synthesis from primitives implies a sequence of operations determined by a set of rules embodied in the machine as an algorithm. I discuss this further in [8], and point out a relationship between algorithmic synthesis and different types of geometry. Sculptor provides several geometrical operations, or geometrical primitives, which are simple examples of algorithmic synthesis from primitives: cylinder, cone, arc and torus. In the first two cases spheres are added at small distances apart along a straight line specified by the user, while in the others spheres are added along a circular arc, again specified by the user. In the following examples of constructing an object using Sculptor, arbitrary and algorithmic synthesis feature in different proportions, with different effects on the end-result. Fig. 3 shows the construction of a chair, and illustrates how much of the construction work arises from copying groups of spheres that have already been sculpted. The cylinder, and part of a torus are also used in the construction. 

Fig.3 Stages in the construction of a chair
Top left: a column of spheres have been added using the elevation view, and constrained to align their centres vertically. Top right: a smaller column has been added in front of the previous column, using the side view, and both columns copied using the copy group command. Bottom left: cross pieces are added; each new element is added as a new 'group' to facilitate correction of any errors. Bottom right: the finished chair includes part of a torus (ring of spheres).

Many types of object can be constructed using the short cuts that Sculptor, as a typical computer medium, offers the artist. However in order to create a more figurative, or biomorphic kind of piece, a similar amount of effort is required as in any traditional medium. Fig. 4 shows some different renderings of an object which has required this kind of approach. These renderings, involving the mapping of 3-D textures onto the surface were carried out on high-performance parallel processing machines by Ian Curington of Amazing Array Productions in London [9] using the stored data-file describing the object.

Fig.4 'Morph1'
Three views of an object rendered by Ian Curington on parallel-processing equipment. A solid marble texture is mapped on to the surface; the various characteristics of the texture are controlled by parameters that set, for example, the width and base colour of the veins. The third view has shadows added by a ray-tracing technique (this adds considerably to the rendering time). Artist: Mike King, photographer: Ian Curington.

The construction of the chair was mainly through arbitrary synthesis from primitives with some algorithmic synthesis (using the definitions made above), while the amorphous shape of fig. 4 involved only arbitrary synthesis from primitives. William Latham extends the concept of algorithmic synthesis from primitives towards a rule-based system for evolving complex form called 'Form Synth' [10], and the type of results are different again. William Latham, who is now developing the system as Research Fellow at the IBM UK Research Centre, used Sculptor to realise some of his early ideas, though the execution of the rules within his system was carried out 'manually'; there would however be the potential to drive Sculptor from an expert system which formalised the rules by which he works. Fig. 5 is an example of his use of the Sculptor system, again rendered with 3D texturing by Ian Curington. 

Fig.5 'Form II'
William Latham has been the only artist to use the system apart from myself, and saw the possibilities of exploiting it to implement some of his ideas on rule-based evolution of form ('Form Synth'). Artist: William Latham, photographer: Ian Curington.

I have extended the use of Sculptor with a contour-slicing routine, which will take any Sculptor object (i.e. any object composed of spheres) and plot out a series of cross-sections. The reverse process, that of converting a set of surface points or contours into a set of spheres to define the same object, has been described by O'Rourke and Badler [11]. However the techniques I have used are not a simple reversal of their process, which in any case was restricted to certain types of object. Briefly, the technique involves extracting a set of circles for each slice through the object, finding their points of intersection, and creating an ordered sequence of'exposed' arcs that make up the contour. The routine looks likely to benefit from a spatial-subdivision approach. 

The main purpose of developing the contour-slicing routine was to allow solid sculptures to be built from lamina defined by the contour-slices. Fig.6 shows a sectioned version of the object in fig. 4, where 100 slices were drawn of an object in an orthogonal projection; the figure also shows the resulting sculpture made from plywood lamina. The individual contours were plotted out, stuck onto plywood sheets, cut out with a fretsaw, and nailed and glued together. Other sculptures have been created as maquettes using expanded polystyrene sheets, which can be rapidly cut to the contour using a hot-wire cutter. 

Fig.6 'Morph1' as a physical sculpture
The upper part of the figure shows 'Morph1' as a series of contour-slices in orthogonal projection. The lower figure shows the corresponding sculpture made from plywood laminae. Individual contours (100 of them in this case) are plotted, cut out and stuck to sheets of plywood; the laminae are then cut out and pinned or glued together to form the sculpture. Alignment of successive slices is secured by the use of a grid of numbered register marks overlaying the contour plot. Artist: Mike King, photographer: Mike King. 12cm x 8cm x 8cm.

The idea of producing sculpture from computer-generated contour slices is not new - Robert Mallary has produced sculptures in marble from contour plots (described by Ruth Leavitt [12]), and more recently Mark Dunhill  showed series of sculptures in the Cleveland Gallery (UK) computer art exhibition [13]. I have so far only constructed a few small sculptures by this method, and have made no attempt to smooth the stepped surfaces, but the potential is there for the construction of sculptures on a large scale (several metres high) and for the smoothing of the surface by either removing or adding material. 

3) The potential and limitations of Sculptor
As with any other sculpting medium, the medium itself imposes limitations, in this case arising from the sole provided primitive, the sphere. Given that one is willing to adapt one's sculptural techniques to circumvent this limitation, what advantages are there in working with Sculptor? I would claim the same advantages as for other creative computer media, such as word processing, paint systems and drafting systems. These advantages lie chiefly in the infinite editability of the medium (though this in turn requires a special kind of discipline). However, the main appeal to a sculptor may be the saving in materials and mess that goes with the use of a computer medium, though offset by the cost of purchase or access-time. Sculptor also offers the sculptor a computer system for making maquettes, with the ability to view the created object from any angle on the screen, and finally with the option of creating a physical sculpture from lamina, once the development is complete and satisfactory. 

Fisher and Masters [14] describe a large sculpture that they designed and built with the aid of computers, though the technique differed in that a more traditional CAD system was used. However, part of the exploitation of the computer in their case lay in the display of the sculpture in a computer simulation of the building in which it hung. Such a use could also be made of Sculptor, where the computer image of the object could be used within an environmental simulation system, either landscape, architectural, or both. 
Sculptor, like any 3D computer graphics system, is not as easy to use, in terms of control over the medium, as, for example, a paint system. However, it is easier to use than some other interactive solid-modelling systems because of the use of the sphere as the sole primitive, but this also limits the range of objects that can be created. To enable a wider range of objects to be created, e.g. those with flat planar surfaces, the system would have to be extended. The present contour-slicing routine could be used to yield a planar-polygon data structure for the objects, which would allow, for example, the slicing of objects and other more conventional CAD techniques. This is the most likely route to making Sculptor more universally useful as a modelling tool, where it would just form part of a range of techniques along with CSG and surface modelling that could be used by artists. A sculptor could model crude organic volumes using Sculptor techniques, run the data through a 'polygoniser', and continue modelling with the more conventional tools of 3D CAD.

Another proposed development is to use a 3D input device (locator) such as a wand. This would make it easier to work in three dimensions, because one would not need to constantly cycle between elevation, plan and side view in order to specify the 3D position of objects. Sculptors are used to walking around a sculpture, or at least moving their heads, in order to gain a 3D understanding of what they are creating. A single view, that can take from minutes to hours to render, is frustrating and results in a creative bottle-neck. A speed-up in rendering time to bring about real-time or near real-time rotations of the rendered object would help here. 

The disadvantage of the Sculptor system as it stands lies in the type of objects that are natural to build with it: bulbous, amorphous, and to some people rather disquieting or repulsive. However, while the possibilities of overcoming this problem have been outlined above, the author is not planning to pursue this at present, being quite content to explore the artistic possibilities of Sculptor as it is.
 
4) A personal exploration
In my recent work with Sculptor I have moved away from constructing single sculptures to building perspective scenes, where I use relatively simple shapes to create a world into which the viewer is drawn.  Although limited in terms of geometry and topology I find that I am performing a kind of painting in 3D, where weight and volume and juxtaposition can be directly manipulated, following vague spatial intuitions. I have always been drawn to the exploration of perspective in computer graphics, and I find that Sculptor has recently allowed me to do this in a satisfying way. I take output from the Sculptor system into a conventional paint system and cut and paste to build up more complex scenes such as in fig. 7. Here I have taken three separate Sculptor images and composed them together, carefully using similar perspective settings. The bars in the foreground are added in a semi-transparent way to partly suggest a missing vanishing-point. The shadow in the background is another simple fudge, but is perfectly effective for my purposes. In fig. 8 I have taken two renderings of the same scene with different perspective settings and blended them together with a shaded background. Although the mathematics of perspective can be a straight-jacket to the artist in 3D graphics, using several possible viewing positions in one scene, as in this image, is one way to become more playful with it. In some early religious paintings multiple viewpoints within one scene were used very expressively to give some elements greater importance than others: this has not been explored much in 3D computer graphics. 

Fig.7 Perspective scene
This is created by compositing several Sculptor renderings using a paint system. The transparent effect of the bars is the result of averaging the pixel values of the two images, while the shadow is a shifted, flood-filled copy of one element of the scene. The image was output to an ink-jet printer capable of 256,000 colours. Artist: Mike King, photographer: Hugh Lacey.

Fig.8 Perspective scene
This is created by blending two different views of the same set of objects. Using more than one perspective setting in one image is one way of reducing the tyranny of the mathematically precise viewing of 3D computer graphics. Artist: Mike King, photographer: Hugh Lacey.

Colour Plate Sculptor scene
This rendering was done at Amazing Array Productions (UK) who have the specialised software and hardware needed for high resolution rendering using multiple light-sources and marble texturing. Attractions of the Sculptor system to the author include the seamless joining of volumes, the ability to 'paint' in 3D, and the release from gravity of apparently massive forms. Artist: Mike King, photographer: Ian Curington

The colour plate showing a Sculptor scene is typical of recent work, though this image was rendered again by Ian Curington at Amazing Array. The scene is shown with no perspective, but illustrates some further use of algorithmic synthesis from primitives, where the rows of spheres have been added using simple loops. I plan to develop the algorithmic side of the system further using possibly fractal techniques or 3D grammars, as I describe briefly in [15]. I have recently had access to the source code of a ray-tracer (courtesy Richard Wright), and have adapted this to render Sculptor objects. This takes some of the softness out of the original range of renderings, but has the great advantage of adding shadows, which I find very helpful in the exploration and definition of volume and space.

Conclusion
Sculptor started out as a research tool for developing interfacing ideas, but has developed into a system for creating a rather personal type of imagery. There are possibilities for widening the scope of the system, both in terms of making it useful for a wider community of user, and in terms of making physical sculptures from the computer models. It may also represent one of many efforts by an artist to write specialised software for their own use, or alternatively, one of many efforts of a software writer to pursue the creative possibilities of a system that they had written.

References

[1] King, M.R., "Development of an Integrated Computer Art System", in (Eds.) Magnenat-Thalmann, N. and Magnenat-Thalmann, D., New Trends in Computer Graphics , proceedings of the CG International '88, Springer-Verlag 1988., pp 643-652. 
[2] Badler, N.I., O'Rourke, J. and Toltzis, H., "A Spherical Representation of a Human Body for Visualizing Movement", Proceedings of the IEEE, Vol.67 No.10, October 1979, pp. 1397-1403. 
[3] Knowlton, K., "Computer-Aided Definition, Manipulation and Depiction of Objects Composed of Spheres", Computer Graphics, Vol.15 No.1, April 1981, pp. 48-71. 
[4] Wyvill G, McPheeters C and Wyvill B, "Data structure for soft objects", The Visual Computer 2:227-234 (1986). 
[5] Wyvill B, McPheeters C and Wyvill G, "Animating soft objects", The Visual Computer
 2:235-242 (1986). 
[6] Knowlton [3]. 
[7] King, M.R., Computer Media in the Visual Arts and their User Interfaces, PhD Thesis, Royal College of Art, London 1986 (unpublished). 
[8] King, M.R "Towards an Integrated Computer Art System", in (Eds.) Lansdown, R.J. and Earnshaw, R.A., State of the Art in Computer Art and Animation, proceedings of the 1986 conference at the Royal College of Art, London, Springer Verlag (1988). 
[9] Curington, I., "A Normal-Buffer Vectorised Surface Shading Model", in (Eds.) Carlos, E. and Van Dani, Proceedings of Eurographics ’85 conference, Elsevier Science Publishers, pp. 365-374. 
[10] Latham, W., (1986) “Form Synth, The Rule-Based Evolution of Complex Forms from Geometric Primitives”, in (Eds.) Lansdown, R.J. and Earnshaw, .A., State of the Art in Computer Art and Animation, proceedings of the 1986 conference at the Royal College of Art, London, Springer Verlag 1988. 
[11] O’Rourke J, and Badler N (1979) “Decomposition of Three-Dimensional Objects into Spheres”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.PAMI-1, No.3, July 1979, pp. 295-305 (1979). 
[12] Leavitt, R., Artist and Computer, Harmony Press, 1976. 
[13] Chettle, S. "Art and Computers", Exhibition Catalogue, Cleveland Gallery, Middlesbrough, England, 1988. 
[14] Fisher, R.N. and Masters, R.J., "Computer-Aided Sculpture: Visual and Technical Considerations", Leonardo, Vol.18, No.3, pp.133-143, 1985. 
[15] King [8].