Glorious Model O mouse with lighting effect above dark background

Reverse Engineering USB RGB Devices and Building Your Own RGB Software by Example

If you are into gaming or similar interests, chances are high that one of your peripherals has RGB support. In today's world, almost every gaming mouse or keyboard shines some light into your dark League of Legends games. Companies normally provide a Tool that you can download and use to change your peripherals RGB lighting. However, there are reasons why you might not like installing those programs. Many of them are not available on Linux and if they are, features can be limited. Even on Windows, many RGB software implementations are made very poorly, with few customizations available. What if I told you that you can build your own software for your peripheral? In this post, we will take a deeper dive into USB protocols, the Glorious Model O's lighting protocol and how you can control it using Rust.

Speedometer going crazy

Creating an FPS Limiter in Rust by Hooking DirectX

When you are playing games, most of the time you want to experience the full performance that is possible with your setup. However, there might be reasons why you would want to limit the frames per second that a game generates. For example, you can lower the power draw or heat output of your computer by limiting the amount of computation. In this post, we will explore how to limit FPS in DirectX 11 games on Windows using Rust.

In the first step, we will explore how we can intercept DirectX 11 games in order to introduce our frame rate limit. After that, we will learn how to inject our code into a game. Lastly, we will implement a way to communicate with the game to set dynamic FPS limits.