What is the best 3D engine...

BlitzMax Forums/BlitzMax Programming/What is the best 3D engine...

2 Unlimited(Posted 2014) [#1]
...which can
- map environment realtime onto mesh to simulate reflection/refraction
- handle font characters beyond number 127
?


Brucey(Posted 2014) [#2]
handle font characters beyond number 127

I'm not sure fonts have much to do with 3D engines? Unless you mean to write text in 3D? In which case again, I'm not sure that has much to do with 3D engines.
You'd just need some way of turning the glyph into a 3D object. Don't know if 3D engines support that kind of task directly?


markcw(Posted 2014) [#3]
Assuming you want cross-platform as well, then Leadwerks engine is the best today.

Xors3d was popular but it's gone now, like many others.

If you want free then gman's Irrlicht mod is a good bet.


Kryzon(Posted 2014) [#4]
'Best' would be a very subjective quality. What should it excel at? Speed, productivity, the amount of built-in special effects, the amount of platforms that it can be built on etc?

Blitz3D has both those features that you want (Cubic Environment Mapping and the drawing of fonts with heights bigger than 127 pixels).


zoqfotpik(Posted 2014) [#5]
Leadwerks has full Blitzmax support, yes?


Hardcoal(Posted 2014) [#6]
Leadwerks stopped supporting blitzmax.
Either use minib3d or you can use xors demo hopefully they will come back alive one day


Matty(Posted 2014) [#7]
About five years ago there were lots of 3d engines floating ariund here fir max but they all seem to have disappeared or folded.


zoqfotpik(Posted 2014) [#8]
That is a pity about Leadwerks, that was a great looking engine.

My next in queue project is a roguelike platformer and I was considering doing 2d pixel graphics but it struck me that such a thing might look good with pixely voxel graphics for the characters and items...


markcw(Posted 2014) [#9]
Re: best. Best as in better than the rest overall, in my opinion. Although I didn't think about it needing to support Blitzmax itself so good point, I would rather use Max than Lua too.

Blitz3d or the Blitz3dsdk are not cross-platform, miniB3d is but I don't think it supports cubic env mapping. I think klepto's miniB3d extended does and gman's irrlicht mod.


2 Unlimited(Posted 2014) [#10]
Leadwerks doesn't support Intel graphics chips which I have.

Irrlicht shadows work buggy on my computer. On the same computer however, 3Impact shadows work bug-free. Why? Is 3Impact better perhaps?


Brucey(Posted 2014) [#11]
Leadwerks doesn't support Intel graphics chips which I have.

Ah, so you meant to ask "What is the best 3D engine... for my rubbish on-board graphics card" ?

:-)


2 Unlimited(Posted 2014) [#12]
Well, yep!


2 Unlimited(Posted 2014) [#13]
In brief, I am looking for something like Ashadow but for BlitzMax:




John G(Posted 2014) [#14]
Impressionist Water. Nice!


Hotshot2005(Posted 2014) [#15]
BlitzMax 3D Engine Module

MiniB3D, miniB3D +

I cant think more unless you know things or two :)


2 Unlimited(Posted 2014) [#16]
Well, yep!


I don't mean to cut my own throat though. Please forgive me, Intel.


Banshee(Posted 2014) [#17]
Your options are:

MiniB3D
Widely supported, works on old hardware (OpenGL 2)
No shadows
No shaders
Cube mapping (for reflection): Relatively easy, but no single command

MiniB3D+ (being discussed/created in the General forum right now)
OpenGL4 reduces hardware support, but is a literal extension of MiniB3D so a game could be written to use both
Shadows: From a single light source
Shaders: Theoretically to be included
Cube mapping: Same as MiniB3D

Blitz3D:
Widely supported, DX7 so Windows only
Shadows: Only via plugins
Shaders: No
Cube mapping: Built in support, relatively simple.

Xors3D:
DX9. Some critical engine bugs exist (slow loading of animated models), no longer supported, website dissappeared
Shadows: Yes
Shaders: Yes
Cube mapping: Relatively simple

Leadworks 2
Difficult media loading not 100% compatible with B3D. Very capable engine.
Shadows: Yes
Shaders: I believe so
Cube mapping: I imagine so

Irrlicht
Not used this. Information on Blitz wrapper is difficult to find

Works on Intel:
MiniB3D Yes
Others Not Sure

Check your DX and OGL level support.


GW(Posted 2014) [#18]
What about Openb3d? I'd be interested in knowing the differences between it and MiniB3d. It's written in cpp, so imagine it's faster, but is it missing features from vanilla minib3d?


KronosUK(Posted 2014) [#19]
Not missing anything as far as I am aware. It's based on iminib3d,adds shader support, CSG commands and some voxel stuff I didn't understand.

My experience of it has been mostly positive.

The negatives I have come across include:-
It handles texture loading in an annoying way
Some issues with loading some animated b3d models
Shadows use stencil method and are a bit ugly. (Why anybody uses stencil shadows at all these days is beyond me.)


markcw(Posted 2014) [#20]
Openb3d is LGPL and designed to be used as a dll. [snip] I've made a PD library wrapper for it here.


KronosUK(Posted 2014) [#21]
If you want shaders I'd say use openb3d as I've seen some shader stuff that doesn't work in Klepto's extended version but does work in openb3d.

It probably wouldn't be difficult to get postprocessing effects into openb3d also. It has some handy camera->texture functions.


KronosUK(Posted 2014) [#22]
Regarding Irrlicht

GMan's wrapper is a complete wrap of version 1.7.2. I believe.

Aqualung's is a port of Frank Dodds freebasic wrapper but is missing some commands or the commands aren't functional.

There have been various other attempts at an irrlicht wrapper but most got abandoned eg Ninfa3d, Clady3d and N3xtd

The trouble with Irrlicht is thats its so "unBlitzlike" I think it puts people off it.


GW(Posted 2014) [#23]
I never quite understood why the people interested in hacking on a 3d engine for Bmax never took up Mark's Max3d. It's relatively full featured, its fast, supports shaders + shadows out of the box, and has a great API. I recall that there's a memory leak when using physics(collisions work fine), but everything else seemed to work great.


markcw(Posted 2014) [#24]
There's still a version of max3d held on skidracer's axe repo. I just found it's using Glee as well.


Hotshot2005(Posted 2014) [#25]
Why People arent using MAX3D?


markcw(Posted 2014) [#26]
Just tested axe3d.m3d and it builds but the spinningcube.bmx example doesn't compile. It says: Identifier 'Max3dGraphics' not found. So seems to be a WIP version.


GW(Posted 2014) [#27]
examples worked for me. but it was a long time ago. Dont remember if i had trouble building the module. You might have to compile the dll with vc++.
Here is another repo https://github.com/Difference/max3d




markcw(Posted 2014) [#28]
Well I got spinningcube.bmx in axe3d.m3d compiling by adding m3d before the commands but it reported "warning: extension `GL_EXT_gpu_shader4' unsupported in vertex shader". So it looks like my crappy Intel GM965 card isn't going to work with max3d.

Nice dwarves though.


2 Unlimited(Posted 2014) [#29]
I am going to try DreiDe also.


Hotshot2005(Posted 2014) [#30]
Have you got Dreide working?


2 Unlimited(Posted 2014) [#31]
Yes, it works like a charm.


JoshK(Posted 2014) [#32]
A demo of Leadwerks 3.1 is now available:
http://www.leadwerks.com/werkspace/page/demo

On the plus side, it's not going to be abandoned or disappear in six months. :)

Blitz users can enter the coupon code "BLITZ" at checkout to get a 10% discount during the month of May.


GW(Posted 2014) [#33]
Is it (demo) crippled in any way? what's the diff between the demo and the full version?


JoshK(Posted 2014) [#34]
The demo does not include C++ programming and will function for a limited period of time.


Banshee(Posted 2014) [#35]
Did you have any luck getting DreiDe to work Cake to Bake? I just thought I'd have a go myself but couldn't get it to compile the demos.


2 Unlimited(Posted 2014) [#36]
I just ran the example executables. If DreiDe had a documentation I would consider to compile it.


Chapman7(Posted 2014) [#37]
Thanks for mentioning DreiDe guys, I didn't even know this existed.