DirectX 9 renderer in an injected overlay not rendering correctly
Posted: Wed Nov 18, 2015 13:40
I'm currently writing an overlay for games (similar to Steam, Overwolf, etc.), and am trying to port my current code-base to use CEGUI (in the past I had used GWEN and AntTweakBar, but both have pretty fundamental design problems which limit their usefulness to my application). However, I've run into a problem where under the DirectX 9 renderer (the only one I've tried so far) I'm getting incorrect rendering on some games. I looked around in the CEGUI code to obvious things missing from beginRendering() and couldn't spot anything, but that being said I'm not an expert by any means.
Here's a couple of screenshots showcasing the problem I'm having (one working, one broken):
http://imgur.com/a/ebMFz
I'm using the code from here in order to get that:
http://cegui.org.uk/wiki/CEGUI_In_Pract ... me_Console
Relevant part of CEGUI log:
The other libraries I have render just fine in the game that CEGUI is not working correctly on (CSGO).
Does CEGUI expect the device to be in any particular state before rendering is attempted? Right now I just have a state block that captures before rendering and reapplies afterwards so I don't interfere with the game, I don't do any device state modifications other than what CEGUI itself is doing.
Here's a couple of screenshots showcasing the problem I'm having (one working, one broken):
http://imgur.com/a/ebMFz
I'm using the code from here in order to get that:
http://cegui.org.uk/wiki/CEGUI_In_Pract ... me_Console
Relevant part of CEGUI log:
19/11/2015 00:35:46 (Std) ---- Version: 0.8.4 (Build: Nov 18 2015 Debug Microsoft Windows MSVC++ Great Scott! 32 bit) ----
19/11/2015 00:35:46 (Std) ---- Renderer module is: CEGUI::Direct3D9Renderer - Official Direct3D 9 based 2nd generation renderer module. ----
19/11/2015 00:35:46 (Std) ---- XML Parser module is: CEGUI::ExpatParser - Official expat based parser module for CEGUI ----
19/11/2015 00:35:46 (Std) ---- Image Codec module is: SILLYImageCodec - Official SILLY based image codec ----
19/11/2015 00:35:46 (Std) ---- Scripting module is: None ----
The other libraries I have render just fine in the game that CEGUI is not working correctly on (CSGO).
Does CEGUI expect the device to be in any particular state before rendering is attempted? Right now I just have a state block that captures before rendering and reapplies afterwards so I don't interfere with the game, I don't do any device state modifications other than what CEGUI itself is doing.