- Company Name
- Walt Disney Animation Studios
- Job Title
- Software Engineer (Hair/Cloth Toolset)
- Job Description
-
Job Title: Software Engineer (Hair/Cloth Toolset)
Role Summary:
Design, develop, and maintain software tools that enable artists to create and simulate hair, fur, cloth, embroidery, and feathers for animated productions. Collaborate closely with artists, technical directors, and other engineers to deliver high‑performance, user‑friendly solutions that meet artistic intent and production workflows.
Expectations:
- Deliver production‑ready tools that scale to large scenes and support complex artistic control.
- Optimize algorithms for CPU and GPU performance, ensuring fast iteration cycles.
- Translate cutting‑edge research into robust, maintainable code that integrates with studio pipelines (Maya, USD, Houdini).
- Communicate effectively with cross‑functional teams, translating artistic requirements into technical solutions.
Key Responsibilities:
1. Evolve procedural geometry tools for hair, fur, embroidery, feathers, and cloth.
2. Develop custom geometry deformers and simulation solvers for hair and cloth.
3. Design and implement intuitive UI/visualization components (Qt or equivalent).
4. Build and maintain mathematical libraries (collision detection, linear algebra, optimization).
5. Profile, debug, and optimize existing and new code for CPU/GPU parallelism.
6. Collaborate with artists to iterate on tool features and workflow enhancements.
7. Maintain documentation and best practices for code quality and reproducibility.
Required Skills:
- C++ (C++17+), with strong coding practices and STL usage.
- Experience in animation/VFX or game development environments, focusing on hair/cloth tools.
- Solid grasp of computer graphics fundamentals (geometry, shading, simulation).
- Familiarity with Maya API, USD, OpenGL, Houdini, and Python scripting.
- Ability to implement efficient, scalable algorithms and optimize for parallel execution.
- Excellent debugging, problem‑solving, and communication skills.
Required Education & Certifications:
- Bachelor’s degree in Computer Science, Computer Engineering, Mathematics, Physics, or related field.
- Equivalent professional experience may substitute formal education.