Welcome to BambooBasic!
BambooBasic is a modern BASIC programming language inspired by BlitzBasic. It provides a simple yet powerful environment for creating applications, games, and utilities.
Getting Started
To create your first program:
- File > New - Create a new BambooBasic file
- Write your code in the editor
- Build > Build and Run (F5) - Compile and run your program
Documentation
- Making Your First Game - Step-by-step tutorial building a complete game
- Language Reference - Variables, functions, control flow, and more
- Runtime Commands - Graphics, audio, input, networking, and file I/O
- 3D in 2D - Rendering real, shaded 3D with the 2D drawing commands
- Custom Shaders - Image shaders, screen shaders, and the shader compiler
- Palette Cycling - Indexed colour and self-animating images, explained from scratch
- Debugger - Using the integrated debugger
- Examples - Browse the example programs
Note: The runtime reference was created using AI, it scanned the entire library, but, if you do spot any oddities, then please let me know.
Resources
Features
- Modern BASIC syntax with classes and custom types
- Import system for DLL integration
- Vulkan graphics engine with hardware-accelerated 2D rendering
- 2D overlay system with sprites, animations, and text rendering
- 3D engine with mesh loading (GLB), skeletal animation, and PBR materials
- Advanced 3D physics with vehicles, character controllers, and constraints
- Custom GLSL shader support (image and text shaders)
- Terrain system with heightmaps and detail textures
- Built-in audio playback (WAV, OGG, MP3) with 3D spatial audio
- Network support (TCP/UDP)
- File operations and string handling
- Visual GUI designer (BGI) with automatic event dispatching
- Integrated debugger with breakpoints and variable inspection
- Syntax highlighting and auto-completion in the editor
- Fast compilation to native executables
Third-Party Libraries
BambooBasic uses the following excellent open-source libraries:
- SoLoud Audio Engine - Easy to use, free, portable audio engine (zlib/libpng license)
- miniz - Single C source file zlib-replacement library (MIT license)
- wxWidgets - Cross-platform GUI toolkit (wxWindows Library Licence)
BambooBasic © 2026 Michael Denathorn