The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 rendering-engine Open-Source Projects
-
PixiJS
The HTML5 Creation Engine: Create beautiful digital content with the fastest, most flexible 2D WebGL renderer.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
HybridRenderingEngine
Clustered Forward/Deferred renderer with Physically Based Shading, Image Based Lighting and a whole lot of OpenGL.
-
nn_vis
A project for processing neural networks and rendering to gain insights on the architecture and parameters of a model through a decluttered representation.
-
SoftGLRender
Tiny C++ Software Renderer / Rasterizer, and implements OpenGL and Vulkan renderers for comparison
-
thorvg
Thor Vector Graphics is a lightweight portable library used for drawing vector-based scenes and animations including SVG and Lottie. It can be freely utilized across various software platforms and applications to visualize graphical contents.
-
Rythe-Engine
Rythe is a data-oriented C++17 game engine built to make optimal use of modern hardware.
-
Kaetram-Open
Kaetram is an open-source 2D HTML5 MMORPG. It is an extended version of BrowserQuest (BQ).
-
BioExplorer
The Blue Brain BioExplorer (BBBE) is a tool for data visualization experts and scientists to extract and analyze scientific data from visualization and interactive exploration
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
If you're into video game dev, then PixiJS is something you need to know about. It's a HTML5 game engine that provides a lightweight 2D library across all devices. This latest update has a new package structure, custom builds, graphics API overhaul, and lots more. You can read about all these changes in the PixiJS Migration Guide. Also big congrats to PixiJS for being part of the open source community for ten years now! 😮.
I don’t think that exists (I sure would like for it to), but until it does you could amuse yourself with:
- A 500-line (non-OpenGL-compatible) 3D rasterizer: https://github.com/ssloy/tinyrenderer/wiki.
- A “hello Wayland” app written in C without libwayland or anything else: https://gaultier.github.io/blog/wayland_from_scratch.html.
- A “hello X11” app written in x86-64 assembly(!) without libX11, libxcb, or anything else: https://gaultier.github.io/blog/x11_x64.html.
Project mention: Show HN: A JavaScript library for data visualization in both SVG and Canvas | news.ycombinator.com | 2024-04-11> DOM-like event bubbling
This does sound very interesting. I started playing with https://two.js.org/ for a browser game but the event system proved a challange. The typescript focus also looks promising. Will give it a try.
Project mention: VoxelSpace – Terrain rendering algorithm in less than 20 lines of code | news.ycombinator.com | 2023-10-28
Source: https://github.com/ssloy/tinyraytracer
Aside from that, for more foundational information about how things like rendering and shaders work, there's a plethora of content out there such as NVIDIA's "Life of a Triangle" blog post or Fabien Giesen's "A trip through the Graphics Pipeline" blog post. There's really too much to link, so I'm just gonna link this treasure trove of resources covering dozens upon dozens of articles, presentations and blog posts from general computer graphics, GPU programming and architecture, software development, OpenGL-specific resources for getting into graphics programming, etc.
Project mention: Mikado v0.8 has just published the fastest middleware render engine for Express | news.ycombinator.com | 2023-12-23
Project mention: Show HN: Realtime Global Illumination on Older Hardware [video] | news.ycombinator.com | 2023-07-24Hi everyone,
A few months ago I posted here on HN about my open source 3D rendering engine. Since then I've been working on the new version which implements additional modern graphics techniques while still running on older GTX 10 series hardware.
This includes emission mapping, FXAA+TAA, better mesh LOD generation and selection, but the biggest one was an overhaul of the global illumination system.
The global illumination overhaul was the biggest aspect of the new release. The goal was better visuals than the previous version while maintaining equal performance. I wanted to outline how it works and what I had to do to make it work.
= How It Works =
* Direct lighting: Handled using standard rasterization pipeline with cascaded shadow mapping
* 2nd bounce of light: Approximated by a set of virtual point lights
* 3rd bounce of light: Not directly simulated but shadows are tapered to prevent harsh cutoff. VPLs can also be placed in open spaces to help spread light where it wouldn't be able to go without a true 3rd bounce.
* Adaptive sampling: maximum of 4200 virtual lights per frame are selected. Each pixel computes lighting using between 1 and 10 random samples based on object's distance to camera and whether or not the lighting history was recently discarded for that pixel (recently discarded = temporarily sample more heavily).
* Spatial resampling: each pixel can look at a few of its neighbors each frame. If the neighbor is a good fit it will merge that neighbor's samples into its own to increase the effective sample count.
* Denoise and temporal accumulation: 2 level wavelet denoiser combined with temporal accumulation to get rid of most noise and stabilize the image even when in motion.
= Maintaining Performance =
There are a few key ways that this version is able to both look better yet have the same performance as the previous version on the same hardware.
1) Reuse as much data as possible between frames. This is where the temporal accumulation aspect comes into play.
2) VPLs are updated slowly over many frames to prevent any single frame from halting the system.
3) With thousands of VPLs per frame, they can't all be factored in for each pixel. It's too much work. The approach was to instead sample from the set of VPLs randomly, reuse as much data spatially as possible, denoise the result and temporally accumulate 1 second worth of frames.
I'm very happy with the results! Roughly the same performance as the previous version but better visuals.
GitHub (open sourced under the MPL-2.0 license): https://github.com/KTStephano/StratusGFX
Image Showreel: https://ktstephano.github.io/portfolio
High-Level Tech Breakdown: https://ktstephano.github.io/rendering/stratusgfx/frame_anal...
Project mention: 3D and 2D: Testing out my cross-platform graphics engine | news.ycombinator.com | 2024-04-02
rendering-engine related posts
- Why Are Modern PC Games Using So Much VRAM?
- THIS RENDER ISN'T BY ME, I wanna ask how can I achieve such an art style? Is this done by compositing or a material?
- How to manage and provide common shaders in game engine
- A little demonstration of a toon .gdshader working inside Godot 4 and Blender Malt
- what do you think about alternative browser engines?
- Looking for minimal UI framework which will work with SDL2/OpenGL
- Ideas on achieving similar shader results in Blender? I believe this was made in C4D
-
A note from our sponsor - WorkOS
workos.com | 23 Apr 2024
Index
What are some of the best open-source rendering-engine projects? This list will help you:
Project | Stars | |
---|---|---|
1 | PixiJS | 42,496 |
2 | tinyrenderer | 19,305 |
3 | two.js | 8,186 |
4 | VoxelSpace | 5,794 |
5 | tinyraytracer | 4,887 |
6 | tinykaboom | 2,309 |
7 | litehtml | 1,782 |
8 | HybridRenderingEngine | 1,064 |
9 | nn_vis | 1,042 |
10 | Malt | 926 |
11 | SoftGLRender | 914 |
12 | mikado | 739 |
13 | StratusGFX | 598 |
14 | SoftwareRenderer | 583 |
15 | Skybolt | 541 |
16 | thorvg | 530 |
17 | Rythe-Engine | 529 |
18 | Kaetram-Open | 492 |
19 | INOX | 101 |
20 | BioExplorer | 62 |
21 | CroissantVulkanRenderer | 58 |
22 | orka | 57 |
23 | keikan | 56 |
Sponsored