30 open-source projects similar to baldurk/renderdoc, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Renderdoc alternative.
bgfx is a cross-platform, graphics rendering abstraction layer designed for high-performance applications. It provides a unified interface that maps high-level rendering commands to native graphics APIs, allowing developers to maintain a single codebase that executes consistently across diverse operating systems and hardware architectures. The library distinguishes itself through a multi-threaded command submission model that decouples rendering logic from the main application thread, effectively minimizing CPU bottlenecks. It utilizes a backend-agnostic command buffer and a deferred resource
This project is an open-source software development kit and framework for implementing the Matter smart home standard. It provides a universal IPv6-based application layer and a cluster-based data model to ensure interoperability between diverse smart home devices and controllers. The system is distinguished by its multi-transport network abstraction, which maps Bluetooth LE, Thread, and Wi-Fi implementations to a common layer. It includes specialized tooling for secure device commissioning via QR codes and NFC, as well as a comprehensive over-the-air firmware update system for distributing s
OptiScaler is a DirectX graphics middleware and temporal upscaler wrapper designed to intercept graphics API calls. It functions as a system for replacing native temporal anti-aliasing and upscaling technologies with alternative scaling methods and frame generation interop to improve resolution and performance. The project distinguishes itself by enabling modern high-resolution upscaling and frame generation in games built for legacy rendering standards. It includes a framework for importing low-latency graphics plugins and utilizes an interception layer to replace existing frame interpolatio
Iris is a graphics modifier and OpenGL shader engine for Minecraft. It functions as a tool for improving visual fidelity and lighting effects by loading and rendering shader packs through custom pipelines. The project serves as a compatibility layer for modded environments, ensuring that high-fidelity shaders run stably alongside other game modifications without causing software conflicts or crashes. It also acts as a render performance optimizer to maximize GPU utilization and maintain stable frame rates while processing complex visual effects. The system utilizes real-time render intercept
ReShade is a post-processing shader injector that hooks into DirectX, OpenGL, and Vulkan rendering pipelines to apply custom shaders in real time. It operates by injecting a DLL into the target process, intercepting graphics API calls, and inserting a configurable pipeline of user-selected shader effects that read color and depth buffers to alter the final output. The project distinguishes itself through depth buffer auto-detection, which automatically identifies the depth-stencil attachment in the rendering pipeline, enabling per-pixel depth effects such as ambient occlusion and depth-of-fie
cnc-ddraw is a DirectDraw wrapper and emulation layer designed to ensure legacy 2D graphics software runs on modern operating systems. It functions as a compatibility layer that intercepts legacy API calls and redirects them to a modern rendering backend to prevent crashes and black screens. The project provides a 2D graphics upscaler that uses shaders to increase the resolution of low-fidelity visuals for high-definition screens. It also includes a frame rate controller to synchronize frame timing and limit output speed, which prevents stuttering and performance drops. The tool manages disp
DWMBlurGlass is a Windows UI theme extension and title bar customizer designed to apply blur effects and translucent styles to system windows on Windows 10 and 11. It functions as a visual modifier for the operating system, allowing for the adjustment of window decorations with custom blur radii and blend colors. The tool features dynamic theme automation that synchronizes title bar color schemes with active light or dark mode settings. It also includes capabilities for legacy style restoration, which allows users to reset title bar button heights and glow effects to emulate the appearance of
MangoHud is a Linux hardware monitor and performance overlay that displays real-time metrics and frame rates. It functions as a graphics API hook, intercepting Vulkan and OpenGL pipelines to render performance data directly onto the graphics buffer. The project serves as both a real-time monitor for CPU and GPU utilization, temperatures, and power draw, and a frametime data logger that records execution speed to disk for later benchmarking and analysis. Users can modify the overlay display, visual styles, and active metrics through configuration files, environment variables, or predefined pe
protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol Buffers binary format. It functions as a dynamic parser that can load and process schemas at runtime, a JSON transcoder for converting messages to human-readable formats, and a framework for building transport-agnostic remote procedure call clients. The project distinguishes itself by offering both dynamic message handling and a static code generator that produces TypeScript declarations and JavaScript modules to reduce runtime overhead. It also provides a reflection API for definin
DiligentEngine is a cross-platform graphics abstraction layer and physically-based rendering engine. It provides a unified interface for executing 3D graphics commands across multiple low-level rendering backends from a single codebase, including a dedicated system for importing 3D assets via the GLTF 2.0 format. The engine features an HLSL shader cross-compiler that allows a single set of shaders to run across different graphics APIs and operating systems. It supports advanced rendering capabilities such as ray-tracing, mesh shaders, variable rate shading, and bindless resources. The framew
Sokol is a C hardware abstraction layer and cross-platform graphics library designed for managing windowing, input, and audio across different operating systems. It functions as a GPU resource manager and multimedia application framework, providing a unified API for rendering 2D and 3D graphics across WebGL, Metal, Direct3D, and OpenGL. The project is distinguished by its single-header implementation, which simplifies integration and portability. It utilizes a stateless render pass definition and a one-update-per-frame model to synchronize CPU data to GPU memory and manage resource lifecycles
Spritejs is a graphics library and cross-platform 2D graphics engine designed for rendering geometric shapes and sprites across web, desktop, and mobile environments. It functions as a canvas-based sprite framework that manages elements using a document object model for positioning and styling. The project provides a web worker rendering engine that distributes graphic layers to offscreen canvases, preventing main thread blocking. It also includes a server-side graphics generator for producing visual elements and images in non-browser environments. The toolkit covers a broad range of graphic
MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary alternative to JSON, converting structured data into a space-efficient binary representation for network transmission and storage. The system provides a standardized format for swapping complex data types across different programming languages and architectures. It allows for the definition of custom data type encoding by pairing application-specific information with specialized serialization markers. The library handles the encoding and decoding of diverse data types, includ
Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact binary format and restore them from bytes. It provides a system for creating deep or shallow copies of complex object graphs without requiring binary conversion. The project utilizes variable-length integer encoding and integer-ID class registration to reduce the size of serialized data. It handles complex object graphs through circular reference tracking to prevent data duplication and infinite loops. To maintain long-term data viability, it includes schema evolution managemen
Cosmopolitan is a cross-platform C runtime library and build framework that enables the creation of single-file, self-contained executables. By providing a unified set of system headers and a specialized compiler toolchain, it allows developers to write low-level systems code that executes natively across multiple operating systems without requiring recompilation for each target environment. The project utilizes a polyglot binary format and a system call shimming layer to intercept and translate kernel requests, effectively bypassing standard library dependencies. This approach consolidates a
Filament is a real-time physically based rendering engine designed for high-fidelity 3D graphics. It functions as a cross-platform graphics library that provides a unified interface for rendering complex models and materials across desktop, mobile, and web environments. The engine distinguishes itself through a data-oriented architecture that optimizes memory usage and processing speed, alongside a shader-variant system that generates specialized code for specific material and lighting configurations. By abstracting diverse hardware graphics backends, it ensures consistent visual performance
This project serves as a comprehensive educational framework and reference library for mastering high-performance graphics programming and parallel compute resource management. It provides a collection of practical implementations designed to demonstrate the explicit control required by the Vulkan API, covering the fundamental mechanics of modern graphics pipelines and cross-platform hardware interaction. The repository distinguishes itself by focusing on the low-level architectural requirements of modern GPU development, including manual memory allocation, multi-threaded command recording, a
Clay is a header-only layout engine designed for C and C++ applications that computes element positions and dimensions using a declarative box model. By operating as an immediate-mode framework, it calculates interface geometry dynamically on every frame, allowing for the creation of responsive and fluid user interfaces without maintaining persistent state. The library functions as a platform-agnostic tool that decouples layout logic from specific graphics backends. It provides a flexible coordinate system that supports layered elements, such as modals and tooltips, alongside standard documen
Ebiten is a cross-platform 2D game engine and framework for the Go programming language. It provides a hardware-accelerated 2D renderer and a multi-input handling library to develop two-dimensional games with a single codebase. The engine is designed for broad deployment, allowing applications to be compiled and run across desktops, mobile devices, web browsers, and gaming consoles. It distinguishes itself by integrating custom shader programming for specialized visual effects and providing haptic feedback control for mobile devices and gamepads. The framework covers core game development ca
Bettercap is an extensible framework for network security testing that provides a unified interface for performing man-in-the-middle attacks, network reconnaissance, and traffic manipulation across WiFi, Bluetooth, and wired networks. It operates through a modular attack module system that loads and executes interchangeable offensive or diagnostic modules, supported by event-driven session management and multi-protocol network spoofing capabilities. The framework distinguishes itself by covering a broad range of network domains, including Bluetooth Low Energy scanning and enumeration, CAN-Bus
CapnProto is a zero-copy serialization framework and remote procedure call system. It serves as a C++ communication library providing a schema-based data interchange format that eliminates the need to encode or decode data before reading it from memory. The system enables high-performance data serialization and low-latency network communication. It supports cross-language data exchange by using a defined schema to ensure consistent binary representation across different platforms. The framework provides tools for implementing remote procedure calls, allowing functions to be invoked on a remo
Aleth is an Ethereum C++ client and full-node implementation. It provides a virtual machine executor for running and debugging bytecode, a blockchain state debugger, and a serialization library for encoding and decoding data using the Recursive Length Prefix format. The project includes a dedicated mining tool for producing blocks and benchmarking hashing hardware performance. It further distinguishes itself with a state debugger that analyzes pre- and post-execution state changes and generates step-by-step execution traces for the virtual machine. The implementation covers node operations i
Shipwright is a native execution engine designed to run decompiled legacy game code on modern hardware. It functions as a game engine execution layer that provides a high-performance environment for legacy logic while ensuring compatibility with current systems. The project features a pluggable graphics API wrapper that allows for switching between different rendering backends to ensure visual stability across various operating systems. It also includes a custom asset loader that imports external archive files to modify game content and add custom assets. Additional capabilities include an i
WeiXinMPSDK is a .NET software development kit designed to integrate WeChat services, official accounts, and mini programs into applications. It provides a multi-platform bot framework and a programmatic interface to interact with official, mini, and corporate accounts across the WeChat ecosystem. The project features interface-based platform abstraction and logic unification, allowing a single codebase to target multiple target platforms. It includes a messaging middleware for routing incoming requests and a distributed caching layer using providers like Redis or Memcached to synchronize ses
Forge is a JavaScript cryptography library providing a comprehensive set of tools for symmetric and asymmetric encryption, hashing, and digital signatures. It includes a full Transport Layer Security implementation for establishing secure network connections and managing encrypted traffic. The project implements a wide array of public key infrastructure tools, including X.509 certificate management, the generation of certificate signing requests, and the validation of certificate chains. It provides a PKCS cryptographic toolkit for handling secure archives and signed messages, alongside suppo
jMonkeyEngine is a Java-based 3D game engine and cross-platform graphics framework. It provides the core tools necessary for developing three-dimensional games and interactive simulations, focusing on real-time rendering and the management of spatial environments. The engine includes a dedicated 3D physics simulation toolkit for handling rigid body dynamics and collision detection. It also features a game asset pipeline for importing and managing 3D models, textures, and audio files during runtime. The framework covers broad capability areas including 3D scene rendering, physics-based simula
s2client-proto provides a set of structured data definitions and language-neutral communication protocols used to exchange information between an external client and the StarCraft II engine. It utilizes protocol buffer definitions to establish a binary serialization schema for these data exchanges. The project defines the underlying communication layer necessary for game engine automation, game state analysis, and the development of software agents for competitive gaming. The framework covers interface definition languages to ensure compatibility across programming languages and employs sche
Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro
MagicOnion is a .NET RPC framework used to build type-safe remote procedure call services using shared interfaces for communication between servers and clients. It functions as a binary serialization framework and a distributed service orchestrator, providing a network layer for low-latency streaming and real-time data exchange. The project distinguishes itself through an AOT-compatible network client that uses source generators to support ahead-of-time compilation in restricted runtime environments. It enables bidirectional communication and real-time data streaming, allowing servers and mul