Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
nice looking 3D engine.
#11
It will have to follow the GCC's 3.x ABI (as ever), mangling included, or porting the C++ headers won't be possible w/o ugly wrappers.

Still, i don't plan to add templates, some C++ headers will be hard to port, but SWIG can "expand" templates too, only the time will tell ;).

Maverik looks cool to be used in 3d apps (not games), but 30MB of DLL's? I guess they compiled them with debugging on..
Reply
#12
Btw, Irrlicht seems to have wrapper libs for PureBasic and Blitz3d (very early stuff), if somebody with C++ knowledge could do an effort making a wrapper lib for FB.. it will be way easier to do than the PB or B3D one, i can bet :P
Reply
#13
I thought DirectX support was already built in.
DarkBasic is getting great 3D using DirectX.
All you need is the plugin from Microsoft.
This allows your game file to be super lite as they don't need to carry all the 3D data.
here are two types of people in this world: Those that put people into two categories and those that don't
Reply
#14
There's nothing built in but the gfx library for QB-compatibility.

Everything is used as on an "usual" compiler: through libraries.

FB at the moment is capable enough to use DirectX as you do in C, not as in C++ with interfaces, as there's no OO support yet. No wrappers or helper libraries or ugly CallDLL(...)'s or whatever are needed to use the C libraries, as FB is not a scripting-like language like DB or B3D.

For DX only the DirectDraw header was already ported, i've no time to work on the other ones (DSound, D3D, etc) and using OpenGL would be way easier to setup and your game/app would be portable to any platform that FB may run in future (currently Windows, Linux and DOS).
Reply
#15
VB has lots of nice 3D engines which would be alright to port...

but v1c....I WANT BOOLEANS Big Grin
·~¹'°¨°'¹i|¡~æthérFòx~¡|i¹'°¨°'¹~·-
avinash.vora - http://www.avinashv.net
Reply
#16
Quote:but v1c....I WANT BOOLEANS Big Grin

Hi:

An integer is more efficient than a true bool in a 32 bit language. In modern C languages a BOOL = INTEGER. The problem as I see it is that BASIC uses a bit-wise NOT so TRUE = -1 but some of the header-files have a C style TRUE = 1, introducing un-necessary bugs into user code. TRUE should be defined as –1 for all BASIC code, just as it is defined as TRUE=1 in all C code.

Follow the example of the FreeBASIC source code. Then it is possible to test true and false in a consistent manner across languages.

Have fun

Garvan
Reply
#17
Never mind.
Reply
#18
While I do acknowledge that tapping into DirectX via BASIC is no simple feat, nonetheless I think overall that may be your best primary course of action for a number of reasons;
You're dealing with a plugin which is free, albeit Microsoft, but at least you know that it's fairly cutting edge, relatively free of major bugs, will probably come already built in to any new PCs running Windows, and Microsoft is pushing to make it easier for developers to author game content for XBox. So it's likely that any game content written in BASIC which uses DirectX components will be a breeze to port over to the next generation of Microsoft game consoles.
This means you are putting the tools for free into the hands of average end users to compete with the top level commercial game companies.
This opens up the possibilty of someone opening an XBox title service beureau, similar to the way commercial printers operate: while it's not feasable for every company to have their own printing press, one guy gets the business loan to buy the press and then farms out individual orders on demand. So the ultimate would be to send games written in FreeBasic to you via the internet, then you can output the games in a variety of formats and take care of the distribution end, which can be set up to be mostly automaticly done electronically.
You get your cut, we get our cut, everybody makes a ton of honest cash and everyone's happy! All except the big monopoly game companies like Sony and Nintendo.

Also of note: have a look at the Ogre Engine. I think their realtime rendering quality is superb, AND it's GNU. Meaning you can get access to the source and there's may be the possibility of converting the vital 3D rendering bit's to something more compatible with FreeBasic.
What I'd like to see is maybe an integration of what you're doing with what they're doing: If you can make a 3D GUI of sorts which basically frees the end user from having to deal with a lot of the object oriented stuff like level design, and then tack BASIC on top of that as the actual coding language. MMMMMM (lipsmack!)

What I am envisioning is an SMIL compliant player,
only instead of it being a "Player" like RealPlayer or Windows Media Player,
What we're creating is an application that can output a file, be it 3D or 2D or whatever,
and can display that output either in a freestanding window, or fullscreen, or in an HTML document, etc.
The media itself is based on the SMIL for Animation standards + FreeBasic

Keeping the whole project as XML compliant as possible from the get go expands the possibilty of eventually having a FreeBasic which can open and execute files written in almost any BASIC language; be it Liberty Basic, Blitz Basic, etc. It would be a matter of merely keeping XML translators which convert between the basic commands and maybe throw in a function or two to compensate for application specific commands, etc.

For those of you who are unfamiliar with the power of SMIL, I recommend checking out the tutorials that come with the RealPlayer SMIL authoring system. I have looked at a number of different SMIL tutorials and found that the RealPlayer one was quite comprehensive.
I am not here to start another completely useless discussion on this board about why Media Player is better than RealPlayer or visa versa.
If you're interested in quickly appreciating the power of SMIL, just do the freakin tutorial and then deinstall the product if it bothers you.

SMIL + BASIC
think about it
here are two types of people in this world: Those that put people into two categories and those that don't
Reply
#19
if you weant direct3d go a head and port the direct3d headers but it's going to be a hackish / hard job and to be honest no one here crazy enough to even attamp the job considering we already have openGL which is by far a better 3d API then directX.

when FB get's class then somone will most likely take up the task of final porting DirectX header completely untill then though just use OpenGL.

the Xbox argument kind of moot since freebasic would have to be reworked to produce code that would excute on the xbox although the hardware in a xbox is pretty much what of a stander X86 system there is still some strange microsoft stuff going on in there.
Reply
#20
If there's enough people asking for XBox support (and if the OpenXDK is stable and complete enough; haven't really played with it enough yet) then I'll perhaps port FB to it...
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)