Phone : +91-44-4890321
E-mail: sjagan@hotmail.com
Web Page: https://members.tripod.com/sjagannathan/
Mailing Address:
F14, HIG Flats
Anna Main Road,
KK Nagar,
Chennai - 600 078.
Tamil Nadu.
INDIA.
OBJECTIVE :
To develop software that helps create stunning computer graphics imagery
for motion pictures, television or games.
RECENT INTERNATIONAL ACHIEVEMENT
[Also my First!]:
Escher, my realtime VRML + Java based interactive 3D
design modeler was selected for demonstration at the prestigious Web3D
Round-up at VRML99, Paderborn, Germany. Every
year, the Web3D Round-up features the best interactive 3D works available
on the Internet.
You can experience Escher at https://members.tripod.com/sjagannathan/escher/escher3d/
SKILLS:
3D Programming Languages :
Maya Embedded Language (MEL) and Virtual Reality Modeling Language (VRML
2.0 and VRML 97)
Traditional Programming Languages :
Java, C++, C and Pascal
Operating Systems :
IRIX 5.3 - 6.4, Windows 95 | NT and MS-DOS.
Scripting Languages:
Maya Embedded Language (MEL) and Shell script (sh, csh) on UNIX systems
Programming Libraries:
- Maya Software Development
Kit (OpenMaya API and MEL)
- Kahlua for Open Inventor
programming in Java,
- Java Foundation Classes for
Cross Platform GUI development in Java,
- External Authoring Interface
for Linking VRML worlds with Java,
- Win32 SDK for developing
Windows applications using C and
- Adobe Photoshop SDK for
writing plugins for Adobe Photoshop on Windows
95|NT
3D Software Packages :
Working Knowledge of A|W Maya 1.0, A|W Power Animator 8.x and Kinetix
3D Studio MAX 2.5.
2D Software Package :
Working Knowledge of Adobe Photoshop 5 on Windows 95/98/NT.
PROFESSIONAL EXPERIENCE:
A: May 1999 to Present:
Company : Pentafour Software + Exports Limited,
Chennai, India
Job Description : CG Software Developer
Work Profile:
I design and develop plugins for doing Facial animation,
Hand animation and Wind simulation in Alias | Wavefronts MAYA using MEL
and C++. Please see ACCOMPLISHMENTS section below
for specific projects.
B: September 1998 to May 1999:
Job Description : Freelance CG Software Developer
Work Profile:
I developed Character and FX animation plugins for Alias | Wavefronts
MAYA using the Maya Embedded Language (MEL) and C++. Please see ACCOMPLISHMENTS section below for specific projects.
C: August 1997 to August 1998
Company : EFX, Chennai, India
Job Title: Production Software Engineer
Work Profile:
I was the sole member of the Research and Development Division (recognized
by the Government of India). I designed and developed all their production
software and reported to the Director Please see ACCOMPLISHMENTS section below
for specific projects
INTERNSHIPS:
A: January 1997 to June 1997
Company : Techlead Software Engineering Limited, Pune, India
Work Experience: I developed a web page for Techlead and learned the following
programming languages:
1. Java
2. Virtual Reality Modeling Language (VRML 2.0 and VRML 97)
These languages helped me in writing most production software at EFX and
demonstrating them over the Internet.
B: June 1995 to August 1995:
Company : Prasad Video Digital, Chennai, India
Work Experience:
I got broad exposure in film and video making techniques on the SGI platform.
Our team of three programmers developed an artistic explosion system in
C using IRIS GL. During this time we got recognized by the Government
of India for our Research and Development efforts. The Computer Graphics
Department at Prasad Video Digital became EFX, where I am currently employed.
WEB PAGE:
My web pages at https://members.tripod.com/sjagannathan/
contain behind the scenes accounts, downloadble versions and online demos
of my present and past production software.
ACCOMPLISHMENTS:
A. 3D PROJECTS:
A.1. N U K E :
N U K E enables MAYA Animators to use their Mouse as a
Timing tool. The animator begins by selecting the objects
he wants to retime. The keyframes of these objects are
mapped onto a standard slider in the N U K E UI. When the
animator drags this slider, N U K E notes the time at
which the animator visited the keyframes and re-spaces
them accordingly. Therefore, if the animator drags the
slider fast, the retimed animation is snappy and
vice-versa.
Download N U K E at https://members.tripod.com/sjagannathan/nuke/nuke.zip
A.2. F L I E S :
F L I E S is a system for animating flying insects in
Alias | Wavefronts MAYA. F L I E S is entirely written in
the Maya Embedded Language (MEL). The workflow is very
simple: the animator selects a Fly object and the Box
object in which the flies must fly. F L I E S then
generates unique random flight paths for each fly. Flies
can be lauched in layers, made to fly fast or slow,
jitter or glide smoothly. Everything happens in realtime
-- the user can change any flight parameter and see its
effect on the flies immediately.
Download F L I E S at https://members.tripod.com/sjagannathan/flies/flies.zip
A.3. ESCHER:
Escher is a system for modeling visually rich designs
directly on the geometry of a 3D mesh imported from Alias
Power Animator 8.x. The user defines a pattern as a
collection of triangles and Escher replaces the triangles
of the input mesh with this pattern. An infinite variety
of patterns can be created, applied to the mesh in layers
and thus an infinite variety of designs can be produced.
Escher is written in Java and runs on IRIX and Windows
NT. Download Escher at:
https://members.tripod.com/sjagannathan/escher/
A 2D pure Java demo (that runs on all platforms) and a 3D
VRML + Java demo (that runs on the PC) of Escher is also
available from the above address.
The 3D VRML + Java Demo was selected for
demonstration at the prestigious Web3D RoundUp
at VRML99, Paderborn, Germany.
A.4. XS:
XS is an interactive explosion system for Alias Power
Animator 8.x. The object that gets exploded comes from an
SDL file. Camera parameters are also read from it and
everything goes into an Open Inventor Scene Graph. This
scene graph is fed into an Examiner Viewer and the user
watches the object explode in real-time. A bomb placed
near the object causes this explosion and the user can
change its position and strength. An editable gravity
vector provides the necessary physical realism. XS
outputs the explosion as a series of SDLs for the Alias
Renderer to render. A static or an animated texture can
be applied to the 3D mesh and XS makes sure that the
exploding pieces take away the right texture chunk with
them.
XS is written in Java and uses Kahlua [a Java wrapper for
the Open Inventor library] for the Open Inventor
interface. With Open Inventor execution environments on
IRIX and NT it runs on both these platforms.
A.5. 3D MESH I|O LIBRARY:
A set of Java classes for reading and writing 3D meshes
in OBJ or SDL format on IRIX and Windows NT. This library
was used for developing Escher and XS.
B. 2D PROJECTS:
B.1 SCRATCH REMOVAL SYSTEM:
Removes vertical and horizontal scratches from an 8-bit
SGI Image Sequence. The user begins by specifying a
window enclosing the scratch and chooses one of the
following methods to remove it:
- Linearly interpolate pixels
on either side of the scratch window to arrive at
a color value for the (scratched) pixel inside
the window.
- In the scratched area, the
blue channel is affected the most, followed by
green and red channels. Assuming the red channel
to be pure, map the relationship of red to green
and red to blue pixels on either side of the
scratch window to get a color value for the
(scratched) pixel inside the window.
- According to the
user-defined shape of the needle that may have
caused the scratch, restore the red, green and
blue channels.
Scratch Removal System is written
in Java and runs on IRIX and Windows NT.
B.2 SGI IMAGE PLUGIN:
Reads and Writes 8-bit SGI RGB and RGBA images in Adobe
Photoshop 4 (and above) on Windows 95 | Windows NT. It
can read image data stored verbatim or compressed using
the RLE scheme. However, it writes image data verbatim.
SGI Image Plugin was developed using C and the Adobe
Photoshop Software Development Kit.
Download the SGI Image Plugin at https://members.tripod.com/sjagannathan/sgi_plugin/
B.3 TORRENT:
Torrent is a script-based, extensible 2D effects system.
It is actually a collection of modifiers. A modifier
takes an 8-bit SGI Image sequence as input, modifies it
in some way and writes an 8-bit SGI image sequence as
output. Thus several modifiers can be layered together
over a timeline to produce a c |