Have a look at the samples and the CustomUI Example.
http://www.cegui.org.uk/modules/news/
However the Axiom site (http://www.axiom3d.org/) is not updated since ownership has been transferred to RealmForge (http://www.realmforge.com/) and I can't find any reference (at least not with a few quick searches - if you are interested I'm sure you can dig stuff up)
and good luck on creating your own, the more the merrier.
I wonder if someone ever tried to write a gdi to directx wrapper. Something like rendering a gdi window into an offscreen bitmap and converting that into a directx texture that can be rendered on your directx surface. That way, one could use all those controls we are used to together with visual studio's integrated form designer.
It currently handles just two controls (a generic "Panel" and a button) but I'm adding them as they are needed. I just finished coding the MouseEnter/Hover/Leave and am about to begin coding the MouseDown/Click/Up series of events.
I'm designing it, so that programming with these controls is just like Windows.Forms programming. You addeventHandlers by doing:
button.Click += new ...There is a HUD control which holds all the other controls (sort of a "Form" equivalent). When you have finished adding controls, their various shapes are rendered in a single vertexbuffer. When some control needs to be updated, just that part of the vb is updated. It is beginning to look good: there is a screenshot (don't mind the colors) here. The first button shows the effect of the mouseHover event associated to a Button Control inside a Panel one (I wanted to see what color was Color.Wheat
).
If someone is interested and wants to take a look, then let me know.. The only thing is that to make it work you would need to make so that your input routines send the correct parameters (an object which derives the EventArgs class) to the UserInterface class so that it is able to manage them and respond accordingly.
Is the CustomUI Direct3D sample designed to be a fully-functional set of GUI classes for use in a game, or is it designed merely to be an example of how you might create your own? I noticed that the classes are defined in the Microsoft.Samples.* namespace, which seems a bit unconventional for code that I'd use in a retail game.
Though its functional its generally not really pretty enough to use in a commercial game and though you could tweak the textures there is more to do if you want to change sizes etc. Its great for knocking together quick tools and a vast improvement on making your own from scratch.
Greetings!
I'm in the middle of building a level editor type app (multi windows, tab controls, tree views, etc...) in C# and ManagedDX. I want the ease of programming WinForm apps with the 3d rendering of MDX. I'm currently using a picture box as my rendering window.. .but have a lot of problems with repaints and responsiveness with Keyboard and Mouse events.
My question is: Do I need to write all my controls in MDX .... and handle all of the user input events using the Keyboard Checker/Mouse Checker DX callback functions?
Or is it possible (reasonable) to build a robust app using standard winForm controls and redering to multiple windows?
Thanks!!