I'm not sure. I DO KNOW that when you make a windows application, you always have a main function named " void main(void); " or simply "main". Using the DarkGDK, you need to start your program with a function named "void DarkGDK ( void )" or DarkGDK.
This implies that somehow, when you include the DarkGDK header/library, that the MAIN function is actually handled by DarkGDK, and after it initializes, it calls YOUR DarkGDK "main" function.
I suspect the normal hooks, message loop, etc, that you create normally have been already established by DarkGDK.
I also do NOT DOUBT the possibility of creating your windows and making them go to your own message handler, but at that point, you might be in a "multi-state" situation, and possibly Multi-threaded.
What I mean by this is that measures would have to be taken to make sure stuff that happens in your window is "READY" to be "read from" or exchanged with the Dark Side
Reason being is that your OWN WINDOW message loop can get called WHENEVER, and the code for it will need to be able to "syncronize" actions with the Dark Side - which can and will likely be happening in its own "world" timing wise. Once you create it window - it very much acts like a multi-threaded application - simply because the nature of an event driven operating system - which Windows is.
Any input from others who have experimented here would be appreciated. I'm spouting off theory - I haven't got "here" yet with my DarkGDK, if you know what I mean. I'm still making classes to handle my 3d "things", their movement ..if any, and collision etc. rtying to wwrap stuff into classes that I can use over and over. This is a project in it of itself for me.
(I know C++ but I'm not a guru in it - so I'm hitting a lot of learning curve - I usually try to stay away from it - but for Game programming - I think its much better than DBPro native... at least for elaborate games. DBPro is great but I find when you start getting fancy - its starts to dog out.)
Best Regards,
Jason P Sage
Know way too many languages - Master of none