Fun little drawing side-project
Warning
VERY INCOMPLETE!!!
Warning
Dependencies (for building):
- CMake
- C++ Compiler (ideally gcc)
- MinGW compiler (Windows)
Raylib and SDL3 are vendored under vendor/; SDL3 does not need to be installed system-wide.
By default, the app links prebuilt static archives from vendor/raylib/<platform>/lib
and vendor/SDL/<platform>/lib, where <platform> is windows or unix.
To regenerate those archives on the current platform:
cmake -S . -B build-vendor -DMYCANVAS_BUILD_VENDOR_LIBS=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build-vendor --target SDL3-static raylib-- Unix Systems:
$ mkdir build
$ cd build/
$ cmake ..
$ make- Running:
// running temporarily
$ ./myCanvas
// running with a file to load/save
$ ./myCanvas -f fileName
// running with window dimensoins (defaults: width = 800, height = 600)
$ ./myCanvas -w 1920 -h 1080
// running with window dimensoins and file to load/save
$ ./myCanvas -w 1920 -h 1080 -f fileName
-- Windows Systems:
$ cmake -S . -B build -G "MinGW Makefiles"
$ cmake --build build- Running:
// running temporarily
$ myCanvas.exe
// running with a file to load/save
$ myCanvas.exe -f fileName
// running with window dimensoins (defaults: width = 800, height = 600)
$ myCanvas.exe -w 1920 -h 1080
// running with window dimensoins and file to load/save
$ myCanvas.exe -w 1920 -h 1080 -f fileName
LeftMouseDown=DrawShift + LeftMouseDown + (Move Mouse Left/Right)=Resize BrushE=Toggle Eraser/BrushCtrl+1 -> Ctrl+4= Transparency from25% -> 100%
Ctrl+E=Create LayerCtrl+W=Move up a layerCtrl+S=Move down a layerCtrl+Shift+W=Shift a layer upCtrl+Shift+S=Shift a layer downCtrl+A/D=Cycle between Blending Modes
Space + LeftMouseDown=PanCtrl + Space + LeftMouseDown + (Move Mouse Up/Down)=Zoom In/OutCtrl+Z=Undo(max of 10 undos)Ctrl+Shift+Z=RedoEnter=Save