All Projects → maierfelix → Tiny Rtx

maierfelix / Tiny Rtx

Licence: mit
A Vulkan RTX Ray Tracer

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to Tiny Rtx

3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+11716.16%)
Mutual labels:  vulkan
Vkmark
Vulkan benchmark
Stars: ✭ 80 (-19.19%)
Mutual labels:  vulkan
Vk raytrace
Ray tracing glTF scene with Vulkan
Stars: ✭ 91 (-8.08%)
Mutual labels:  vulkan
Gears Vk
Powerful low-level C++20 rendering framework for Vulkan 1.2, including Real-Time Ray Tracing (RTX) support, built atop Auto-Vk.
Stars: ✭ 71 (-28.28%)
Mutual labels:  vulkan
Flycube
Graphics API wrapper is written in C++ on top of Directx 12 and Vulkan. Provides main features including ray tracing.
Stars: ✭ 78 (-21.21%)
Mutual labels:  vulkan
Rust Game Development Frameworks
List of curated frameworks by the **Game Development in Rust** community.
Stars: ✭ 81 (-18.18%)
Mutual labels:  vulkan
Vulkanmemoryallocator
Easy to integrate Vulkan memory allocation library
Stars: ✭ 1,136 (+1047.47%)
Mutual labels:  vulkan
Lumino
Lumino is a framework for building real-time graphics applications.
Stars: ✭ 97 (-2.02%)
Mutual labels:  vulkan
Scrapengine
A very simple real-time Vulkan 3D game engine
Stars: ✭ 80 (-19.19%)
Mutual labels:  vulkan
Bgfx
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+10255.56%)
Mutual labels:  vulkan
Vkk
VK², Kotlin Wrapper for Vulkan: code expressiveness and safety meet graphic power
Stars: ✭ 72 (-27.27%)
Mutual labels:  vulkan
Dota 2 Vulkan
Tracker for issues specific to the Vulkan version of Dota 2 on Windows, Linux, and macOS
Stars: ✭ 77 (-22.22%)
Mutual labels:  vulkan
Gpu Allocator
🦀 Memory allocator written in pure Rust for GPU memory in Vulkan and in the future DirectX 12
Stars: ✭ 84 (-15.15%)
Mutual labels:  vulkan
Tristeon3d
A 3D Engine built by two Game Engineering students.
Stars: ✭ 68 (-31.31%)
Mutual labels:  vulkan
Substrate
A cross-platform render-graph based rendering system written in Swift
Stars: ✭ 94 (-5.05%)
Mutual labels:  vulkan
Shaderconductor
ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages
Stars: ✭ 1,146 (+1057.58%)
Mutual labels:  vulkan
Spvgentwo
SpvGenTwo is a SPIR-V building and parsing library written in plain C++17 without any dependencies. No STL or other 3rd-Party library needed.
Stars: ✭ 74 (-25.25%)
Mutual labels:  vulkan
Nova Rs
Nova Renderer, but in Rust
Stars: ✭ 98 (-1.01%)
Mutual labels:  vulkan
Premulalpha
Pre-Multiplied blend mode is a 3 in 1 blend mode that has a lot of uses. It has been around for a long time but it seems to be re-discovered every few years. This project includes descriptions/examples and tools for using pre-multiplied alpha.
Stars: ✭ 97 (-2.02%)
Mutual labels:  vulkan
Waifu2x Ncnn Vulkan
waifu2x converter ncnn version, runs fast on intel / amd / nvidia GPU with vulkan
Stars: ✭ 1,258 (+1170.71%)
Mutual labels:  vulkan

Tiny RTX

Download

Description

This is a little experiment, mainly for learning about NVIDIA's Vk_NV_ray_tracing extension, which allows Real-Time Ray Tracing.

Requirements

This demo should run smooth on RTX cards, I've tested it with an external RTX 2070.

If you have a GTX card, then you might be able to run the demo as well, as NVIDIA recently added RTX emulation for some cards of the GTX series (but prepare for some sloppiness).

I recommend using the latest version of node, as this project heavily depends on BigInt, N-API, WebAssembly and ESM

Screenshots

Installation

git clone https://github.com/maierfelix/tiny-rtx.git
cd tiny-rtx
npm install
npm run start

Releasing

npm run release --node-binary="window-x64-12.9.1"

Flags:

  • --node-binary: The node version to use
  • --build-node: Build node from scratch instead of using a pre-built version (from here)

Controls

  • Use your mouse buttons to rotate the camera
  • Use your mouse wheel to zoom in/out

Create your own Scene

Simply edit the main.js file in the repository

TODOs

  • Texture support
  • PBR based scattering
  • Denoise filter (A-SVGF?)
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].