All Projects → behindthepixels → Edxray

behindthepixels / Edxray

A physically based renderer which implements many state of the art techniques in light transport simulation, material modeling, sampling and reconstruction.

Projects that are alternatives of or similar to Edxray

Tinyraytracer
A brief computer graphics / rendering course
Stars: ✭ 3,971 (+1370.74%)
Mutual labels:  graphics, rendering, raytracing
Flycube
Graphics API wrapper is written in C++ on top of Directx 12 and Vulkan. Provides main features including ray tracing.
Stars: ✭ 78 (-71.11%)
Mutual labels:  graphics, rendering, raytracing
Tinykaboom
A brief computer graphics / rendering course
Stars: ✭ 2,077 (+669.26%)
Mutual labels:  graphics, rendering, raytracing
C-Raytracer
A CPU raytracer from scratch in C
Stars: ✭ 49 (-81.85%)
Mutual labels:  rendering, raytracing
Polymer
🎨 graphics + interaction engine
Stars: ✭ 243 (-10%)
Mutual labels:  graphics, rendering
Gg
Go Graphics - 2D rendering in Go with a simple API.
Stars: ✭ 3,162 (+1071.11%)
Mutual labels:  graphics, rendering
Euc
A software rendering crate that lets you write shaders with Rust
Stars: ✭ 180 (-33.33%)
Mutual labels:  graphics, rendering
fluctus
An interactive OpenCL wavefront path tracer
Stars: ✭ 55 (-79.63%)
Mutual labels:  rendering, raytracing
photon mapping
minimal but extensible header only implementation of photon mapping in C++
Stars: ✭ 65 (-75.93%)
Mutual labels:  rendering, raytracing
pmj-cpp
"Progressive Multi-Jittered Sample Sequences" in C++
Stars: ✭ 34 (-87.41%)
Mutual labels:  rendering, raytracing
CLUSEK-RT
Vulkan based C++ ray-tracing game engine.
Stars: ✭ 24 (-91.11%)
Mutual labels:  rendering, raytracing
Datoviz
⚡ High-performance GPU interactive scientific data visualization with Vulkan
Stars: ✭ 222 (-17.78%)
Mutual labels:  graphics, rendering
Picasso
Picasso is a high quality 2D vector graphic rendering library. It support path , matrix , gradient , pattern , image and truetype font.
Stars: ✭ 205 (-24.07%)
Mutual labels:  graphics, rendering
Photon-v2
A program that takes photographs of a virtual world.
Stars: ✭ 75 (-72.22%)
Mutual labels:  rendering, raytracing
Vxr
General purpose engine written in C++ with emphasis on materials rendering (PBR, clear coat, anisotropy, iridescence)
Stars: ✭ 181 (-32.96%)
Mutual labels:  graphics, rendering
f3d
Fast and minimalist 3D viewer.
Stars: ✭ 791 (+192.96%)
Mutual labels:  rendering, raytracing
DuEngine
An efficient interactive C++ renderer for ShaderToy-alike demos with 2D/3D/CubeMap/Video/Camera/LightField/Volume textures. (Partially used in my I3D 2018 papers)
Stars: ✭ 62 (-77.04%)
Mutual labels:  rendering, raytracing
Fall2021
Base repository for Dartmouth's CS87/287 (Fall 2021).
Stars: ✭ 43 (-84.07%)
Mutual labels:  rendering, raytracing
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (-12.96%)
Mutual labels:  rendering, raytracing
Unitydxrtest
A testbed project for Unity real-time ray tracing features
Stars: ✭ 172 (-36.3%)
Mutual labels:  graphics, raytracing

EDXRay

Please go to behindthepixels.io/EDXRay/ for more detailed introduction.

EDXRay is a physically based render independently developed by Edward Liu. It is built with modern C++. Aside from many low level optimizations, parallelism is exploited on both thread level and instruction level so it's highly performant. It includes many state of the art algorithms published in recent years in light transport simulation, material modelling, sampling and reconstruction, camera models as well as participating media.

The source code of EDXRay is highly self-contained and does not depend on any external library other than EDXUtil, which is a utility library developed by Edward Liu.

EDXRay is currently built and tested only on Windows platform. Developer using Visual Studio 2015 should be able to build the source code immediately after syncing. Porting to Linux or macOS should not be difficult since it there is no external dependency.

List of Features

Integrators

  • Volumetric Path Tracing
  • Bidirectional Path Tracing with Multiple Importance Sampling
  • Multiplexed Metroplis Light Transport

Materials

  • Lambertion Diffuse
  • Smooth Conductor
  • Smooth Dielectric
  • Rough Conductor
  • Rough Dielectric
  • Disney BRDF
    • Layered Material with Up to 2 Specular Coats
    • Cloth
  • Subsurface Scattering
    • Normalized Diffusion
    • Participating Media
  • Normal Map
  • Roughness Map
  • Alpha Test

Acceleration Structure

  • Optimized BVH traversal and Triangle Intersection with SSE
  • Multi-threaded BVH Construction
  • Embree can be optionally used (Introduce external dependency)

Light Source

  • Point Light
  • Directional Light
  • Polygonal Area Light
  • Procedural Sky Light with Hosek Model
  • HDR Probe

Camera Models

  • Thin Lens Model
  • Fisheye Camera
  • Realistic Camera Parameters
  • Arbitrarily Shaped Bokeh
  • Vignette and Cateye effect

Sampler

  • Independent Sampler
  • Sobol Sequence with Screen Space Index Enumeration
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].