Ayam is a 3D modeling environment for the RenderMan interface (Win/Mac X/Linux)

Quote

Ayam is a free 3D modeling environment for the RenderMan interface, distributed under the BSD licence. This means that neither the author nor any contributors make money out of this software. We need your (yes your!) feedback to keep this project alive. If you use Ayam, please submit your pictures, bug reports, or feature requests.

Ayam is a full featured NURBS/CSG modelling environment for the RenderMan interface.NURBS-Modelling

* NURBS (Non Uniform Rational B-Splines): allow to model smoothly shaped objects with high accuracy. * NURBS modelling is done by combining common NURBS curves or interpolating curves to NURBS patches. * The combination is e.g. done using tool objects: Revolve, Extrude, Sweep, Birail1, Birail2, Skin, and Gordon. For instance: a Revolve tool object has a planar curve as child object and revolves it to a surface of revolution; the curve stays editable all the time, caps may be added automatically by simply clicking on check-boxes. Any fully closed NURBS object is available as primitive to CSG! * Revolve object with arbitrary angle of revolution; may create full caps. * Extrude object with holes, bevels and caps. * Sweep object implements the standard sweep operation (sweeping a cross section curve along a trajectory curve); the cross sections may be rotated automatically, so that they are always perpendicular to the trajectory; in interpolating mode, the sweep interpolates all the cross-section-curves; a scaling curve may be present that modifies the sweep further. * Birail1 object sweeps a cross section along two rail curves. * Birail2 object sweeps a cross section along two rail curves, morphing it into a second cross section at the end of the rail curves. * Skin object is able to skin curves of arbitrary topology (skin an interpolating curve with 4 points with a linear NURBS curve with 2 points and a cubic NURBS curve with 10 points); in interpolating mode, the skin even interpolates all the curves. * Gordon object creates Gordon surfaces that interpolate a network of curves. * Cap object is able to create planar caps from curves. * Bevel object is able to create bevels from curves. * ConcatNC object concatenates a number of NURBS curves, creating fillets where necessary. * High quality Text object creates objects based on extruded Bezier curves extracted from TTF files.

CSG-Modelling

* CSG (Constructive Solid Geometry): compose complex objects from primitives that are combined with boolean operations. * The following RenderMan primitives (quadrics) are implemented: Sphere, Disk, Cylinder, Cone, Hyperboloid, Paraboloid, and Torus; additionally, there is a Box primitive. * All quadrics may be automatically closed (missing cap surfaces generated), even if any of their parameters are not on default values. * Primitives may be combined using Level objects (that do CSG operations) in a hierarchy. * Ayam itself does not calculate and preview the results of CSG operations, this is done by a RenderMan compliant renderer or by the aycsg CSG preview plugin, which is based on OpenCSG. See an example rendering of the aycsg plugin. * CSG operations are not limited to the aforementioned primitives. As long as it is guaranteed that an object is fully closed, it may be used in CSG operations.

Additional Geometric TypesTo complement the feature set and allow easier integration of objects from systems with other modelling paradigms, Ayam also supports:

In order to render the scenes you model with Ayam you need a RenderMan compliant renderer like 3Delight or Aqsis.

Ayam provides shader parsing plugins for all those renderers, so that you may achieve the same level of integration as with BMRT. However, all Ayam binaries are statically linked with libslcargs from BMRT2.6beta, so that Ayam will just be able to parse BMRT compiled shaders, initially.