Pular para o conteúdo
← Back to Skalablog

Published article

How to Make a 3D Web Game and Publish It

Software Engineering

You can make a 3D web game with Three.js and React Three Fiber, publish it on a platform like Poki, and earn ad revenue from it. That is exactly what one developer did with Court Kings 3D, a basketball game that started as a 2023 portfolio project and later passed 1.1 million gameplays.

How a 3D web game with Three.js went from portfolio to revenue

A solo developer built Court Kings 3D, a browser-based basketball game made with Three.js and React Three Fiber, and earned money from in-game ads after Poki, a large web game platform, invited him to publish it. The project began in 2023 as a 3D portfolio site and grew into a released game with roughly 1.1 million gameplay sessions by the time the developer recorded his video in March 2025.

The story matters to anyone searching how to make a 3D web game because it shows the full path: learning a rendering library, choosing a scope, building in public, handling a publisher's requirements, and measuring retention and revenue. The money was modest, but the skills, network, and shipped product were real.

Why start a web game with Three.js and React Three Fiber

Three.js is the standard JavaScript library for rendering 3D graphics in the browser using WebGL. React Three Fiber wraps Three.js in React components, so developers who already work in React can compose scenes declaratively instead of managing the render loop by hand.

The developer chose Three.js after seeing 3D websites he found impressive. He then decided to learn it by building a fully custom, interactive 3D portfolio, inspired in part by Bruno Simon's well-known 3D portfolio. Because he enjoyed basketball, a basketball game felt like a personal fit that would also stretch his skills.

How to scope a first 3D game realistically

A basketball game sounds simple and is not. The developer listed the real costs: physics for the ball, shot calculations, animations, and collision detection. Instead of abandoning the idea, he treated the difficulty as the point. If the game shipped, he would come out a much stronger developer.

That framing changed how he approached later projects too. The lesson for your own first game: pick something slightly beyond your current ability, accept a longer timeline, and expect to rebuild parts of the interface and gameplay once real requirements appear.

Building in public: how Twitter posts attracted a publisher

Without planning it, the developer adopted what is now commonly called building in public. He posted progress, challenges, and wins on Twitter, where much of the 3D web community was active at the time. Posts began reaching around 100 likes even though he had fewer than 10 followers.

That visibility produced the turning point: a representative from Poki contacted him on Discord and asked whether he wanted to publish the game on the platform. He initially suspected a scam, researched it, and confirmed the invitation was legitimate.

  • Post progress where the relevant community already gathers. In 2023, for 3D web work, that was Twitter.
  • Share failures as well as wins; the audience follows the process, not just launches.
  • Verify unexpected inbound messages carefully, but do not ignore them. The Poki offer arrived because the work was visible.

What Poki requires from a game before launch

A portfolio demo is not a shippable game, and the developer had to rebuild much of the project before launch. Over roughly six months of intensive work he added more game modes, built an AI opponent, reconstructed the entire interface, added multiplayer, and created a small shop for cosmetic shirts and other items.

This is the normal gap between a demo and a released product. If you aim for a web game platform, budget time for onboarding, menus, game modes, persistence, and polish on top of the core mechanic you already prototyped.

Court Kings 3D results: retention, geography, and revenue

The launch performed well but not spectacularly. Average retention was about 3 minutes per player, below the 4 minutes the developer says Poki considers ideal. Performance was uneven geographically: the game did well in the United States, where basketball is popular and players understand the rules, and below average elsewhere.

By the time of the March 2025 video, the game had accumulated about 1,100,000 gameplays and earned $10 in total, all from ads shown inside the game. At the time of recording it generated roughly R$1 to R$6 per day, or about R$30 to R$90 per month.

MetricResult
Total gameplays (March 2025)~1,100,000
Total ad revenue$10
Monthly revenueR$30 to R$90
Average retention~3 minutes (target: 4)
Strongest marketUnited States

As engagement dropped after the initial launch, daily player counts no longer justified keeping the multiplayer server running, and he shut it down. That is a practical cost lesson for any indie multiplayer web game: server costs continue even when attention does not.

What skills came out of building a Three.js game

The developer's verdict on the project was clear: the learning outweighed the money. He listed concrete gains from the experience.

  • Mastery of 3D web libraries, including Three.js and React Three Fiber
  • Implementing physics with code rather than a physics engine out of the box
  • 3D modeling and animation in Blender
  • Deeper React knowledge, especially performance work

He also credits the process with building a serious professional network in the 3D web community, which showed him that earning a living from web games is possible even though his own game did not reach that level.

Key lessons from shipping a 3D web game

The developer summarized three takeaways that apply beyond this one game.

  1. Do not avoid a project because it looks hard. Difficulty is what differentiates your work.
  2. Share what you are building and network seriously. The Poki offer came directly from public posts.
  3. Start before you feel ready. The project began as a portfolio piece and ended up on the largest web game platform.

For him, the project also settled a personal question: he had wanted to make games since childhood, and this proved he could ship one. He now works on SaaS products and has started prototypes for future games, though nothing officially released since Court Kings 3D.

Where the game stands now

Court Kings 3D remains playable on Poki, with a link in the original video description. Controls are simple: press space to shoot, touch the opponent to steal the ball, and press space at the right moment to block a shot. The developer temporarily reactivated the multiplayer server for viewers of the video, so its availability depends on server costs and interest.

He has expressed interest in combining games and SaaS in future projects, and encourages viewers to try the game and suggest a community tournament.

FAQ

  • Which libraries were used to build Court Kings 3D?

The game was built with Three.js for WebGL rendering and React Three Fiber to integrate it with React. Modeling and animation were done in Blender.

  • How much money did the 3D web game make?

By March 2025 it had earned about $10 total from in-game ads, roughly R$30 to R$90 per month at the time, across approximately 1.1 million gameplays.

  • How was the game discovered by Poki?

The developer posted progress publicly on Twitter in 2023. A Poki representative saw the posts, contacted him on Discord, and invited him to publish on the platform.

  • Is multiplayer still available?

The developer disabled multiplayer when daily player counts no longer justified server costs, then temporarily reactivated it around the March 2025 video. Availability may change.

  • What does the game look like today?

The game remains on Poki as a casual basketball game. It did not become the developer's primary income; he now focuses on SaaS work while keeping game prototypes on the side.

If you have a story like this one sitting in a video, a conference talk, or a devlog series, it can become a written article without starting from a blank page. Skala Blog turns a YouTube URL into a structured, publishable article: paste the link, get the transcription, and edit the result into something worth reading.

Source video