PDA

View Full Version : Pyrogine2Dび「 API v1.0.2 Released



Pyrogine
28-11-2007, 11:50 PM
We are happy to announce a new version of Pyrogine2D (http://www.pyrogine.com/index.php?content/view/15/35/) API. New for this version:

* Added documentation (will be frequently updated and improved).
* Added DisplayDevice(C++), MusicPlayer(C++), RenderDevice(C++), Template(C++), TestBed(C++), Scroll(Delphi, updated) examples.
* Added P2D_ExtractFilename routine.
* Added C++ Framework
* Changed P2D_Init (c/c++) so that it's safe to be called multiple times.
* Fixed a problem where evGameDone event was not being called when the game loop ended.
* Added C/C++ Bindings.
* Fixed a access violation error that occurs using the event system under certain situations.
* Added plugin support in the Delphi Framework.
* Fixed the problem where the audio did not pause if GlobalFocus was set false when initializing the audio system.

Pyrogine2Dび「 API v1.0.2 (4.55 MB) (http://www.pyrogine.com/index.php?component/option,com_docman/task,doc_download/gid,7/Itemid,/)

Visit Pyrogine Development (http://www.pyrogine.com) for more information.

arthurprs
29-11-2007, 01:08 AM
Great idea, you made all classes in real c++ code using the procedual API, that will solve my current problem :)

thx XD

Pyrogine
29-11-2007, 02:31 AM
Thanks. This is a way to solve the problem of allowing objects to cross the DLL boundary in a language neutral way. COM will do it, but you can not extend your objects. If you simply wrap them (interfaces or routines) in the native language you then gain all the advantages offered by that language. A few hoops, but it works without being overly complicated.

On the c++ side I dynamically bind to the DLL. You just have to include the header/src in your project and now it works with virtually all modern c++ compilers without having to deal with the incompatible .obj formats and name mingling between different c++ compilers. Result: you can use in c++ classes made in Delphi in a natural c++ way (or vise versa).