United States · Ages 10 to 17 · 3D game making

How to make a 3D video game for kids

Kids who have spent hours inside 3D worlds sooner or later want to build one of their own. It is possible, with free tools, on an ordinary home computer, but 3D asks for a few things that flat games do not: a computer that can run a 3D editor, a feel for three axes instead of two, and code that moves objects through space. This guide takes those one at a time. It compares three widely used tools, using each one’s own documentation, explains x, y and z in plain terms, lays out eight steps to a first playable 3D game, and finishes with a real script that makes a character run and jump.

Live teaching since 2020 · 10,000+ students · 3D games in Roblox Studio and Unity

In short

To make a 3D video game, a kid picks a free 3D tool that runs on their computer (Roblox Studio or Godot are good first choices; Unity suits older teens), learns how x, y and z place objects in space, builds a floor and a player, then writes code that moves the player and applies gravity. Modern Age Coders teaches 3D game building live online, ages 10 to 17.

Build it with a teacher

Three courses for kids who want to make 3D games

Two of them build in 3D from early on; the third lays the game-design groundwork first.

Choose a tool

Which 3D game tool fits which kid and which computer

The first question is not which tool is most powerful. It is which one will actually run on the computer at home. Each tool publishes its requirements, and they differ more than most parents expect.

Three 3D tools, from each one’s own documentation (read 17 October 2026); the last row is our advice
PointRoblox StudioGodotUnity
Cost to installRoblox calls Studio a free applicationFree and open source, MIT licenseNot covered here; check Unity’s own plans
WindowsYesWindows 10 or laterWindows 10 version 21H1 or newer
MacYesmacOS 10.13 or 10.15, by renderermacOS Ventura 13 or newer
Chromebook, tablet, phoneStudio cannot run on Chromebooks or phonesA web editor (8 GB RAM) and an Android editor; iOS cannot run the editorWorkstations or laptops, without emulation
LanguageLuauGDScript, which Godot recommends for beginners, or C#C#, the language our teen course teaches
Age guidanceRoblox typically recommends Studio for ages 10 and upNone publishedNone published
Who it suits (ours)Ages 10 to 14 who already play RobloxAges 12 and up who like tinkeringAges 14 and up ready for a professional engine

If the family computer is a Chromebook

Roblox’s education FAQ rules out Chromebooks and smartphones for building in Studio, and Unity lists its editor for workstations and laptops running without emulation, container or compatibility layer.

Of the three requirement pages we read, only Godot’s lists a web editor, with 8 GB of memory for it against 4 GB for the native editor. Check the Chromebook’s memory before planning around it; a Windows or Mac laptop is the simpler route.

Where Godot fits on this page

The courses linked on this page build in 3D with Roblox Studio for younger students and Unity for teens. Godot is included because it is free, open source and well documented, and it makes a strong first engine for a tinkering teen.

The ideas carry across all three. A child who understands axes, velocity and gravity in Roblox Studio can read the Godot script further down this page.

Read on 17 October 2026: Roblox Studio setup, the Roblox education FAQ, Godot system requirements, the Godot license and Unity 6.6 system requirements. We are not connected with Roblox, the Godot project or Unity.

Thinking in 3D

X, Y and Z: the idea that makes 3D games different

A flat game places things with two numbers, across and down. A 3D game needs a third. Godot’s documentation explains its convention in three short lines, which make a good starting point for any 3D tool.

Godot’s 3D coordinate system, from its documentation (read 17 October 2026)
AxisMeaning in GodotColor on screen
XSides: left and rightRed
YUp and downGreen
ZFront and backBlue
Scale1 unit is 1 meter, and physics is tuned for thatGrid squares are 1x1 meter by default

The ground is not where kids expect

In a flat game, y usually runs down the screen. In Godot’s 3D, Y is up, and the ground is the plane made by X and Z. The documentation says it directly: in 3D, the XZ plane is the ground plane.

That is why the movement code below changes x and z when a player walks, and changes y only to jump or fall. A value placed on the wrong axis is a classic first 3D bug.

Why diagonal movement needs a fix

If a player holds forward and right together, the direction has 1 on two axes at once. Godot’s tutorial points out that this vector has a length of about 1.4, so the player would move faster diagonally than straight.

The fix is one method, normalized(), which keeps the direction but sets the length back to 1. Children who meet this learn, without being told, a piece of geometry they will see again in math class: the diagonal of a unit square.

Sources: Godot’s Introduction to 3D and Moving the player with code, read 17 October 2026.

Step by step

Eight steps from an empty scene to a playable 3D game

This is the order we use with students in any 3D tool. It keeps the first game small enough to finish, which matters more in 3D than anywhere else.

  1. Pick the tool for your computer. Use the table above. Install it and open an empty 3D project or template.
  2. Learn to move the camera. Spend the first session flying around the empty world. Being lost in 3D space is a classic early frustration.
  3. Place a floor. Add a large flat box and fix it in place, so gravity leaves it where you put it.
  4. Add a player. In Godot, that is a CharacterBody3D, which its documentation describes as a physics body meant to be user-controlled. In Roblox Studio, the avatar is added for you when you press Test.
  5. Make it move. Write code that reads the keys and changes the player’s position on the ground plane.
  6. Add gravity and a jump. Pull the player down every frame when it is in the air, and push it up once when the jump key is pressed on the floor.
  7. Give it a goal. One thing to collect or reach turns a world into a game. Keep it to one goal in a first game.
  8. Test, then share. Play it from start to end after every change, then let one real person try it and watch without helping.

Why one goal is enough

A 3D world invites big plans: a city, a castle, a whole planet. Children who start there spend weeks building scenery and never write the code that makes it a game.

One floor, one player, one goal, playable in a week, teaches every core idea. Scenery can come afterward, and it is far more fun when the game underneath works.

How long it takes

Our plan for ages 10 to 12 reaches step 6 in about six sessions in Roblox Studio, where the avatar and its movement already exist. In Godot or Unity, writing movement yourself adds a few sessions to that plan.

That is not wasted time. Writing the movement code by hand is exactly where the three axes stop being abstract.

Real code

A real 3D script: a character that runs and jumps in Godot

This is the core of a 3D platformer, in GDScript. It follows the structure of Godot’s own Squash the Creeps tutorial, uses the same starting numbers, and uses only methods its documentation describes.

Script · run and jump on three axesgdscript
# player.gd on a CharacterBody3D (ours, Godot 4)
extends CharacterBody3D

@export var speed = 14  # meters per second
@export var fall_acceleration = 75
@export var jump_impulse = 20

var target_velocity = Vector3.ZERO

func _physics_process(delta):
    var direction = Vector3.ZERO
    if Input.is_action_pressed("move_right"):
        direction.x += 1
    if Input.is_action_pressed("move_left"):
        direction.x -= 1
    if Input.is_action_pressed("move_back"):
        direction.z += 1
    if Input.is_action_pressed("move_forward"):
        direction.z -= 1
    if direction != Vector3.ZERO:
        direction = direction.normalized()

    # x and z: the ground plane
    target_velocity.x = direction.x * speed
    target_velocity.z = direction.z * speed

    # y: up and down
    var jump = Input.is_action_just_pressed("jump")
    if is_on_floor() and jump:
        target_velocity.y = jump_impulse
    if not is_on_floor():
        target_velocity.y -= fall_acceleration * delta

    velocity = target_velocity
    move_and_slide()

Attach it to a CharacterBody3D that has a collision shape. Before it runs, create five input actions in Project Settings, Input Map: move_left, move_right, move_forward, move_back and jump. The script only reads action names, so the keys are yours to choose.

The jump, worked out (our calculation)

The jump starts at 20 meters per second upward, and gravity takes away 75 meters per second every second. So the character reaches the top after 20 / 75 = 0.27 seconds.

The height is 20 x 20 / (2 x 75) = 400 / 150 = 2.67 meters. With Godot’s default grid of 1-meter squares, that is a jump onto a box between two and three squares tall.

Reading the script

Every frame, _physics_process works out a direction from the keys, sets the speed on x and z, then handles y: a jump if the jump key was just pressed on the floor, gravity if the character is in the air. move_and_slide then moves it and handles collisions with walls and slopes.

At a speed of 14, one second of running covers 14 meters, fourteen grid squares. Changing that one number is a good first experiment.

Try 1 (ours)

Set jump_impulse to 30. How high is the jump now? (900 / 150 = 6 meters.)

Try 2 (ours)

Halve fall_acceleration to 37.5. What happens to the height? (It doubles, to about 5.33 meters.)

Try 3 (ours)

Remove normalized() and walk diagonally. Is the character faster? (Yes, about 1.4 times.)

Start in 3D or not

Should kids start with 2D or 3D games?

Godot’s own 3D tutorial answers this honestly: if you are new to game development, it recommends starting with 2D, because 3D game code is always more complex.

When starting in 3D works

A child who already knows a 3D tool as a player, most often Roblox, can start building in 3D straight away, because the editor does a lot of the hard work: the camera, the avatar and its movement already exist.

Roblox’s education team says younger students typically focus on the creation and design of environments, and that suits a first 3D project well: build the world first, then script it.

When 2D first is wiser

If a child wants to write the movement code themselves, as in the Godot script above, a few weeks of 2D games first makes 3D far less confusing. Velocity and gravity are easier to see on two axes.

Our game course for younger kids begins in Scratch and moves into Roblox’s 3D worlds once the ideas are solid.

A suggested route by age (ours)
AgeStart withThen
8 to 10Scratch or another 2D toolRoblox Studio building, then simple scripts
10 to 13Roblox StudioLuau scripts for movement, scores and goals
13 to 15Roblox Studio or GodotWriting a 3D character controller by hand
15 to 17Unity with C#A complete 3D game with menus, levels and a build

For Roblox specifically, how to make a Roblox game walks through Studio, scripts and publishing. For 2D starts, see Scratch coding classes, and for the language behind many engines, C++ game development.

From player to 3D builder

Four stages of a young 3D game maker

Where a child might be when they ask how 3D games are made, and what comes next.

Stages of learning to make 3D games (ours)
StageWhat it looks like
1. ExplorerFlies the camera around an editor and places objects
2. World builderBuilds levels from parts, with lighting and color
3. ScripterWrites movement, gravity and goals in code
4. Game makerTunes the numbers so the game feels fair and fun

For parents

Stage 2 can last a long time, and that is fine. Building worlds teaches spatial thinking that pays off in math and science.

Stage 3 is the hard climb. Vectors and axes click faster when someone sketches them beside the running game.

For kids

Name your axes out loud when you code: x is sideways, y is up, z is forward and back. It saves a lot of bugs.

Make it small and finish it. One level you can play beats a huge world you cannot.

The catalogue

Nine courses on the road to 3D games

Each is taught live, in a group batch or one to one, by a teacher who stays with the student.

I

Kids

Ages 6 to 12
II

Teens

Ages 13 to 18

3DG / TEN / 01

Game development for teens

Unity, C# and 3D scenes.

Open the syllabus
III

Going further

Teens and adults

3DG / PRO / 01

Game development

Professional engines, start to finish.

Open the syllabus

3DG / PRO / 02

JavaScript for teens

Games that run in the browser.

Open the syllabus

3DG / PRO / 03

Hackathon preparation

A game built with a team in a weekend.

Open the syllabus

How lessons run

Live 3D game lessons, when it suits you

Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.

Weekdays

Batches after school in every US time zone.

Weekends

Morning batches with time to build.

1-on-1

Times arranged around your child.

Screen shared

The teacher sees the 3D view live.

Axes drawn out

X, y and z explained on the student’s own game.

A plan per student

Roblox Studio or Unity, by age and goal.

Same teacher

One person who knows the project.

From home

Online, in any state.

Group or private

A batch of fifteen to twenty, or one to one.

Student work

Projects from our students

Some of the projects our students have finished. More on the student labs page.

NutriLife AI nutrition coach project screenshot

AI and ML

NutriLife

An AI nutrition coach that reads what you eat and works you toward a target.

by Bhavya · Open it

Misti AI chatbot for maths and coding screenshot

AI and ML

Misti

A chatbot that answers mathematics and programming questions, built and deployed by a student.

by Harshit · Open it

GuardianX AI internet safety assistant screenshot

AI and ML

GuardianX

An assistant that helps a young person recognise unsafe situations online.

by Vivaan · Open it

SkyCast weather forecast application screenshot

Web app

SkyCast

A weather forecasting site with live conditions for any location.

by Krish

Fees

Fees

Roblox Studio and Godot are free to install, and the first lesson is free as well. Classes are paid month by month in US dollars, with no term contract, and you can stop after any month.

Free first class

USD 0

no card required

  • A free first lesson
  • Help choosing a tool
  • No card
Book it

Group batch

USD 100

a month, billed in US dollars

  • Batches of fifteen to twenty
  • One regular teacher
  • Choose your batch
  • Paid monthly
Start here

One to one

USD 150

a month, billed in US dollars

  • One to one
  • At times you set
  • Your own 3D game
Enquire

What families say

Rated 4.9 across 547 Google reviews

Parents’ Google reviews, left exactly as posted.

★★★★★

"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."

Ria Mukherjee

Parent

★★★★★

"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."

Samriddha Mondal

Student

★★★★★

"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."

Vansh Agarwal

Student

★★★★★

"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."

Sonam Oswal

Parent of Dhairya

★★★★★

"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."

Sonu Goyal

Parent

★★★★★

"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."

Ritu Kedia

Parent

Questions from families

Making 3D games: common questions

How can a kid make a 3D video game?

Choose a free 3D tool that runs on your computer, such as Roblox Studio or Godot, place a floor and a player, then write code that moves the player on the ground and adds gravity and a jump. Start with one goal, finish it, then grow it.

What is the easiest way for kids to make a 3D game?

For a child who already plays Roblox, Roblox Studio, because the camera, avatar and movement are built in. Roblox typically recommends Studio for ages 10 and up.

Can you make a 3D game on a Chromebook?

Not in Roblox Studio, which the Roblox education FAQ rules out on Chromebooks, and Unity lists its editor for computers running without emulation. Godot publishes a web editor that it says needs 8 GB of memory, so check the Chromebook first.

Is Godot free for kids to use?

Yes. Godot is free and open source under the MIT license, and its license terms do not apply to the games you make with it.

What coding language do 3D games use?

It depends on the tool: Luau in Roblox Studio, GDScript or C# in Godot, and C# in Unity. Godot recommends GDScript for beginners and says it looks like Python.

Should my child learn 2D before 3D?

Often, yes. Godot's own 3D tutorial recommends starting with 2D if you are new to game development, because 3D code is more complex. Children building in Roblox Studio can start in 3D sooner.

What math is in 3D games?

Coordinates on three axes, vectors, speed and gravity. Working out how high a character jumps is a real physics calculation, and normalizing a diagonal direction is geometry.

What computer does a 3D game tool need?

Godot lists 4 GB of memory for its native editor on Windows 10 or later. Unity 6.6 lists Windows 10 version 21H1 or newer, or macOS Ventura 13 or newer. Roblox Studio runs on Windows and Mac.

Can lessons fit around a US school day?

Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.

What do 3D game development classes cost?

Nothing for the trial lesson. Regular classes are charged per month, and you will find that monthly price in US dollars in the fees block above.

Elsewhere on this site

Related pages

Further reading for kids who want to build worlds.

How to make a Roblox game

Studio, Luau and publishing.

Roblox coding classes

Live lessons in Roblox Studio.

C++ game development

The language under many engines.

Scratch coding classes

A 2D start for younger kids.

Coding classes in the USA

Where every US guide of ours starts.

How we teach

Inside a live lesson.

Godot for kids and teens

Godot for kids and teens: cost, devices, two GDScript scripts and the errors beginners hit.

Unity for teens

Unity for teens: age rules, free plans, computer needs and two first C# scripts.

Game design classes for teens

Game design for teens: a method, real tuning code, and the US competitions that judge teen games.

Start here

Book a free first lesson

Tell us your child’s age, the computer they use, and the kind of 3D game they dream about. The teacher picks the right tool before the lesson starts.

To see the method first, read how we teach, or open a syllabus from the course list.

WhatsApp us · +91 91233 66161 · connect@modernagecoders.com

All teaching is live on video from our team in India, so there is no center to visit, wherever you live in the US. WhatsApp reaches us fastest.

No card is needed for the first lesson.

Want a class sooner? Book a priority demo

A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.

Book a priority demo

Keep exploring Modern Age Coders

Related courses and guides

Learn more

Free resources

From the blog

Start here

Free classPriority demoCall us