QtCraft API C++ classes QML types Handbook

QtCraft API

QtCraft is a voxel sandbox game built with Qt 6 (C++23, Qt Quick, QRhi). Client and server are separate programs even in single player: the game runs its server in the same process (QcLocalServerHost) and talks to it only through protocol messages, as it talks to a server over the network.

This reference is generated by QDoc from the comments in the headers and QML files. How the game is played is in the handbook.

Libraries

Each library may use only the libraries listed before it (with the exceptions named on its page); the client libraries never see a server type.

LibraryContent
qc_commonShared by client and server: coordinates, chunks, the content registry, physics, the protocol, the handbook.
qc_networkTCP and TLS transport of the protocol frames.
qc_worldgenWorld generation: generators, terrain, structures, villages, the showcase world.
qc_serverThe authoritative server: tick, world, chunks, mobs, plants, commands, saving.
qc_worldsRunning worlds for the game and the headless server: the local server, the world library, mods.
qc_clientcoreThe client without GUI: session, prediction, meshing, light, camera, textures, sound synthesis.
qc_audioSound output of the graphical client.
qc_app_coreThe Qt Quick client: controllers for QML, rendering, input.
qtcraft_headlessThe headless server, bots and the control interface.
QtCraft QML TypesThe QML module QtCraft: screens, HUD and controls.

All C++ classes