Skip to content

Releases: msabate00/SandForge-Engine

v0.1

02 Mar 19:22

Choose a tag to compare

SandForge Engine — v0.1 (Release)

SandForge is a source-based engine (C++17 / OpenGL 3.3).
This release targets both players (prebuilt demo) and developers (engine source).


Downloads

For players (Windows build)

  • SandForge_Engine_v0.1.zip
    Portable demo build. Extract and run.

For developers (source)

  • Source code (zip) (GitHub auto-generated)
    or clone the repo and build with Visual Studio (CMake).

System Requirements

Minimum

  • RAM: 256 MB
  • OS: Windows 10 (64-bit)
  • CPU: x64 dual-core
  • GPU: OpenGL 3.3 Core compatible
  • Disk: ~200 MB free

Recommended

  • RAM: 512 MB
  • OS: Windows 10/11 (64-bit)
  • CPU: x64 quad-core
  • GPU: newer drivers / OpenGL 4.x capable

How to Run (Players)

  1. Download SandForge_Engine_v0.1.zip
  2. Extract it anywhere
  3. Run the executable
  4. Keep these folders next to the executable:
    • assets/
    • levels/
    • logs/ (created automatically if missing)

Logs

  • Written to: logs/engine.log

If it fails to start / missing assets

Most issues come from running without the expected folders (assets/, levels/) next to the exe.
Re-extract the zip and run from the extracted folder.


How to Use / Modify (Developers)

SandForge is used by editing the source and rebuilding.
The build output (FallingSand.exe) is effectively your game/app built on top of the engine code.

Recommended workflow (Visual Studio 2022 + CMake)

  1. Fork/clone the repository
    git clone https://github.com/msabate00/SandForge-Engine.git
  2. Open Visual StudioFile → Open → Folder...
  3. Select: SandForge-Engine/SandForge-Engine/
  4. Build the target: SandForge Engine
  5. Run (Local Windows Debugger)

Working directory / runtime data

The executable expects runtime data under the working directory:

  • assets/ (shaders, sprites, audio)
  • levels/ (level files)

If you run from Visual Studio, set the working directory to the folder that contains assets/ and levels/
(i.e. SandForge-Engine/SandForge-Engine/), or copy those folders next to the built executable.

Where to put your “game” code

  • Engine systems: src/core/, src/render/, src/ui/, src/audio/, src/app/
  • Game layer (scenes/menus/gameplay glue): src/game/

Default Controls (Demo)

Materials

  • 1: Sand
  • 2: Water
  • 3: Stone
  • 4: Wood
  • 5: Fire
  • 6: Smoke
  • 9: Erase (Empty)

Painting / tools

  • LMB (hold): paint current material
  • Mouse Wheel: change brush radius (1–64)
  • Shift (hold): lock stroke to X/Y axis (straight line)

Simulation / debug

  • P: pause / resume
  • N: step one simulation tick (when paused)
  • F1: toggle chunk debug overlay
  • F2: toggle hitbox debug overlay
  • F6: clear world
  • F5: quick save → levels/custom/quick.lvl
  • F9: quick load ← levels/custom/quick.lvl

Camera

  • W A S D: pan camera
  • Ctrl + Mouse Wheel: zoom (pixels-per-cell)

Updates

v0.1.1

  • Particles: Added a sprite-based particle system integrated into the engine loop.
  • Emitters: Supports continuous emission (spawnRate) and burst emission (explosions).
  • Render layers: Particles can render in WORLD or UI (screen-space).
  • Presets included: Sparks, Smoke, Dust, Fire, ConfettiUI, Shockwave.
  • RNG improvements: Burst randomness is seeded from the engine RNG (position + frame + salt) to avoid identical-looking bursts at different locations.
  • Over-life gradients: speed, size, and color support multiple keys in the form { {min,max}, t } (e.g. small → big → small).
  • World scale cohesion: WORLD particle sizes are aligned with the pixel-art world using pixelsPerCell.
  • Gradient-only config: Removed legacy start/end and range fields; everything is driven by gradients:
    • 1 key = constant
    • 2 keys = start/end
    • >2 keys = full gradient
  • Cleanup/simplification: Removed unnecessary complexity (no per-particle gradient caches); emitters are not recycled until all their particles are dead; bursts use a temporary auto-cleaned emitter.
  • Presets cleanup: Updated presets to use RGBAu32(r,g,b,a) (no 0x... color literals) and to match the gradient-only configuration.
    -Build (Windows): en Release el exe se enlaza sin consola (Debug mantiene consola para logs).

Known Issues

  • Windows is the primary target. Other platforms may require minor changes (toolchain, OpenGL loader, paths).
  • Running from the wrong working directory can cause missing shaders/assets/levels.

v0.0.2

18 Feb 23:58

Choose a tag to compare

Full Changelog: v0.0.1...v0.0.2

v0.0.1

14 Sep 20:06

Choose a tag to compare