Skip to content

0dm/ScrapEngine

 
 

Repository files navigation

SlopEngine ScrapEngine

Apple-only C++23 graphics and physics engine. Main app uses Metal. Scene/editor code is still mixed between newer Metal work and older Vulkan-era code.

features:

  • ECS-style scene and components
  • forward PBR rendering
  • image-based lighting and skybox
  • XPBD rigid body and cloth physics
  • Dear ImGui debug UI
  • glTF scene loading

Platforms

  • macOS
  • iOS

Build

Needs:

  • CMake 3.30+
  • vcpkg
  • slangc on PATH

Example:

export VCPKG_ROOT=/path/to/vcpkg
cmake -S . -B build \
  -DCMAKE_TOOLCHAIN_FILE="$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake" \
  -DVCPKG_INSTALLED_DIR="$PWD/build/vcpkg_installed" \
  -DVCPKG_TARGET_TRIPLET=arm64-osx
cmake --build build --target ScrapEngine

Run

./build/ScrapEngine.app/Contents/MacOS/ScrapEngine \
  --ibl path/to/sky.hdr \
  path/to/scene.gltf

Run --help for the rest of the flags.

Repo layout

  • src/app/ app, scene, components, platform code
  • src/gpu/metal/ Metal renderer, IBL, presentation
  • src/physics/ XPBD physics
  • src/launcher/ launcher and CLI
  • shaders/ shader sources
  • assets/ bundled assets

Notes

  • This project started from SauceEngine but has been rewritten a lot.
  • src/editor/ and some Vulkan-era files are still in the repo, but they are not the main path right now.

License

See LICENSE if present.

About

Fork of SauceEngine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 85.9%
  • Objective-C++ 9.3%
  • Slang 2.6%
  • CMake 1.2%
  • Other 1.0%