Superman Logo Avatar
The finished product:
![]()
Original source material:
![]()
Project Goal
To create a small sized GIF animation-loop suitable for use as an avatar in an internet forum.
The animated logo was produced using Maya - a commercial 3D modelling, animation and rendering package. The logo was modelled by using the Bevel Plus tool to create a solid from a planar NURBS curve tracing of the outline. The texture used is the standard Maya Env Chrome connected into the Reflected Colour attribute of a Blinn material. The logo is illuminated by two fixed spot lights. The final animation contains 29 frames and was assembled as a GIF animation using the freeware GIMP graphics package.
I created this logo as an exercise for myself in learning how to operate Maya. There may well be far more effective (and quicker) ways of doing what you see here.
Steps for Creating the Logo:
Creating an Image Plane
The source logo is added as a texture to a polygon plane in the XY-axis. The plane is sized in the same proportions as the image to preserve the aspect ratio.
![]()
It is put on a new layer, which will be set to R to indicate that it is a Reference layer. This also makes it easy to toggle visibility of the image by clicking the letter V next to the layer name. It also means that the reference image can’t be selected by accident whilst working on the logo.
![]()
Tracing the Logo using Curves
The Create->EP Curve Tool is used to create the outline of the shape. The tool is set to Degree 1, to facilitate creation of a curve with straight edges. Using the EP Curve Tool means that curve points may be placed to match corners on the reference image. For tracing the curved lines, the CV Curve Tool is more appropriate.
![]()
The move tool may be used in component mode to correct the location of Control Vertices on the curve, as shown here. Note that curve drawing takes place in the front orthographic view so that all curves created are co-planar. Snap to Grid (Hot Key X before moving a handle) may be used to ensure points are horizontal, by snapping one end of the line to the grid, then snapping the other end. Both points may then be selected and the line moved as a whole to the correct location.
Creating the Inner Curves
Curves inside the outline are created in stages by intersecting lines and trimming the ends off. Degree-one curves are used to produce straight edged sections and degree-three curves are used to create the curved lines. To maintain smoothness, a minimum number of Control Vertices were used to create the curves.
![]()
The image above shows curves for an inner cut-away. Three separate curves were drawn, with four CVs for the two curved lines and two EPs for the straight line. All three curves were selected, then Edit Curves->Intersect was chosen.
![]()
With all three curves selected, Edit Curves->Cut Curve is selected.
![]()
The left-over ends of the curves may then be selected and deleted with the Delete key.
![]()
The remaining pieces should then be selected and joined together using Edit Curves->Attach Curves.
The completed curve outline looks like this:
![]()
The Surfaces->Bevel Plus tool is used to turn the curve outline into a solid shape with bevelled edges.
![]()
To use the tool, the outline curve should be selected first, then the inner curves should be shift-selected.
At this stage, any faults with the original curves will be shown up by the Bevel Plus tool. Overlapping and/or extraneous CVs will look particularly unattractive. If some of the inner surfaces bevel in a different direction to the others, then it will be necessary to Undo the Bevel Plus operation, select the faulty curves and choose Edit Curves->Reverse Curve Direction. This will change the direction of the bevel for those surfaces when the Bevel Plus operation is carried out again.
Texturing the Logo
The logo is textured with a Blinn surface material. An Env Chrome texture’s Colour output is connected to the Reflected Colour input of the surface material.
![]()
The Blinn attributes are set as follows to make the surface appear hard and shiny:
![]()
The Env Chrome placement should be scaled to fit the logo:
![]()
Lighting the Scene
Lights and a Camera are placed in the scene.
![]()
The Manipulator Tool (see big red arrow) is very useful for positioning lights and cameras as it allows the point where the object is facing to be manipulated directly with move handles.
![]()
Mostly, trial and error are used to determine the best placings and settings for the lights and camera. Maya’s Interactive Photorealistic Rendering (IPR) allows the user to make changes to the scene and see the changes instantly on a selected region of the final image.
![]()
In the image above, the portion of the image outlined in red is being rendered in real time whilst the intensity attribute of one of the spotlights is being raised. Although the preview is rendered at 320×240 pixels, the final output will actually only be 100×100 pixels. A lot of the detail apparent in a high-resolution render will not be apparent in the final animation.
Animation
Animation for the logo is a simple key-framed rotation about the Y-axis. Again, the small screen size of the final animation means that more complex motions wouldn’t be visible. Also, a design goal was for an animation that could play in a loop. This limits the animation to being cyclic in some way.
![]()
The animation timeline is set to 30 frames. The logo has a Key set on frame one with the Y-Rotate set to zero, and a Key set on frame thirty with the Y-Rotate set to 360. When the final animation is assembled the thirtieth frame will be discarded, since it is the same as the first frame. Doing it this way makes it much easier to create a cyclic animation with all of the rotations equally spaced along the timeline.
Rendering
The animation is rendered using the Batch Renderer to render all frames at once. The following settings are used:
![]()
The end result is a set of 30 numbered GIF files written to the output directory. The results may be previewed using the FCheck viewer from within Maya.
![]()
As the image size is so tiny, rendering time is short. This makes it a relatively pain-free process to go back and make further changes to lighting, textures, camera positions, etc before re-rendering.
Assembling the Animation
GNU freeware tool, The GIMP (Gnu Image Manipulation Package) is used to assemble the separate GIF files into a single animated GIF file. Each image is loaded onto a new layer in order using the Open As Layer option.
![]()
Display times for each frame default to 100ms but may be altered by changing them on the layer name. As a constantly rotating animation can get annoying, the first layer has a 5000ms delay so that the logo only rotates once every five seconds. The image is saved from The GIMP and given a new filename.
This is the end result:
![]()
Notes
One of the more challenging parts of this project is creating the initial curves for the logo. Maya’s curve tools can be a shade awkward to use. An alternative to creating the curves in Maya would be to use a vector art tool such as Adobe Illustrator to create an image which may then be imported into Maya. For simple text a bevelled object may be created very quickly using the Create->Text tool.
![]()
The same material used for the logo was used to shade the object below:
![]()