DirectX support in future BlitzMax 3D module?

Blitz3D Forums/Blitz3D Beginners Area/DirectX support in future BlitzMax 3D module?

Greg Squire(Posted 2005) [#1]
I've been using Blitz3D for a while now and I like it. I'm also excited about an upcoming 3D module for BlitzMax that's been talked about, as this would open up the Mac and Linux markets to my game. However, I haven't heard anything about whether this module will support DirectX or if the whole thing will be OpenGL based (which would be simpler on the engine side). Obviously OpenGL is needed for Mac and Linux, but on Windows one has a choice. From what I've heard, driver support for OpenGL isn't what it should be on the PC. In that world, DirectX drivers are written first, and OpenGL second (if at all). I'm targeting the casual games market, which means there are more people with older hardware and they probably would have the first idea how to update their drivers (if Windows update doesn't do that for them).

So does anyone know if BlitZMax (3D) is going to support DirectX? If not will there be some way to tell (before the game is fully started) whether the user has a usable OpenGL driver installed?


TomToad(Posted 2005) [#2]
As I understand it, BlitzMax will not have an inherant 3D module like Blitz3D does. You can purchase a 3D module from BRL when one comes out, or you can use a third party module. I believe that the BRL version will be OpenGL based. If I'm not mistaken, someone is already working on a DirectX version with the BM beta, so you'll have a choice of which to use, as well as a slew of 3D engines that are already available.


Gabriel(Posted 2005) [#3]
So does anyone know if BlitZMax (3D) is going to support DirectX?


It won't. There will be third party options ( as there always have been ) but it does appear that those of us looking for a language/tool with an *official* DX-based 3d engine will have to go elsewhere.


Strider Centaur(Posted 2005) [#4]
Not sure what *Ofiicial* means? But I think that a good 3rd party lib for a language is good enough, and I really like the idea that there may be more than one to choose from. On the other hand it will make getiing help from a already small comunity even a little harder as the comunity will be devided across several 3D libs. But Im willing to bet if a good FREE one shows up that it will be the one easist to get help on, not the one published by BRL at that time.


dynaman(Posted 2005) [#5]
Blitzmax also makes it easier to incorporate 3rd party engines. So a 3D directx engine will probably make an appearance.


Gabriel(Posted 2005) [#6]
Not sure what *Ofiicial* means?


It means "not a third party one".


mrmango(Posted 2005) [#7]
I am not 3d expert and only play with blitz 3d.

What is wrong with Open GL for games?

Mango


Damien Sturdy(Posted 2005) [#8]
Also, if a directx module comes out, it of course wont be compatible with Mac/linux :P


dynaman(Posted 2005) [#9]
True - but if you make the syntax match the other modules then all that should be needed is swapping the framework command around to include the appropriate library. I'm not sure how max would handle to libraries with the same command names though. (OOP wise it's easy, proceduraly it could be tricky)


PowerPC603(Posted 2005) [#10]

True - but if you make the syntax match the other modules then all that should be needed is swapping the framework command around to include the appropriate library. I'm not sure how max would handle to libraries with the same command names though. (OOP wise it's easy, proceduraly it could be tricky)



This wouldn't be handy, would it?
For someone who doesn't use the Framework command (and also every beginner in BMax), BMax will import all modules.
Then which module's commands will BMax choose? OpenGL or DirectX commands? Or a mix of both (one command from OpenGL and another from DX)?

If commands in OpenGL and DirectX are the same, doesn't this give errors in BMax itself?
And it really couldn't hurt anyone to create 2 different source-code files for his project.
First create one for OpenGL and then replace all GL... commands with DX... commands (if the syntax and parameters are the same) and you're done.


Greg Squire(Posted 2005) [#11]
What is wrong with Open GL for games?


There is nothing wrong with using OpenGL for games. There are many games out there that are OpenGL only games. However, my only concern is about the existing driver support on users machine currently. I'm working on a casual game with Blitz3D right now. I want for customers to be able to run the game right from the start, without them having to worry about updating their drivers, as many casual gamers may not even know how to do that. On the other hand I'd also like my game to be cross-platform and run on the Mac as well (that of course would mean OpenGL). Ideally I'd like to be able to write my code once, and then compile a Mac and a Windows version of it. (Mac using OpenGL and Windows using DirectX) If written right, two 3D modules (or portions of a module or library) could be written (with the same object names and methods) so that one or the other could be plugged in. One would wrap OpenGL and the other would wrap DirectX. This is probably not what the BlitzMax 3D module will do. My guess is that it will be 100% OpenGL underneath (from a tool perspective that would be easier).

Here's another thread on another forum that sheds more light on OpenGL concerns on Windows. From their experience, OpenGL support on existing machines is shoddy at best.


Cancerian(Posted 2005) [#12]
Worst case scenario, I don't think regular Blitz 3D has passed its usefulness in developing casual (or any type) of games for Windows. If the code is as easy to port over as they say, it should only mean a little extra work to get your Blitz Max versions up an running based on your original Blitz 3D code.

In theory, anyways - don't know how well that works in practice.


Andy(Posted 2005) [#13]
Wouldn't this be easier?

GLgraphics3D
DXgraphics3D

Andy