Qbasicnews.com

Full Version: Irrlicht
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
When will it be ported to FB? I wanna see some FB examples!!!! :bounce:
TÃ¥lamod ^_^
grap a c++ book and start learning that, then write a c wrapper around irrlicht, create the proper bi files, compile the static/import libs for irrlicht with either mingw(win32) or gcc on linux and be a happy irrlicht user in fb.
That's no simple task, i was checking the engine better and while it uses mostly "interfaces" with pure virtual methods (that are theorically simple to wrap), there are many classes like vector/matrix that need templates to work, and many interface methods take these classes as arguments, what makes a simple wrapper hard to be done..

Also, being a C++, there's no standard on how class members are aligned, nor about name-mangling, if you install the VC++ dll and make a wrapper for the MinGW dll, there will be a nice crash..
Quote:That's no simple task, i was checking the engine better and while it uses mostly "interfaces" with pure virtual methods (that are theorically simple to wrap), there are many classes like vector/matrix that need templates to work, and many interface methods take these classes as arguments, what makes a simple wrapper hard to be done..

Also, being a C++, there's no standard on how class members are aligned, nor about name-mangling, if you install the VC++ dll and make a wrapper for the MinGW dll, there will be a nice crash..

ya that's why i suggested to use mingw Smile

anyways irrlicht is not that great imo.
I assume that FreeBasic can use any graphics library, and not just graphic engines. I was wondering if it's really nessicary to have a graphics library that uses Direct3D or Direct3D itself to be ported to use with Freebasic but I really don't see that coming because from what I hear it's more complicated than OpenGL.

Anyways, anyone check out Mesa3D?
it's not about the functionality of the library you use, it's about the availability of compatible functions in terms of calling conventions etc. libraries that are written in C perfectly fit that requierment as fb allows using the same calling conventions.

Opengl is a plain C-library with some ports to other languages or better call them bindings. all that was needed was to port the c headers ( that declare the functions provided by the library and their argumentlists/return types ) to fb, which is besides being a tedious task not really complex.

DirectX on the other hand is written in C++, grounded on the COM mechanism. here you just can't translate the original headers as they rely on C++/COM specific syntax/mechanism. one would have to write a C-Wrapper around this, that then can be used in fb. check out the fbraknet port, that's a simple example of how to write a wrapper around a c++ library for fb.

Mesa3D is a software implementation of the OpenGL API. i has, however a set of drivers that allow you to take advantage of your gfx cards accelaration functions too. as there's alread the OpenGL headers ported i see no point in translating the Mesa3D headers ( which are 99% the same to OpenGL) except if you want to try a feature that is not implemented on your gfx card ( note: it does not mean that it's implemented in software in Mesa3D either. Mesa now supports OpenGL standards up to 1.5 i think and also has some ARB and vendor specific extensions but by far not all of them )
But in the "missing" directory in FB 0.13b there's a file called Irrlicht... So that means they're working on it, right?
Quote:TÃ¥lamod ^_^

Den som väntar på något gott väntar ALLTID för länge!

(Sorry, I guess the forum rules says Only English or something, right? :roll: hmm... maybe I should read 'em) :lol:
seems like there's a c-wrapper for irrlicht. well then you got your beloved irrlicht engine Smile
Pages: 1 2