All Projects → nefarius → Indicium-Supra

nefarius / Indicium-Supra

Licence: MIT license
DirectX API-hooking framework

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Indicium-Supra

overwolf-modern-react-boilerplate
OMRB is a free and open source opinionated boilerplate based on React that helps developers create fast, modular and modern overwolf app.
Stars: ✭ 21 (-92.81%)
Mutual labels:  games, overlay
Ultralight
Next-generation HTML renderer for apps and games
Stars: ✭ 3,585 (+1127.74%)
Mutual labels:  games, directx-11
Crossover
🎯 A Crosshair Overlay for any screen.
Stars: ✭ 187 (-35.96%)
Mutual labels:  games, overlay
Mobile Games
🎲 这里总结了我的团队做过的手机小游戏,大部分都是微信相关的,用于营销和推广
Stars: ✭ 162 (-44.52%)
Mutual labels:  games
Payday 2 Blt
Payday 2 Better Lua injecTor
Stars: ✭ 176 (-39.73%)
Mutual labels:  games
Iw4x Client
🎮 Official IW4x source code
Stars: ✭ 218 (-25.34%)
Mutual labels:  games
Openmu
This project aims to create an easy to use, extendable and customizable server for a MMORPG called "MU Online".
Stars: ✭ 243 (-16.78%)
Mutual labels:  games
Game Packages
Games for Termux
Stars: ✭ 155 (-46.92%)
Mutual labels:  games
Classicuo
ClassicUO - an open source implementation of the Ultima Online Classic Client.
Stars: ✭ 239 (-18.15%)
Mutual labels:  games
Getdlcinfofromsteamdb
Get Data from Steam / SteamDB / EpicDB (ex Get DLC Info from SteamDB) it's a userscript able to extract all the information of the DLCs Games from Steam / SteamDB / EpicDB and are exported in various formats. It also has small tools :)
Stars: ✭ 210 (-28.08%)
Mutual labels:  games
Pixieditor
PixiEditor is a lightweight pixel art editor made with .NET 5
Stars: ✭ 210 (-28.08%)
Mutual labels:  games
Elm Street 404
A fun WebGL game built with Elm
Stars: ✭ 178 (-39.04%)
Mutual labels:  games
Luxtorpeda
Steam Play compatibility tool to run games using native Linux engines
Stars: ✭ 232 (-20.55%)
Mutual labels:  games
Nes
A Javascript NES Emulator
Stars: ✭ 168 (-42.47%)
Mutual labels:  games
Docker Dontstarvetogether
Dockerfile for building a Don't Starve Together dedicated server image.
Stars: ✭ 240 (-17.81%)
Mutual labels:  games
Atari st sources
A large repository of Atari ST (and family) source code
Stars: ✭ 157 (-46.23%)
Mutual labels:  games
Unreal Finder Tool
Useful tool to help you fetch and dump Unreal Engine 4 Games information.
Stars: ✭ 237 (-18.84%)
Mutual labels:  games
Civitas
Civitas is an empire-building game written in Javascript with the help of the jQuery library.
Stars: ✭ 207 (-29.11%)
Mutual labels:  games
Emupedia.github.io
The purpose of Emupedia is to serve as a nonprofit meta-resource, hub and community for those interested mainly in video game preservation which aims to digitally collect, archive and preserve games and software to make them available online accessible by a user-friendly UI that simulates several retro operating systems for educational purposes.
Stars: ✭ 206 (-29.45%)
Mutual labels:  games
Dome
A lightweight game development environment where games can be written in Wren
Stars: ✭ 251 (-14.04%)
Mutual labels:  games

Indicium-Supra

API-Hooking and rendering framework for DirectX-based games.

Build status Discord Website GitHub followers Twitter Follow

About

Indicium-Supra consists of a self-contained library (DLL) which exposes a minimalistic API for rendering custom content in foreign processes eliminating the need for in-depth knowledge about Direct3D and API-hooking. The most common use-case might be drawing custom overlays on top of your games. The framework takes care about pesky tasks like detecting the DirectX version the game was built for and supports runtime-hooking (no special launcher application required).

Supported DirectX versions

  • DirectX 9.0
  • DirectX 9.0 Extended (Vista+)
  • DirectX 10
  • DirectX 11
  • DirectX 12 (implemented but untested)

How to build

Prerequisites

Samples are currently broken on this branch due to major API redesign!

  • Visual Studio 2019 (Community Edition is just fine)
  • Windows SDK
  • Follow the Vcpkg Quick Start and install the following packages:
    • .\vcpkg install spdlog:x86-windows-static spdlog:x64-windows-static detours:x86-windows-static detours:x64-windows-static
    • For the ImGui sample to build you'll also need:
      • .\vcpkg install imgui:x86-windows-static imgui:x64-windows-static

Building should be pretty straight-forward since the dependencies get installed via Vcpkg. You have multiple choices for getting things done.

Visual Studio

Just open the solution file Indicium-Supra.sln and start the build from there.

The lazy way

Now if you're really in a hurry you can grab pre-built binaries from the buildbot. Boom, done.

How to use

Inject the resulting host library (e.g. Indicium-ImGui.dll) into the target process first using a DLL injection utility of your choice (you can ofc. use mine as well). The following example loads the imgui sample:

.\Injector -i -n hl2.exe Indicium-ImGui.dll

Just make sure your host library doesn't require any external dependencies not present in the process context or you'll get a LoadLibrary failed error.

Diagnostics

The core library logs its progress and potential errors to the file %TEMP%\Indicium-Supra.log.

Demos

The following screenshots show imgui getting rendered in foreign processes using different versions of DirectX.

DirectX 9

Half-Life 2, 32-Bit

Half-Life 2

DirectX 9 Ex

Castlevania: Lords of Shadow, 32-Bit

Castlevania: Lords of Shadow

DirectX 10

Bioshock 2, 32-Bit

Bioshock2_2017-08-10_14-48-38.png

DirectX 11

Ryse: Son of Rome, 64-Bit

Ryse_2017-08-09_21-48-57.png

Road Redemption, 64-Bit

RoadRedemptionEarlyAccess_2017-08-14_14-06-21.png

Sources

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].