Free tools Windows power users keep installed
One-click scans. No signup required.
Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
You can build a playable first-person 3D dungeon in Codename One Game Builder without hand-coding every wall or importing a complete art pack. Create a 3D scene, switch its play style to dungeon, paint walls on a grid, mark a spawn as the player, and test immediately in the Live view. The editor stores the level as data; at runtime, each authored element becomes a GPU-rendered 3D model viewed through a perspective camera with lighting. You can start with the primitive blocks supplied by the 3D Kit, then add authored .glb or glTF meshes, enemies and projectile combat in Java. This tutorial builds a small level called Crypt Walk, where Duke navigates stone corridors, fights tea-cup enemies and fires coffee beans.
What does the first playable dungeon contain?
The finished prototype is a compact, grid-authored dungeon rather than an open-world scene. Duke starts inside a walled layout, turns and walks in first person, encounters Tea Cup actors placed in corridors, and fires coffee beans as projectiles. The editor handles the map structure, while Java handles input-driven combat and game rules.
As an Amazon Associate I earn from qualifying purchases.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
The important architectural change from a 2D Game Builder project is the runtime representation:
“The headline difference from the 2D tutorial is what happens at runtime — instead of sprites in a
Scene, each element becomes a GPU-renderedModelunder a perspective camera with lighting.” — Shai AlmogPopular on Amazon
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter | 4Pack Type C Female to A Male Cable Converter for Apple Duo 17 16 15 14 Plus,iWatch Watch 12 11 10,iPad 9 8 Air,Airpods 5 4
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
A level resource contains the camera, lights, placed elements, terrain heights and materials, and wall information. GameSceneView reads that data and creates the 3D models and perspective view. That separation lets you rearrange a room in the editor without rewriting scene construction code.
How do I create the 3D project and open Game Builder?
Use Maven to generate a 3D scene class, then launch the Game Builder editor from the project directory.
- Run the scene generator:
mvn cn1:create-game-scene -DclassName=com.example.crypt.CryptWalk -Dmode=3d
- Start the editor:
mvn cn1:gamebuilder
The generated class name in this example is com.example.crypt.CryptWalk. If you choose another package or class name, use that exact name in the first command so the generated source and your later game code stay aligned.
How do I create a 3D map and choose dungeon movement?
In the editor, choose New scene → 3D Map, then select dungeon for the 3D play style in the Inspector. Dungeon mode supplies the first-person turning, walking and wall collision expected for a corridor game.
Game Builder also exposes open, flight and race presets. They use the same authored level data with different movement models, so you can prototype geometry once and evaluate it under another style later.
| Play-style preset | Movement model supplied by the editor | Typical use |
|---|---|---|
| Dungeon | First-person turn and walk with wall collision | Rooms, corridors and maze layouts |
| Open | Open-area movement model | Levels that are not constrained to a maze |
| Flight | Flying movement model | Levels designed for free vertical travel |
| Race | Race-oriented movement model | Courses and checkpoint-style layouts |
For this tutorial, stay with dungeon mode. Changing the preset changes how the player moves through the same data; it does not turn a corridor map into a new set of authored geometry.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →How do I paint walls that block the player?
Use Terrain → Wall and paint a continuous outer perimeter before adding the inner maze. Every adjacent painted cell joins into a solid wall block, and dungeon mode uses those wall cells for collision.
Also popular on Amazon
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Build the perimeter first
- Activate Terrain → Wall.
- Paint an unbroken rectangle around the playable area.
- Check corners for gaps; a single unpainted cell can leave an opening in an otherwise closed boundary.
Add corridors and rooms
Paint interior runs to form the dungeon route. Keep corridor widths consistent while testing movement, then add wider chambers for encounters. Because neighboring cells become continuous blocks, you do not need to place a separate cube for every wall segment.
Use terrain features when the floor is not flat
The 3D terrain data supports height changes, holes, ramps and painted materials. These features are independent of the wall grid: a ramp can change elevation while wall cells still define collision boundaries. Plan elevation changes before placing a spawn or enemy so their starting height matches the floor.
How do I place the player spawn and test first-person controls?
Place a Spawn, enable This is the player in its Inspector, and use Elevation (Z) when the starting point is on a higher level. Then press Live to run the scene in the editor.
- Choose the Spawn element tool and click inside a corridor or room.
- Select the new spawn and turn on This is the player.
- Adjust its Elevation (Z) if the map has ramps, platforms or multiple floors.
- Press Live and verify that the camera begins at the intended location.
In dungeon mode, Left/Right turn and Up/Down walk. A radar is available for larger layouts, making it easier to see where you are relative to the maze while testing. Walk the entire perimeter before adding combat; this catches gaps, unreachable pockets and incorrect spawn heights while the map is still simple.
How do 3D meshes and .glb models work?
In a 3D map, an asset is a mesh rather than a 2D sprite. A mesh asset can reference a glTF file or a binary .glb file. The starter 3D Kit already supplies primitive blocks, pillars and crates, so your first room can be playable before you create custom art.
Use the starter primitives
Use the kit primitives for walls, cover and placeholder props while you tune scale, collision and enemy placement. This keeps the first iteration focused on movement and game rules instead of delaying the playable test for modeling work.
Import an authored model
- Export the model as
.glb(for example, from Blender). - Copy the file into the project’s
games/assets/directory. - Create or edit a mesh asset that points to the file.
- Assign that mesh asset to the actor or prop in the scene.
A mesh asset entry has this shape:
{"id":"statue","name":"Statue","kind":"actor","type":"mesh","source":"statue.glb"}
At runtime, the loader reads authored meshes through GltfLoader. If an element has no mesh asset, the runtime can fall back to a primitive cube, which is useful for placeholders and for diagnosing whether a problem is in the model file or in scene placement.
Also popular on Amazon
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
How do I add enemies and projectile combat?
Place Tea Cup actors along the corridors, then handle Fire (or the space bar) in onUpdate. The combat loop is deliberately small: spawn a bean at the player’s position and facing direction, advance it using dt, test whether it is near an enemy, award score and remove a hit enemy, and remove the bean when it reaches a wall or an enemy.
Place and identify targets
- Add Tea Cup actors to reachable corridor segments.
- Give each actor the mesh or primitive you want to use for the prototype.
- Keep targets far enough apart that a single proximity test identifies one intended enemy.
Handle Fire in the update loop
The tutorial pattern uses GameInput and Display.GAME_FIRE. A bean starts at the player’s position, travels in the player’s facing direction, and moves at the example speed of 7. The example proximity radius is 0.5; both figures are implementation values for this sample, not performance measurements.
protected void onUpdate(float dt) {
if (GameInput.isPressed(Display.GAME_FIRE)) {
Bean bean = createBean(playerPosition(), playerDirection());
bean.setSpeed(7);
activeBeans.add(bean);
}
for (Bean bean : activeBeans) {
bean.advance(dt);
TeaCup enemy = enemyNear(bean.position(), 0.5f);
if (enemy != null) {
scene().remove(enemy);
addScore(1);
scene().remove(bean);
} else if (hitWall(bean.position())) {
scene().remove(bean);
}
}
}
The exact bean-construction and collection code belongs in your generated game class, but the order of operations matters. Test the wall branch before expanding enemy behavior so a missed shot cannot travel through the maze indefinitely. Add a life-loss rule only after enemy removal and score updates work reliably.
How are camera, lighting and level data connected at runtime?
The .game resource is the source of truth for the authored level. It stores camera settings, lights, elements, terrain heights and materials, and wall data. GameSceneView realizes each element as a Model beneath a perspective camera and applies the level lighting.
Recommended Free Tools
You can change light direction, light color and ambient color in code. A warmer light direction and tint can suggest torches; lower ambient color can produce moodier shadows. Make lighting changes after geometry is stable so you can distinguish a visibility problem from a missing or misplaced mesh.
Lighting checks during Live testing
- Confirm the camera faces the corridor instead of a wall at spawn.
- Use a neutral light color while checking mesh placement.
- Adjust ambient color only after you can see all required collision surfaces.
- When a model appears as a cube, verify the mesh asset path before changing lights.
What should I test before calling the room playable?
A first room is playable when the player can spawn, move through every intended route, see the geometry, fire a bean, hit an enemy and remain blocked by walls. Use this checklist in Live mode.
- Spawn: The player starts on the floor, not inside a wall or above a gap.
- Perimeter: Every outside edge is closed by adjacent wall cells.
- Navigation: Corridors connect the spawn to each encounter area.
- Collision: Walking stops at painted walls and beans disappear on wall impact.
- Meshes: Imported models load from
games/assets/; placeholders are intentional rather than accidental fallbacks. - Combat: Fire creates a bean in the facing direction, proximity removes a Tea Cup and score increases once per hit.
- Lighting: Floors, walls and enemies remain visible from the playable camera.
- Radar: Larger layouts remain understandable during navigation tests.
How should I expand the first room into a larger game?
Keep the first map manageable, then add one system at a time. A 16×16 room is presented as a practical starting size; it is large enough to test corridors and encounters without forcing you to solve world streaming immediately.
Also popular on Amazon
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Add progression and goals
- Implement enemy movement and a life-loss rule.
- Add an exit goal that completes the room.
- Place keys and locked doors to create a route through the maze.
- Add collectibles and connect them to score or inventory.
Add systems around the scene
- Use
PhysicsWorldwhen the simple wall and proximity checks no longer provide enough physical interaction. - Add sound effects for shots, impacts, doors and pickups.
- Use HUD or inventory dialogs for health, keys and collected items.
Scale with streamed regions
For a world larger than one room, divide the map into region-based streaming areas instead of loading every corridor at once. The same data-driven approach remains useful: each region can contain its own terrain, walls, models and gameplay elements while the runtime loads the regions needed around the player.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11What are the key design choices in this workflow?
Game Builder’s 3D workflow is most useful when you decide which work belongs in data and which belongs in code. The following choices keep iteration fast.
| Decision | Put it in the editor or resource | Put it in Java |
|---|---|---|
| Room shape | Wall cells, terrain heights, holes, ramps and materials | Only special procedural changes |
| Starting location | Spawn placement and Elevation (Z) | Rules that relocate or respawn the player |
| Visual assets | Mesh assignment and source file references | Runtime effects or replacements |
| Movement style | Dungeon, open, flight or race preset | Custom movement rules beyond the preset |
| Combat behavior | Enemy positions and actor setup | Input, projectile motion, hit tests, score and removal |
| Atmosphere | Base camera and light data | Dynamic light direction, color or ambient changes |
This split avoids hard-coding coordinates for every wall while leaving gameplay behavior programmable. It also makes it possible to try a different play-style preset on the same authored map.
What limitations and failure modes should I expect?
The tutorial does not publish named performance benchmarks or study statistics. Values such as the 16×16 room, projectile speed 7 and proximity radius 0.5 are sample implementation settings, not guarantees about frame rate, maximum map size or device support.
The player walks through a wall
Return to Terrain → Wall and inspect the exact cell at the opening. Adjacent painted cells must form a continuous block; a diagonal-looking boundary with an unpainted gap is still open to dungeon collision.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsThe player starts in the wrong place
Select the Spawn, verify that This is the player is enabled, and correct Elevation (Z). A ramp or raised platform can leave a spawn visually near the right spot but physically at the wrong height.
An imported model is replaced by a cube
Check that the file is under games/assets/, that the mesh asset’s source matches the filename exactly, and that the actor references the mesh asset. The cube fallback indicates that no usable mesh was resolved for that element.
Also popular on Amazon
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
A bean never hits an enemy
Confirm that the bean advances by dt, that it uses the player’s current facing direction, and that the enemy proximity check uses the intended radius. Also remove beans on wall impact so a missed shot cannot mask a direction or collision error.
What should I build next after Crypt Walk?
Once one room passes the movement and combat checklist, add a single new mechanic and retest the complete route. Enemy movement changes the collision problem; keys and locked doors change the map’s progression; inventory and HUD work changes the player’s information needs. Sound and lighting can then reinforce those mechanics without changing the underlying wall data.
The strongest next milestone is a two-room sequence: an entrance room, a locked connection, a key in an optional branch and an exit goal. That layout exercises the same spawn, wall, mesh, input, score and scene-removal code while giving you a meaningful reason to revisit a previously authored area.
Frequently Asked Questions
Can the same 3D map be tested with a different movement style?
Yes. Game Builder stores the map separately from the play-style preset, so the same level data can be viewed with dungeon, open, flight or race movement. Changing the preset changes traversal behavior, not the wall and terrain data you authored.
Do I need to model custom art before testing gameplay?
No. The starter 3D Kit supplies primitive blocks, pillars and crates, and elements without a resolved mesh can fall back to primitive cubes. You can validate navigation, collision and combat first, then replace placeholders with glTF or .glb assets.
Are the projectile speed and hit radius tuned performance standards?
No. Speed 7 and radius 0.5 are values used by the tutorial’s combat example. They are gameplay starting points, not published benchmarks or universal settings for every device and level.
When should a project move from one map to streamed regions?
Use a single compact room while you are validating movement, walls, lighting and combat. When the world needs many rooms or broad terrain, region-based streaming lets the runtime load nearby areas instead of treating the entire world as one scene.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

