minib3d and Blitz3d

BlitzMax Forums/MiniB3D Module/minib3d and Blitz3d

Twinprogrammer(Posted 2011) [#1]
Hey Guys,

I program with BlitzMax and want to move to 3d. Which 3d software should I use? Should I use minib3d, or Blitz3D ? What are the differences ?

Twinprogrammer


Krischan(Posted 2011) [#2]
Blitz3D uses the old DirectX7, minib3d OpenGL. minib3d emulates most of the commands of Blitz3D and is free. I moved a few weeks ago from Blitz3D to Blitzmax+minib3d and it works - I ported two of my projects successfully. If you already know how to program with Blitzmax I would suggest minib3d first - if this is not sufficient enough for you move on to a more advanced Module (like Xors3D).

Blitz3D is still unbeaten if you want a very quick visualization of an 3D scene and gets updates from time to time (but isn't developed further anymore as it seems). I'm not *very* happy with minib3d as a substitute for Blitz3D but I can work with it. There are some limitations (missing functions), I think it is slower and the author stopped working on it (but you can enhance it to your own version of minib3d as the source is available).

Here my two demos: Blue Marble and MaxSky

Blue Marble uses the 0.53 minib3d without any additions and MaxSky a modified version due rotation issues with the 0.53 vanilla edition.


AdamRedwoods(Posted 2011) [#3]
Some of us help maintain miniB3D by fixing errors. It is a basic, cross-compatible 3d engine (OSX, Windows, Linux), that works on almost all hardware out there.

The latest version is actually a 'small fixes' version, but I wish they would just call it version 0.54

http://code.google.com/p/blitzmax-assimp/downloads/list



There are actually quite a few 3D engines out there for BlitzMax (Xors3d, leadwerks, werner's engine, this one: http://blitzmax.com/Community/posts.php?topic=87976 and many other)

So it shows that with BMax, you are not locked into one engine, but with Blitz3D you are.


ima747(Posted 2011) [#4]
I would also recommend minib3d as a starting point for the following reasons:
You're already familiar with the code structure since you use blitzmax, you just need to learn the module.
It's cross platform, and there are ports to other languages/platforms (such as iOS and my ugly ugly stripped out Android and Java versions...) so a project can be ported to mobile if you're so inclined.
It's very very easy to use (partly because it's limited...)

B3D I think is a fine option if you want something a little tighter, but it seems to be a dead product, and is quite dated... you can of course always move from B3D to miniB3D since they are more or less the same... but why not try miniB3D for free first?

If you need more oomph there are a selection of 3D engines for BlitzMax, but keep in mind that the more they do the harder they are to use in general. If you're totally new to 3D programming you would likely benefit by getting your feet wet in something simpler first to get the fundamentals down before you start adding in layers of complexity to do things you don't understand yet :0) I like to start at the bottom and work up... sometimes I find the bottom is all I need.


jtfrench(Posted 2011) [#5]
It looks like a lot of us are still using MiniB3D, initially because of its simplicity, Blitz3D similarities, and open-sourcyness. Undoubtedly you end up hitting a point where you need to improve it, but I've found that since it was so simple to begin with, improving it seems a lot more doable as it's not a massive codebase---you can easily read through all the source in an hour or so.

It sounds like we could probably all benefit from each other by "joining forces" or whatever and formally continuing MiniB3D. Adam and ima747 have all done great stuff w/ it, I have a (small) team working on improving it as well, and I'm sure there are others --- I wouldn't be surprised if we eventually took MiniB3D beyond where Blitz3D was, while maintaining the core simplistic roots that seems to have attracted everybody in the first place.

I'm not too experienced with how these community-style projects gain momentum (or if this has been tried many times in the past and failed), but as someone who has used Ogre, Irrlict, Unity, Torque, and others (all on the Mac, and all of which are great for their own reasons...maybe not so much Torque haha) --- at the end of the day MiniB3D was dead simple and to me was worth the time spent in any additions I'd have to make to it.


Krischan(Posted 2011) [#6]
I'm still impressed how easy it is to port a B3D code to miniB3D. And now I am convinced of the power of minib3d, too - I tested my Single Surface Galaxy with it and guess what? It runs even faster than in Blitz3D! So I revise my statement that "I think it is slower" - it isn't :-) minib3d Spiral Galaxy (scroll to the last comment there for the source).

The idea to develop minib3d further is good. My only wish would be: KISS - Keep It Silly Simple for the end user like Blitz3D. And optional shader support would be nice.


Captain Wicker (crazy hillbilly)(Posted 2011) [#7]
Can the minib3d thing be installed with the bmax demo? How to set them up?

Thanks in Advance!,
Cpt. Wicker


AdamRedwoods(Posted 2011) [#8]
Blitzmax demo may be restricted to size, therefore no.


Captain Wicker (crazy hillbilly)(Posted 2011) [#9]
Alright thanks anyway Adam. :)


Zethrax(Posted 2011) [#10]
I haven't tried it, but 3Impact ( http://www.3impact.com/ ) is another engine that works with Blitzmax and is also free.


Captain Wicker (crazy hillbilly)(Posted 2011) [#11]
I haven't tried it, but 3Impact ( http://www.3impact.com/ ) is another engine that works with Blitzmax and is also free.

@Zethrax:,
miniB3D is multiplatform though? i'll try out your suggestion later on. :)