How to Make a Gubby in Desmos Graphing Calculator
Desmos has quietly become one of the most creative playgrounds on the internet — not just for math students, but for digital artists who use equations to build detailed characters and creatures entirely from graphs. One popular project in the Desmos art community is the Gubby: a rounded, blob-like character shape that relies on a specific combination of geometric and algebraic curves to achieve its soft, cartoony look.
Here's a practical breakdown of what a Gubby is in this context, how the construction works mathematically, and what factors will shape how yours turns out.
What Is a "Gubby" in Desmos?
A Gubby in the Desmos context refers to a custom character — typically a round, pudgy shape with simple facial features — built entirely using equations plotted on Desmos's graphing calculator. It's part of a broader tradition of Desmos art, where users combine circles, ellipses, inequalities, piecewise functions, and parametric equations to create illustrations that look hand-drawn but are defined entirely by math.
The Gubby style specifically leans on:
- Filled regions created with inequalities (e.g., shading the interior of a circle)
- Smooth curves from ellipse equations for the body
- Smaller overlapping shapes for eyes, highlights, and limbs
- Restricted domains and ranges to control exactly where each curve appears
Core Equations Used to Build a Gubby
1. The Body Shape
The foundation of most Gubby designs is a circle or stretched ellipse. The standard circle equation is:
x² + y² = r² To fill it as a solid shape, you convert it to an inequality:
x² + y² ≤ r² Desmos will shade the interior automatically. Adjusting r changes the size. For a more oval or egg-shaped body — common in Gubby designs — use an ellipse:
(x²/a²) + (y²/b²) ≤ 1 Where a controls horizontal width and b controls vertical height.
2. Eyes
Eyes are typically small filled circles offset from the center:
(x - h)² + (y - k)² ≤ r² Changing h and k positions each eye. White highlights inside the eyes use an even smaller filled circle in a contrasting color, placed slightly off-center within the eye.
3. Mouth and Expressions
A simple smile uses a restricted arc — part of a circle equation with a domain or range restriction:
y = -√(r² - x²) + offset {-a ≤ x ≤ a} The domain restriction {-a ≤ x ≤ a} clips the curve to just the bottom arc, forming a smile shape.
4. Limbs and Accessories
Stubby arms and legs are usually additional small ellipses positioned around the body, sometimes rotated using parametric equations:
x = h + a·cos(t)·cos(θ) - b·sin(t)·sin(θ) y = k + a·cos(t)·sin(θ) + b·sin(t)·cos(θ) Where θ is the rotation angle. For beginners, it's easier to simply tilt an ellipse visually by adjusting the a and b values and placement rather than using full rotation math.
🎨 Building It Step by Step
| Step | What to Add | Equation Type |
|---|---|---|
| 1 | Body blob | Filled ellipse inequality |
| 2 | Eyes | Two small filled circles |
| 3 | Pupils | Even smaller filled circles, offset |
| 4 | Eye highlights | Tiny white-filled circles |
| 5 | Mouth | Restricted arc (half-circle) |
| 6 | Limbs | Small ellipses outside body |
| 7 | Blush/details | Shaded ellipses with transparency |
Desmos allows you to set color and opacity for each expression, which is key to achieving the layered, soft look that defines Gubby-style characters.
Variables That Affect Your Results
How your Gubby turns out depends on several factors:
Mathematical comfort level plays a major role. If you're new to Desmos, starting with basic circle inequalities and building upward is far more manageable than jumping into parametric rotation. More experienced users can add shading gradients through layered semi-transparent shapes.
Design intent matters too. A simple three-layer Gubby (body, eyes, mouth) looks clean and fast to build. A detailed version with highlights, blush marks, accessories, and animated movement using Desmos sliders requires significantly more expressions and planning.
Use of sliders is what separates static Gubbies from animated or interactive ones. Desmos sliders let you tie variables like position, size, or shape parameters to adjustable values — meaning you could make a Gubby that blinks, bounces, or changes expression by moving a slider.
Browser and device performance also factor in. Complex Desmos graphs with dozens of filled inequality regions and parametric curves can slow down rendering, especially on older devices or mobile browsers. Keeping your expression count reasonable helps.
💡 Layering and Color Strategy
Desmos renders expressions in order from top to bottom in the expression list. This means shapes added later appear on top of earlier ones. Careful ordering of your expressions is how you control which elements look "in front."
For a Gubby:
- Body goes first (bottom of visual stack in your expression list)
- Eyes go after (they appear on top of the body)
- Pupils and highlights go last (they sit on top of eyes)
Using opacity settings (available by clicking the colored dot next to any expression) lets you blend colors for blush effects, shadows, or soft gradients without needing calculus-level complexity.
What Shapes Your Final Outcome 🔢
There's no single "correct" Gubby — the design space is wide. Someone working through this for a math class project will land somewhere very different from someone building an elaborate animated character for a Desmos art submission. The precision of your curve fitting, the number of expressions you're comfortable managing, and the amount of time you want to invest in refinement all steer the result in different directions.
The math is accessible at multiple skill levels — the same fundamental equations scale from a quick 10-expression sketch to a 200-expression detailed character. Where your version lands depends entirely on what you're starting with and what you're aiming to build.