Help with creating 2d animated series

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Any

SALARY

$5/hour

HOURS PER WEEK

20

DATE UPDATED

Aug 4, 2026

JOB OVERVIEW

ring job post · MD
Job Posting: Photoshop Layer Separation for 2D Rigging (Character Art)
Project Overview

We're producing a flat 2D animated children's series (Caribbean-set, cel-shaded illustration style). We have completed, approved flat character model sheets (single-layer PNGs) for our cast, and we now need those flat images broken apart into separated Photoshop layers so a rigger can build puppet rigs from them in Toon Boom Harmony.

This is NOT an illustration or design job. No drawing, redesigning, or artistic decision-making is required. This is precise, mechanical image-editing work: selecting, masking, and cleaning up existing artwork.

What You'll Be Given

For each character, a flat, single-layer PNG turnaround sheet showing:

Front view, 3/4 view, and side profile (full body)
A 4-6 panel facial expression sheet
Plain white/neutral background, no scenery
What You Need to Deliver

For each character, a single layered PSD file with the character's body cleanly separated into individual, clearly named layers, ready to be rigged (cut-out/puppet-style animation).

Required layer breakdown (adjust based on the character's actual pose/complexity):
Head (hair/ears included as one piece unless otherwise noted)
Torso
Upper arm — left / right
Forearm — left / right (only if the pose has a bend at the elbow; otherwise combine with upper arm)
Hand — left / right
Upper leg — left / right
Lower leg — left / right (only if the pose has a bend at the knee; otherwise combine with upper leg)
Foot — left / right
Any distinct props or accessories the character is holding or wearing (e.g., a bag, tool, glasses) as their own separate layer(s)

Simpler, more static poses (arms at sides, standing straight) need fewer splits. More dynamic poses (bent limbs, overlapping props) need more granular splits so the rigger can articulate each joint independently.

Step-by-step process we expect:
Select each body part cleanly using the Lasso, Pen tool, or Quick Selection (Pen tool preferred for the cleanest edges)
Copy each selected part onto its own new layer
Fill in the gap left behind on the layer underneath (e.g., if you cut out an arm, the torso layer will have an arm-shaped hole where it used to be covered — that hole needs to be patched with the correct flat color/shading so nothing shows a "hole" when the rig moves)
Content-Aware Fill works well for this on our flat, cel-shaded style (bold outlines, flat colors, minimal texture/gradient) — manual patching only if Content-Aware Fill leaves visible smudging or seams
Clean up all seams/edges at 100–200% zoom — no white halos, no jagged selection edges
Ensure every layer has a fully transparent background (not white)
Name every layer clearly and consistently (e.g., head, torso, arm_L_upper, arm_R_upper, hand_L, leg_L_upper, foot_R, etc.) — no default Photoshop layer names
Save/deliver as a properly organized .psd with all layers intact (do not flatten)
Required Skills
Strong working knowledge of Photoshop selection and masking tools (Lasso, Pen tool, Quick Selection, Select and Mask)
Experience with Content-Aware Fill and/or manual clone/patch techniques for filling in removed areas
Comfort working with flat, cel-shaded/vector-style illustration (not photographic retouching)
Meticulous attention to clean edges and consistent, logical layer naming
Ability to follow a written brief precisely and flag ambiguous cases (e.g., unclear where to split a limb) rather than guessing
Not Required
Illustration or drawing skill
Character design or concept art experience
AI image generation experience
Scope & Volume
Trial run: 1 character (we'll provide this first to confirm quality and process fit before further hires)
Full scope: up to 17 character sheets, each with 3 body views + expression panels
What "Approved" Looks Like (Quality Checklist)
All body parts cleanly separated per the required layer breakdown above
No visible gaps, holes, or mismatched color patches where parts were removed
No white halos or jagged edges at seams
All layers have transparent backgrounds
Layers are clearly and consistently named
File delivered as an unflattened .psd

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0122
Total Execution Time  0.0135
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,509,144 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Help-with-creating-2d-animated-series-1702528
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0071 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1702528
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 960296
 LIMIT 1 
0.0007   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1702528
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-11',ej.date_added) duration_daysDATEDIFF('2026-08-11',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-11',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1702528' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1702528 
0.0016   UPDATE employer_jobs SET hit_counts '***Aug-04-2026=418***Aug-05-2026=72***Aug-06-2026=39***Aug-07-2026=15***Aug-08-2026=9***Aug-11-2026=1' WHERE job_id'1702528'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Aug-2026=553' WHERE job_id'1702528'  
0.0007   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1702528' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1702528 
0.0007   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '960296'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)