[package]
edition = "2021"
rust-version = "1.85"
name = "hudhook"
version = "0.9.0"
authors = ["Andrea Venuta <venutawebdesign@gmail.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A graphics API hook with dear imgui render loop. Supports DirectX 9, 11, 12, and OpenGL 3."
homepage = "https://github.com/veeenu/hudhook"
documentation = "https://veeenu.github.io/hudhook"
readme = "README.md"
license-file = "LICENSE"
repository = "https://github.com/veeenu/hudhook"
[package.metadata.docs.rs]
default-target = "x86_64-pc-windows-gnu"
targets = [
"x86_64-pc-windows-msvc",
"i686-pc-windows-msvc",
"x86_64-pc-windows-gnu",
"i686-pc-windows-gnu",
]
[features]
default = [
"dx9",
"dx11",
"dx12",
"opengl3",
"inject",
]
dx11 = []
dx12 = []
dx9 = []
imgui-docking = ["imgui/docking"]
imgui-freetype = ["imgui/freetype"]
imgui-tables-api = ["imgui/tables-api"]
inject = []
opengl3 = ["dep:gl_generator"]
[lib]
name = "hudhook"
path = "src/lib.rs"
[[example]]
name = "demo_hook_dx11"
crate-type = ["cdylib"]
path = "examples/demo_hook_dx11.rs"
[[example]]
name = "demo_hook_dx12"
crate-type = ["cdylib"]
path = "examples/demo_hook_dx12.rs"
[[example]]
name = "demo_hook_dx9"
crate-type = ["cdylib"]
path = "examples/demo_hook_dx9.rs"
[[example]]
name = "demo_hook_opengl3"
crate-type = ["cdylib"]
path = "examples/demo_hook_opengl3.rs"
[[example]]
name = "hook_with_image"
crate-type = ["cdylib"]
path = "examples/hook_with_image.rs"
[[example]]
name = "injector"
crate-type = ["bin"]
path = "examples/injector.rs"
[[example]]
name = "simple_hook"
crate-type = ["cdylib"]
path = "examples/simple_hook.rs"
[[test]]
name = "dx11"
path = "tests/dx11.rs"
[[test]]
name = "dx12"
path = "tests/dx12.rs"
[[test]]
name = "dx9"
path = "tests/dx9.rs"
[[test]]
name = "hook"
path = "tests/hook.rs"
[[test]]
name = "inject"
path = "tests/inject.rs"
[[test]]
name = "opengl3"
path = "tests/opengl3.rs"
[dependencies.bitflags]
version = "2.5.0"
[dependencies.imgui]
version = "0.12"
[dependencies.once_cell]
version = "1.18.0"
default-features = false
[dependencies.parking_lot]
version = "0.12"
[dependencies.tracing]
version = "0.1"
features = ["log"]
default-features = false
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
default-features = false
[dependencies.windows]
version = "0.62"
features = [
"Win32_Devices_HumanInterfaceDevice",
"Win32_Foundation",
"Win32_Graphics_Direct3D11",
"Win32_Graphics_Direct3D12",
"Win32_Graphics_Direct3D9",
"Win32_Graphics_Direct3D_Fxc",
"Win32_Graphics_Dxgi",
"Win32_Graphics_Dxgi_Common",
"Win32_Graphics_Gdi",
"Win32_Graphics_OpenGL",
"Win32_Security",
"Win32_System_Com",
"Win32_System_Console",
"Win32_System_Diagnostics_Debug",
"Win32_System_Diagnostics_ToolHelp",
"Win32_System_LibraryLoader",
"Win32_System_Memory",
"Win32_System_SystemInformation",
"Win32_System_SystemServices",
"Win32_System_Threading",
"Win32_UI_Input_KeyboardAndMouse",
"Win32_UI_WindowsAndMessaging",
]
[dependencies.windows-numerics]
version = "0.3"
[dev-dependencies.dotenv]
version = "0.15.0"
[dev-dependencies.image]
version = "0.24.8"
[dev-dependencies.tracing-subscriber]
version = "0.3"
[build-dependencies.cc]
version = "1.0.72"
[build-dependencies.gl_generator]
version = "0.14.0"
optional = true
[profile.test]
opt-level = 3
lto = "thin"
overflow-checks = false