• Games
  • Industry
  • Resources
  • Community
  • Learning
  • Support
  • Pricing
Develop
Unity Engine
Build 2D and 3D games for any platform
Collaboration
Collaborate and iterate quickly with your team
Download Unity
Plans and pricing
Deploy
Multiplatform
Discover 25+ platforms Unity supports
LiveOps
Post-launch insights and live game ops
Grow
User acquisition
Get discovered and acquire mobile users
In-App Purchase
Discover and manage IAP across stores
Monetization
Connect players with the right games
Advertise with Unity
Monetize with Unity
Use cases
Mobile Games
Build & grow mobile hits with Unity
Indie Games
Ship big games with small teams
XR Games
Launch XR games across platforms
Multiplayer Games
Simplify multiplayer game development
Use cases
3D collaboration
Build and review 3D projects in real time
Immersive training
Train in immersive environments
Customer experiences
Create interactive 3D experiences
Industries
Manufacturing
Achieve operational excellence
Retail
Transform in-store experiences into online ones
Automotive
Boost innovation and in-car experiences
See all industries
Technical library
Documentation
Official user manuals and API references
Developer tools
Release versions and issue tracker
Roadmap
Review upcoming features
Glossary
Library of technical terms
Insights
Case studies
Real-world success stories
Best practice guides
Expert tips and tricks
Demos
Demos, samples, and building blocks
All resources
What's new
Blog
Updates, information, and technical tips
News
News, stories, and press center
Community Hub
Discussions
Discuss, problem-solve, and connect
Events
Global and local events
Community stories
Made with Unity
Showcasing Unity creators
Livestreams
Join devs, creators, and insiders
Unity Awards
Celebrating Unity creators worldwide
For every level
Unity Learn
Master Unity skills for free
Professional training
Level up your team with Unity trainers
New to Unity
Getting started
Kickstart your learning
Unity Essential Pathways
New to Unity? Start your journey
How-to Guides
Actionable tips and best practices
Education
For students
Kickstart your career
For educators
Supercharge your teaching
Education Grant License
Bring Unity’s power to your institution
Certifications
Prove your Unity mastery
Support options
Get help
Helping you succeed with Unity
Success plans
Reach your goals faster with expert support
FAQ
Answers to common questions
Contact us
Connect with our team
Download Unity
Get started
Language
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
Social
Currency
Purchase
  • Products
  • Unity Ads
  • Unity Asset Store
  • Resellers
Education
  • Students
  • Educators
  • Institutions
  • Certification
  • Learn
  • Skills Development Program
Download
  • Unity Hub
  • Download Archive
  • Beta Program
Unity Labs
  • Labs
  • Publications
Resources
  • Learn platform
  • Community
  • Documentation
  • Unity QA
  • FAQ
  • Services Status
  • Case Studies
  • Made with Unity
Unity
  • Our Company
  • Newsletter
  • Blog
  • Events
  • Careers
  • Help
  • Press
  • Partners
  • Investors
  • Affiliates
  • Security
  • Social Impact
  • Inclusion & Diversity
  • Contact us
Copyright © 2025 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell or Share My Personal Information

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.

Unity Blog

Tailoring digital play by age: How StoryToys built the LEGO® Bluey app

Adam Axler
ADAM AXLER / UNITYSenior Content Marketing Manager
Oct 1, 2025
StoryToys

StoryToys was founded in 2008 with the mission of bringing educational apps to kids of all ages. Over the past 17 years, they’ve released apps including Hungry Caterpillar Play School, LEGO® DUPLO® World, Disney Coloring World and LEGO® DUPLO® Peppa.

Their latest title, LEGO® Bluey, launched on August 14, 2025. Developed in collaboration with the LEGO Group and BBC Studios, it targets kids age two to four, and blends fun with early learning.

We spoke with Devon Wolfgang, the principal engineer at StoryToys, and Ryan Dykes, the app’s lead developer about the struggles and milestones of designing an app for kids of different ages and levels of motor skills, emotional intelligence, problem-solving, and humor.

This content is hosted by a third party provider that does not allow video views without acceptance of Targeting Cookies. Please set your cookie preferences for Targeting Cookies to yes if you wish to view videos from these providers.

What was the biggest technical challenge when building the app?

Ryan Dykes: Designing for both two- and four-year-olds was a unique challenge. Kids that young engage very differently with apps – two-year-olds often explore through tapping without fully understanding mechanics, while four-year-olds aim to master them.

For example, in the surfing activity, younger players might tap to see Bluey move and react, while older ones will try to collect all the shells and avoid obstacles.

Devon Wolfgang: We designed the app to support that developmental range. In the 2+ LEGO DUPLO experience, brick building is limited to 2D. In the 4+ LEGO play packs, we introduce full 3D building – kids can rotate and position bricks freely, adding more difficulty while keeping it fun for everyone.

StoryToys

Ryan: The progression is key. The 2+ LEGO DUPLO mode uses a 2.5D plane, while the 4+ LEGO play pack moves into an isometric 3D space. We wanted skills to build naturally. What kids learn in the simpler mode carries into the advanced one, with no contradictions.

This was our first time implementing full 3D brick building using Unity’s physics-based penetration testing. Previously, we used a 2D matrix with polygon colliders. Now, bricks can be rotated, stacked, or can even hang off edges. This is especially important for older kids.

One major challenge was shifting from fixed brick placement to a flexible system. This introduced complex interactions like minifigs holding bricks while standing on other minifigs, or dynamic stacks being thrown around. It gave players freedom, but required tight control of pegs, holes, and snapping mechanics to avoid chaos.

StoryToys
In-Editor screenshot showing how the peg and hole system works for building with LEGO DUPLO Bricks

How did you handle communication for input across age groups?

Ryan: We avoid direct instruction like glowing prompts or full guidance. Instead, we rely on subtle visual cues like wobbles or animations to invite interaction. The goal is for kids to discover things on their own.

For example, when stacking bricks on a car, tapping a brick makes a minifig pick it up, and tapping the car places it. Over time, kids realize they can drag the brick directly. This builds understanding through experimentation – and that’s where visual communication becomes essential.

Devon: We also made a firm rule: no text. Our users can’t read yet, so every interaction has to be communicated visually or through animation. Cues don’t highlight the correct answer – they just show what’s interactive.

Ryan: And to make the experience consistent, we created a custom touch input wrapper around Unity’s drag, tap, and click events. This standardized input handling across the team and made prototyping faster and more reliable. If we teach tapping in one activity, it needs to work the same way everywhere else.

StoryToys

What challenges came with combining system bricks and LEGO DUPLO bricks in the same app?

Devon: The design challenges were more difficult than the technical ones. For example, we had to redesign the loading screen because using a LEGO DUPLO character didn’t fit with the system bricks. Keeping the visual language distinct while using shared systems required a lot of iteration.

Ryan: We unified LEGO DUPLO and minifig systems under the same core codebase – only the visuals differ. This allowed us to reuse systems without building separate apps, which was key for sustainability.

How did Unity help you hit your eight-week window?

Ryan: Prefabs were crucial. For LEGO DUPLO bricks, each developer worked in separate scenes that loaded at runtime. For the 4+ LEGO play packs, prefabs let multiple team members collaborate on different parts, like cars or animations, without scene conflicts.

StoryToys
In-Editor screenshot showing how the team uses one master scene to pull in all the separate play pack scenes

How were Addressables instrumental during development?

Devon: We relied heavily on Addressables. Each play pack is a group of Addressable bundles, with most loaded remotely.

Ryan: We used to bundle all assets per play pack, which meant large, redundant downloads. With Addressables, shared assets like the Bluey model are stored once and reused, reducing download size from 200 MB to 60 MB. Updates are faster too, as only changed files are redownloaded.

Devon: Builds used to take eight hours. Now, with Addressables, it’s down to 20 minutes for the smaller app and around an hour for the larger one.

StoryToys

How was Unity Navigation used in this project?

Ryan: The old 2D navigation system worked fine, but the new one allows for more complexity. Now, minifigs can move off flat planes – like walking up a narrow bridge – which adds depth and flexibility.

What performance-related issues did you run into?

Ryan: One of our main challenges was draw calls. A shader change broke batching, pushing us over 500 draw calls. Using Unity’s Profiler and Frame Debugger, we quickly traced the issue and fixed the shader to properly batch materials. We also optimized our backgrounds by marking them static.

We also noticed background elements like bushes weren’t atlased, causing unnecessary draw calls. Using Unity's sprite atlas system, we grouped them without needing Photoshop, and brought draw calls down to about 200.

StoryToys
In-Editor screenshot showing how the visual bounds of the obstacle course are created with sprites and a fullscreen shader

What advice would you give a developer looking to build apps for kids of diverse ages and developmental stages?

Devon: Playtest early and often. Get kids in the target age range interacting with your work as soon as possible. Don’t rely on assumptions, and enjoy their reactions – they’re both valuable and fun.

Ryan: Set deliverables early. We use a P1/P2/P3 system: P1 is essential (core loop), P2 adds polish (e.g., celebrations, secondary animations), and P3 is nice-to-have (e.g., like a fish jumping). This keeps focus when cuts need to happen.

Clear project structure is just as important. For LEGO DUPLO, we know it’s four scenes and a master scene. For the 4+ LEGO play packs, it’s isometric in a boxed area. These constraints help focus creativity and avoid scope creep.

Lastly, reusability is key. With our shared systems like touch input and unified code for DUPLO and system bricks, we reuse assets and behaviors across all play packs. This saves time and makes the user experience more consistent.

To read more about projects made with Unity, visit the Resources page.