Free C++ pixel art editor
â—† The list of supported file formats has been moved to the web manual.
â—† The system requirements table has been moved to the web manual.
â—† The downloads section has been moved to the web manual.
â—† Official Discord server
â—† Itch.io page
â—† BlueSky page
â—† Web manual
- Run the
setup_windows_devlibs.batscript - Open
freesprite.slnwith Visual Studio and build/run like any other C++ program.
You may also use MSBuild to build through commandline:
msbuild /m /t:voidsprite /p:Configuration=Release /p:Platform="x64" voidsprite.sln- Install CMake and dependencies required for building SDL: https://wiki.libsdl.org/SDL3/README-linux
- Run the following commands in the root of the repository:
mkdir build
cd build
cmake ..
make -j4The executable will be built to /build/cmake.
It's recommended to use Clang 18 for building. GCC older than 14 may not work.
- Install the dependencies and their respective development packages: sdl3, sdl3_ttf, sdl3_image, sdl3_net, libpng, pugixml, zlib, liblcf, libjxl, libhwy
- Some dependencies (libpng, pugixml, zlib, liblcf) will be automatically downloaded and built during the build step if not installed - don't worry if your distro does not package them.
- GCC/G++ 13 or later is required
- Install meson (note that version 0.62.2 or higher is required; Ubuntu 22.04 users will want to install a newer version directly from pip with
pip3 install --user meson) - Run
./linux_build.sh- You can also pass the
--runflag to automatically run the built binary, the--globalflag to install to/usr/local, and--portableto generate a portable build (assets stored in the same directory as the executable). - If you installed a separate version of GCC to use alongside your system install, you can specify a different compiler by setting the
CCandCXXvariables while callinglinux_build.sh, e.g.CC=gcc-13 CXX=g++-13 ./linux_build.sh
- You can also pass the
By default, the generated output files will be placed in /tmp/voidsprite. When --global is passed, they will be installed to /usr/local instead.
You can also build the program as a Flatpak, see Flatpak README.
- Run the
setup_android.batscript on Windows, or thesetup_android_on_linux.shscript on other systems. - Open the
android-projectdirectory with Android Studio and build it like any other project.
Some dependencies can be disabled with build flags:
-DVOIDSPRITE_JXL_ENABLED=0will disable JPEG XL support (dropslibjxl,libhwyrequirement). JPEG XL might still be importable through SDL_image.-DVSP_NETWORKING=0will disable all socket-based network features, like network canvas (dropssdl3_netrequirement). HTTP features like update checks and downloading from Lospec are separate and will still work.-DUSE_FMT_FORMAT=1will usefmtfor string formatting instead ofstd::format.fmtneeds to be present.-DVSP_USE_LIBLCF=0will disable RPG Maker map preview and LMU tileset import (dropsliblcfrequirement). Import/export of XYZ images is not affected.-DVSP_USE_LIBAVIF=0will disable AVIF support (dropslibavifrequirement). AVIF might still be importable and exportable through SDL_image.
voidsprite is open for community contributions. Here are some ways you can help:
- Open PRs to contribute to the code
- Open Issues (or report them on Discord) to help get bugs and other problems fixed
- Share your custom Patterns and Templates
- Translate voidsprite into your language. More details
â—† You can support the project by donating on itch.io
â—† voidsprite is licensed under GPLv2.
â—† Licenses for other libraries and fonts used in voidsprite can be found in the OPEN_SOURCE_LICENSES directory
â—† All content created with voidsprite (including content created using default templates, filters, patterns, etc.) remains the property of the user who created it.