Skip to main content
GameDev.net gamedev.net
🔒 Locked

D3DDebugConf

Started by Pipo DeClown Feb 9, 2006 at 5:35 PM 19 replies 5.1k views
Original Post
Pipo DeClown
Pipo DeClown
If you haven't seen the handy tool made by our circlesoft aka Dustin Frankin, D3DTaskbar, well get your ass to this thread. I've basically developed a dialog-application based on the above tool, that only has a taskbar presentation. I personally don't have a wide screenresolution so in order to save space and for exercising and learning purpose I've made in C#.NET, D3DDebugConf. I've said I'd cease development after version 1.0, but my mind hasn't been able to rest so I finished this small project, just to settle my mind! I'm sorry I lied! [wink] .NET 2.0 -still- required Final version: 1.5 Features -Final- + Turn Direct3D Debugging on/off. + All Debugging settings can be changed with a few mouseclicks. + Hide in traybar. + Cool graphics (Yay! Icons)! + Customizable paths. + D3DDebugView supported. Screenshot Download D3DDebugConf 1.0 (~8KB) D3DDebugConf 1.1 (~12KB) D3DDebugConf 1.2 (~13KB) D3DDebugConf 1.3 (~28KB) D3DDebugConf 1.5 (~16KB) <-------------- NEW -------- NEW --------- NEW! Credits All credits belong to circlesoft since he is the one who started the idea of being lazy when debugging Direct3D, hehe. Go Dustin!! [wink] Another person I'd like to thank is Rob Loach. He helped me indirectlyby putting his IniFile v0.2-class on his website. Enjoy! Please contact me if you find bugs or if you're interested in the source! (C#) [Edited by - Pipo DeClown on February 13, 2006 3:39:35 PM]
Trillian
Trillian
Sweet!

It'd be cool to have a command line option to start it minimized, that way I can make it launch with windows. Maybe in version 1.2 ? ;)

...And maybe transparent icons?

[Edited by - Trillian on February 9, 2006 6:57:10 PM]
circlesoft
circlesoft
Very nice [grin]

Looks like I have a new taskbar utility to use muahaha

I'd recommend putting the debug options for the other components of DX, but I'm not sure if anyone uses them anyways, so what's the point. It may be useful to put the AllocID and Break On AllocID in though. I tried that, but couldn't figure out how to put a text box in a context menu.
Pipo DeClown
Pipo DeClown
Ah yes. With .NET it will be incredibly easy to just add a menu somewhere, I'm lovin' it! [wink]

As for the other components, I think it would mess up my code (since it doesn't really have a structure :p) and well, the icons would need to display even more info.. That could turn out really messy.

Thanks for the input! I'll be updating ASAP.

[Edited by - Pipo DeClown on February 10, 2006 4:56:45 AM]
jollyjeffers
jollyjeffers
Looking good [grin]

Now, your next challenge - should you choose to accept it - is to hook the actual debug output. A bit like DebugView from SysInternals [smile]

Keep up the good work!
Jack
<hr align="left" width="25%" />
Jack Hoxley <small>[</small><small> Forum FAQ | Revised FAQ |
Pipo DeClown
Pipo DeClown
[edit] I was really messed up. I was actually convinced that I released 1.3 instead of 1.2, sorry for the confusion.

[Edited by - Pipo DeClown on February 12, 2006 4:46:31 AM]
Trillian
Trillian
Wow, your app is really getting great!
Keep it up, I'm waiting for your 1.4!
idloco
idloco
it doesn't works for me :(
I got Windows XP x64, so that must be it.

the message says:
value does not exist on the registry! at D3DDebugConf1.IsDebug() at D3DDebugConf1.Form1.OnLoad( Object sender, EventArgs e)


the LoadDebugRuntime is not where it suposes to be.
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Direct3D/LoadDebugRuntime

instead it is in
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Direct3D\LoadDebugRuntime


if you want to port it i can serve as a beta tester or help you make the port.
------------------------------------ IDLoco Game Studios
Pipo DeClown
Pipo DeClown
Well I could try loading the registry paths from the preferences.ini, so one can change the registerkeys. I don't have any 64bit experience, so I think porting will be added to my todo-list with a lower priority. Always do the simple things first! [wink]

By the by, does anyone have experience capturing debug output in C#.NET? I'm really exploring the whole framework without any clue.
circlesoft
circlesoft
Quote:
Original post by Pipo DeClown
By the by, does anyone have experience capturing debug output in C#.NET? I'm really exploring the whole framework without any clue.

Yep, I am working on it. It will probably invole calling a native C++ DLL from C# code (using pinvoke).

If you put your code up, and can mode your version, since it is better.
Pipo DeClown
Pipo DeClown
Hmm this is getting very messy since I'm working on improvements also. Could you not provide a class so I can put it right in? If you really don't want to, then I will send you the projectsource (don't die when you see it though!).
circlesoft
circlesoft
Ok good news - I have initial output working! You can do it two ways:

(1) Launching a separate process from the start
(2) Attaching to an already running process.

(1) is very slow, b/c I haven't figured out how to put the spawned process into its own thread yet. At least I think that's what it is.

I won't go into the details of it now, but it will be a separate application from the others that we have made. With all of these applications piling up pretty fast, I think we should make a single 'D3DDevSuite' that includes all of the utilities at once. Then we don't have them sprawled out all over the place.
Pipo DeClown
Pipo DeClown
Well, while packaging all utilities into 1 toolset definitely makes it easier for people to download, but putting all utilities into a 1 program makes it even more convenient. We'll have to work out something inbetween I guess..


Currently I have made the paths customizable in the preferences.ini file, upgraded the start-in-tray to render smoother, added the new features to the traymenu.
I've also started to set up the GUI for debugoutput, note that this is just the GUI, it doesn't work.. yet.

Grab the newest build here.

[Edited by - Pipo DeClown on February 12, 2006 5:03:57 AM]
circlesoft
circlesoft
Quote:
Original post by Pipo DeClown
Currently I have made the paths customizable in the preferences.ini file, upgraded the start-in-tray to render smoother, added the new features to the traymenu.
I've also started to set up the GUI for debugoutput, note that this is just the GUI, it doesn't work.. yet.

The D3DDebugView project is pretty big, and it will stand as it's own executable. If you want to shell execute it, that would be very nice though.
Pipo DeClown
Pipo DeClown
Hmm.. What if I try to capture debug output in D3DDebugConf (this name is starting to get inappropiate, but I have no intension to change it yet, hehe), and somehow pass it to your project. This way I don't have to code all the highlighting or features, just the raw output. I can probably do something like saving to a file (or clipboard) and shellexecute your project with the correct parameters? If you could add that small function, the two projects can mix perfectly.
circlesoft
circlesoft
Quote:
Original post by Pipo DeClown
Hmm.. What if I try to capture debug output in D3DDebugConf (this name is starting to get inappropiate, but I have no intension to change it yet, hehe), and somehow pass it to your project. This way I don't have to code all the highlighting or features, just the raw output. I can probably do something like saving to a file (or clipboard) and shellexecute your project with the correct parameters? If you could add that small function, the two projects can mix perfectly.

To be honest, I don't really see the point. It would just be a lot more effective to do it with one single app that is made exclusively for it. You can try to make your own if you want, but getting the debug stuff setup was slightly tricky and it was all win32 apis.
Pipo DeClown
Pipo DeClown
True. I've been trying to set it up but it didn't really work so I'll gladly leave it to you Dustin, saves me much time. Hehe. Anyway, I'm going to finish it up today and hopefully will be uploading the final release in a few hours.
Pipo DeClown
Pipo DeClown
Greatness! I'm done! I added all the debugging options and support for D3DDebugView (path to be changed in preferences.ini by the user).

Thanks for all the support..
.. aw- Don't cry guys, it's not the end. Let's hope that the future brings us more delicious homemade tools. Everyone, cya!!

*walks away in a sunsetsky*
Maquiavel
Maquiavel
Sorry, I didnt understand. What is this and what utility this has?

Sorry, Its because I am not in "DX World"
Alfred Reinold Baudisch[Game Development Student] [MAC lover] [Ruby, Ruby on Rails and PHP developer] [Twitter]
Pipo DeClown
Pipo DeClown
It's actually a Lazy® application that configures the Direct3D Debug settings, that you normally have to set in the Configuration Panel. It's just laziness and Bling-Bling.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.