OCAT - The Open Capture and Analytics Tool (OCAT) provides an FPS overlay and performance measurement for D3D11, D3D12, and Vulkan

  •        29

The Open Capture and Analytics Tool (OCAT) provides an FPS overlay and performance measurement for D3D11, D3D12, and Vulkan

https://github.com/GPUOpen-Tools/OCAT

Tags
Implementation
License
Platform

   




Related Projects

renderdoc - RenderDoc is a stand-alone graphics debugging tool.

  •    C++

RenderDoc is a frame-capture based graphics debugger, currently available for Vulkan, D3D11, D3D12, OpenGL, and OpenGL ES development on Windows 7 - 10, Linux, and Android. It is completely open-source under the MIT license. If you have any questions, suggestions or problems or you can create an issue here on github, email me directly or come into IRC to discuss it.

DiligentEngine - Master repository for Diligent Engine project

  •    C++

Diligent Engine is a lightweight cross-platform abstraction layer between the application and the platform-specific graphics API designed to take advantages of next-generation APIs such as Direct3D12 and Vulkan, while providing support for older platforms via Direct3D11, OpenGL and OpenGLES. Diligent Engine exposes common front-end for all supported platforms and provides interoperability with underlying native API. Shader source code converter allows HLSL shaders to be used on all supported platforms and rendering backends. The engine is intended to be used as a graphics subsystem in a game engine or any other 3D application, and supports integration with Unity. Diligent Engine is distributed under Apache 2.0 license and is free to use. Alternatively, you can get master repository fisrt, and then individually clone all submodules into the engine's root folder.

ShaderConductor - ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages

  •    C++

ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages. Note that this project is still in an early stage, and it is under active development.

bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library

  •    C++

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library. http://airmech.com/ AirMech is a free-to-play futuristic action real-time strategy video game developed and published by Carbon Games.


tinyrenderers

  •    C++

[2017/11/12] - Added simple tessellation shader sample. Fixed misc issues with pipeline setup for tessellation. [2017/11/10] - Added ChessSet demo. Added geometry shader sample. Fixes to depth stencil handling. [2017/11/10] - Added TexturedCube sample. Updated depth attachment handling on swapchain render pass. Switched out lc_image for stb_image. Added DXC shader build script. [2017/05/27] - Fixed some annoying buffer state transitions. Added build script for shaders. Updated shader naming convention to be more exact. Added OpaqueArgs and PassingArrays for investigation. [2017/05/20] - Updated Append/Consume sample for Vulkan. Requires latest glslang. ConstantBuffer also works for both platforms. [2017/05/13] - Added Linux support. Moved to project files to cmake. Moved glsl shaders to glsl sub directory - forcing HLSL for now. [2017/04/30] - Clarified shader usage in some sample programs to point out which source they're coming from. [2017/04/27] - Added ConstantBuffer sample (D3D12 only for now). Updated Vulkan samples to use negative viewport height. [2017/04/25] - Updated SimpleCompute and StructuredBuffer to work on Vulkan. [2017/04/24] - Added compute samples (D3D12 only for now). One for simple compute and another for structured buffers.

dxvk - Vulkan-based D3D11 and D3D10 implementation for Linux / Wine

  •    C++

A Vulkan-based translation layer for Direct3D 10/11 which allows running 3D applications on Linux using Wine. For the current status of the project, please refer to the project wiki.

KlayGE - KlayGE is a cross-platform open source game engine with plugin-based architecture.

  •    C++

KlayGE is a cross-platform open source game engine with plugin-based architecture. It's started since 2003. The explicit goal of KlayGE is: to arm your engine with cutting-edge technology. It provides a framework to make game development, testing, porting as simple as possible. Before compiling KlayGE, Python 2.7+ and CMake 3.4+ must be installed first. Then you can run build_all.py to build KlayGE, its Samples, Tools, etc. For details, please see http://www.klayge.org/wiki/index.php/Installation.

AMDVLK - AMD Open Source Driver For Vulkan

  •    Python

The AMD Open Source Driver for Vulkan® is an open-source Vulkan driver for Radeon™ graphics adapters on Linux®. It is built on top of AMD's Platform Abstraction Library (PAL), a shared component that is designed to encapsulate certain hardware and OS-specific programming details for many of AMD's 3D and compute drivers. Leveraging PAL can help provide a consistent experience across platforms, including support for recently released GPUs and compatibility with AMD developer tools. Shaders that compose a particular VkPipeline object are compiled as a single entity using the LLVM-Based Pipeline Compiler (LLPC) library. LLPC builds on LLVM's existing shader compilation infrastructure for AMD GPUs to generate code objects compatible with PAL's pipeline ABI. Notably, AMD's closed-source Vulkan driver currently uses a different pipeline compiler, which is the major difference between AMD's open-source and closed-source Vulkan drivers.

Vulkan-Docs - The Vulkan API Specification and related tools

  •    Python

This repository contains formal documentation of the Vulkan API. This includes the Specification of the Vulkan API, including extensions; the reference (“man”) pages; the XML API Registry; header files; and related tools and scripts. The authoritative public repository is located at https://github.com/KhronosGroup/Vulkan-Docs/ . Issues, proposed fixes for issues, and other suggested changes should be created using Github.

awesome-vulkan - Awesome Vulkan ecosystem

  •    

A curated list of awesome Vulkan libraries, debuggers and resources. Inspired by awesome-opengl and other awesome-... stuff. This work is licensed under a Creative Commons Attribution 4.0 International License.

VulkanTools - Tools to aid in Vulkan development including useful layers, trace and replay, and tests

  •    C++

This project provides vktrace capture/replay tool, the Layer Factory, and other layer tools and driver tests. Branches within this repository include the Vulkan loader, validation layers, header files, and associated tests. These pieces are mirrored from this Github repository: https://github.com/KhronosGroup/Vulkan-ValidationLayers These pieces are required to enable this repository to be built standalone; that is without having to clone the Vulkan-ValidationLayers repository.

vulkan - Vulkan API bindings for Go programming language

  •    Go

Package vulkan provides Go bindings for Vulkan — a low-overhead, cross-platform 3D graphics and compute API. Updated October 13, 2018 — Vulkan 1.1.88. Vulkan API is the result of 18 months in an intense collaboration between leading hardware, game engine and platform vendors, built on significant contributions from multiple Khronos members. Vulkan is designed for portability across multiple platforms with desktop and mobile GPU architectures.

android-vulkan-tutorials - A set of samples to illustrate Vulkan API on Android

  •    C++

Copyright 2016 Google, Inc. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

vulkan_minimal_compute - Minimal Example of Using Vulkan for Compute Operations. Only ~400LOC.

  •    C++

This is a simple demo that demonstrates how to use Vulkan for compute operations only. In other words, this demo does nothing related to graphics, and only uses Vulkan to execute some computation on the GPU. For this demo, Vulkan is used to render the Mandelbrot set on the GPU. The demo is very simple, and is only ~400LOC. The code is heavily commented, so it should be useful for people interested in learning Vulkan. The application launches a compute shader that renders the mandelbrot set, by rendering it into a storage buffer. The storage buffer is then read from the GPU, and saved as .png. Check the source code comments for further info.

Vulkan - Examples and demos for the new Vulkan API

  •    C++

A comprehensive collection of open source C++ examples for Vulkan®, the new graphics and compute API from Khronos. from the root of the repository after cloning or see this for manual download.

node-vulkan - Vulkan for JavaScript

  •    C++

This is a Vulkan API for node.js. The bindings are machine generated and provide an API to interact from JavaScript with the low-level interface of Vulkan. The API of this project strives to be as close as possible to Vulkan's original API.

Vulkan-Forward-Plus-Renderer - Forward+ renderer in Vulkan using Compute Shader

  •    C++

In this project, we created a Forward Plus (tiled forward) renderer in Vulkan using compute shader to deal with light culling. Our implementation is ~1000% faster than regular forward renderer (tested in Vulkan) under the condition of 200 lights.

gapid - Graphics API Debugger

  •    Go

GAPID is a collection of tools that allows you to inspect, tweak and replay calls from an application to a graphics driver.GAPID can trace any Android debuggable application, or if you have root access to the device any application can be traced. GAPID can also trace any Desktop Vulkan application.

Vulkan-Hpp - Open-Source Vulkan C++ API

  •    C++

The goal of the Vulkan-Hpp is to provide header only C++ bindings for the Vulkan C API to improve the developers Vulkan experience without introducing CPU runtime cost. It adds features like type safety for enums and bitfields, STL container support, exceptions and simple enumerations. Vulkan-Hpp is part of the LunarG Vulkan SDK since version 1.0.24. Just #include <vulkan/vulkan.hpp> and you're ready to use the C++ bindings. If you're using a Vulkan version not yet supported by the Vulkan SDK you can find the latest version of the header here.