Tower Defense 3D

A real 3D tower defense — four towers, one winding road, endless waves

Score0
Best

About the game

Tower Defense 3D is the PlayHub wave-defence game rebuilt in WebGL with Three.js. The board is a stone plateau floating on dark water: a dirt road switchbacks across it five times, the buildable ground is a grid of raised grass blocks, and pines and boulders crowd the rim. A directional sun drags real shadows off every tower, and the camera sits in a tilted quarter view that shows the whole board at once — steeper on a phone, shallower on a desktop, so nothing ever falls off the screen.

What the third dimension buys is silhouette. The four towers are no longer four coloured squares you have to read by colour: the arrow tower is a splayed wooden watchtower with a crossbow on top, the frost tower a tapering crystal obelisk ringed by floating shards, the cannon a squat stone bastion with battlements, and the sniper a thin spire twice as tall as anything else on the board. Every one of them swings its barrel onto its target before it fires, arrows and cannonballs arc through the air, and the sniper answers with an instant tracer line. Underneath all of it the simulation is the 2D Tower Defense on this site, number for number — same map, same stat blocks, same deterministic wave table — so a plan you learned there still works here.

How to play

Rules

Strategy & tips

Two arrow towers on the first bend, before anything else

Two arrow towers cost 100 of your 200 opening gold and cover the whole first switchback between them. That is enough to clear waves 1 to 4 without losing a life, which is what pays for everything after it. A single sniper on wave 1 looks impressive and then leaks a grunt through the bend it cannot cover.

Build on the inside of a bend, never beside a straight

The road doubles back on itself five times. A tower planted in the pocket of a switchback has road on two or three sides of its circle, so an enemy spends two or three times as long inside it as it would passing a straight. The range disc that appears when you select a tower is the tool for this — look at how much road it covers, not how big it is.

Frost is a damage multiplier, not a damage tower

A frost obelisk does four damage. What it actually does is keep everything in the pocket 45% longer, which raises the damage of every arrow and cannon overlapping it by the same amount. One frost among three or four damage towers is worth far more than a fourth arrow; two frosts in the same pocket are almost worthless, because the slow refreshes instead of stacking.

Cannon for swarms, sniper for armour — the wave tells you which

Swarm bursts arrive at wave 7 and are twenty-odd 30%-health bodies packed nose to tail; a cannon deletes half the burst per shell while an arrow tower kills them one at a time. Tanks and bosses carry armour that eats most of an arrow hit, and the sniper is the only tower that ignores it. Look at what the next wave is made of, not at what is cheapest.

Start the wave early — the bonus is a whole tower

Skipping the full 11-second build gap pays 22 gold, and doing it every wave for ten waves is worth more than two arrow towers. Once your line is holding comfortably, hit Space the moment you have spent your gold. Turn on 2× at the same time and a run to wave 20 takes a fraction of the wall-clock time.

Upgrade before you spread out

Damage goes up 70% per upgrade while range only goes up 12%, so a level 3 arrow tower in a good pocket beats three level 1 towers in mediocre ones, and it does it for less gold. Spread only when the wave is outrunning your coverage — for example when swarms start slipping past a single pocket — and concentrate the rest of the time.

FAQ

Is this really 3D, or a 2D game with a 3D look?

It is real 3D. The scene runs on WebGL through Three.js with a perspective camera, a directional sun writing into a shadow map, hemisphere fill light, distance fog and a painted sky dome. Nothing is pre-rendered and nothing is downloaded — every tower, enemy, arrow and rock is built from box, cylinder, cone, sphere and octahedron primitives in code when the page loads.

Is it the same game as the 2D Tower Defense on this site?

The rules and the numbers are identical: the same 8x10 board, the same road, the same four tower stat blocks, the same upgrade multipliers, the same 70% refund, the same deterministic wave table and the same armour maths. Only the presentation changed. The two games keep separate best scores and separate leaderboards, so a run here does not overwrite your 2D record.

Which tower should I build first?

Two arrow towers covering the first switchback. They are the cheapest damage per gold in the game and the opening waves are pure grunts with no armour, so anything more exotic is wasted. Add a frost obelisk into the same pocket around wave 4, a cannon before wave 7 when the swarm bursts start, and a sniper before wave 10 for the first boss.

Why is my tower not shooting an enemy that looks like it is in range?

A tower always targets the enemy furthest along the road inside its circle, and it has to swing its barrel round before the shot goes off. If two enemies are in range it will keep hitting the one closer to the gate, which is usually what you want. If it is shooting nothing at all, the circle probably touches the tile the enemy is standing next to rather than the road itself — select the tower and look at where the disc actually crosses the road.

Do I need to download or install anything?

No. The game is a single ES module that loads a local copy of Three.js from this site. There is no plugin, no app store and no account — it runs straight in the browser tab, and it works offline once the page has been cached.

My browser says it cannot run the game, or my phone looks softer than my desktop.

The game needs WebGL; if you see a message instead of the 3D board, update to a recent Chrome, Edge, Firefox or Safari or turn on hardware acceleration. On small screens it drops antialiasing, halves the shadow map and thins out the scenery — every rule and every number stays exactly the same, only the drawing budget changes. The 2D Tower Defense on this site plays fine without WebGL.