Skip to content

Hamsik2rang/HSMR

Repository files navigation

HSMR

A cross-platform graphics engine built with C++20

WARNING: This project is currently in active development. It may not build or run correctly on your local environment.

Overview

HSMR is a modular, cross-platform graphics engine supporting Vulkan (Windows) and Metal (macOS). The engine features an Entity-Component System, an ImGui-based editor with 3D gizmo manipulation, a runtime shader compilation pipeline, and a forward rendering architecture.

Prerequisites

  • CMake 3.22.0 or newer
  • C++20 compatible compiler

Windows

  • Visual Studio 2026(with CMake 4.2.1), 2022 (or 2019, untested)
  • Vulkan SDK

macOS (Apple Silicon)

  • Xcode (latest version)

Build

# Generate build files
cmake -S . -B Build

# Build (Debug)
cmake --build Build --config Debug

# Build (Release)
cmake --build Build --config Release

# Build a specific target
cmake --build Build --target Client --config Debug

The built executable and assets are output to Build/Debug/ (or Build/Release/).

Editor Launch

# editor (default)
./Build/Debug/Client

# simple editor (only swapchain rendering with control panel)
./Build/Debug/Client -simple

Third-Party Libraries

Library Purpose
SDL3 Cross-platform window and input
ImGui Immediate-mode GUI
ImGuizmo 3D gizmo manipulation
ImPlot Plot/chart widgets
EnTT Entity-Component System
GLM Math library
ASSIMP 3D model loading
STB Image loading
Slang Shader compilation
SPIRV-Cross Shader cross-compilation
Tracy Performance profiler

License

This project is licensed under the MIT License. See LICENSE for details.

About

Lightweight cross-platform renderer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages