Skip to content
프로젝트

tataliya7/HorizonEngine has 79 GitHub stars and 15 forks. Star changes are not measured yet. Last checked 2026-11-14 08:31 UTC. Last push 2024-08-03.

이 수치를 측정하는 방법

측정된 스타 증가

in 24h
기록 수집 중
in 7 days
기록 수집 중
in 15 days
기록 수집 중
in 1 month
기록 수집 중

서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.

소개

Experimental 3D rendering engine

창작 및 미디어

README.md

Original

Horizon Engine

Horizon Engine is an open-source 3D rendering engine, focusing on modern rendering engine architecture and rendering techniques. Serving a different purpose than game engines, this project aims to build a highly scalable rendering framework to improve the productivity of prototype projects and academic research, but also to serve as an educational tool for teaching rendering engine design and implementation from scratch.

Horizon Engine is currently only supported on Windows and only target modern graphics APIs (Direct3D 12, Vulkan, Metal).

Discord

Introduction

Goals:

  • Efficent and Flexible Rendering
  • Fast Rendering Techniques Experimentation, eg. Hybrid Rendering with DXR or Vulkan Ray Tracing KHR

Horizon Engine Architecture:

image

Daisy Renderer Architecture:

Inspired by Halcyon

image

Features:

  • Modularization using C++20 modules
  • Fiber-Based Job System
  • Bindless
  • Render Graph
  • ECS (Entity-Component-System)
  • Hybrid Render Pipeline
  • Deferred Render Pipeline
  • Path Tracing
  • Physics Engine Integration (PhysX)
  • Sound Engine Integration (miniaudio)

Roadmap:

  • Super Resolution Algorithms (DLSS 2, FSR 2, etc)
  • Visibility Buffer (Also Called Deferred Texturing or Deferred Material Shading)
  • Surfle GI
  • Native Graphics API Support (Direct3D 12, Metal 2)
  • Multi-GPU Rendering
  • Plugin System (Live-Reloadable Plugins)
  • Machine Learning (TensorRT Integration)
  • VR/AR Support
  • Cross-Platform (MacOS and Linux Support)

Screenshots

Scene Editor image

FSR image

Raytraced Shadows image

Sky Atomsphere image

Particles image

Cornell Box image

See here for more examples.

Requirements

  • Windows 10 SDK (10.0.20348.0)
  • NIVIDIA Graphics Cards (Geforce RTX 20-series or 30-series) and keep your graphics drivers up to date (https://www.nvidia.com/Download/index.aspx)
  • Vulkan SDK 1.3.216.0, this repository tries to always be up to date with the latest Vulkan SDK (https://vulkan.lunarg.com/sdk/home)
  • CUDA SDK (11.7)
  • Visual Studio 2022, and make sure C++ Modules for v143 build tools (x64/x86 - experimental) is installed (Currently, I'm working with Preview Version 17.4.0, it may not compile successfully if you use another version)
  • C++ 20

Getting Started

  1. Clone this repository

git clone https://github.com/harukumo/HorizonEngine

  1. Run "GenerateProjects.bat"

Third Party

Documentation

Reference Manual

API Specification

Programming Guide

Q&A:

See Q&A where common questions are answered.

Debug Tools

Vulkan/D3D12 debugging:

Optix debugging:

CPU profiling:

Contribution

Contributions are welcome.

Sponsors

Lisence

관련 프로젝트 살펴보기