3D Engines in Haxe?

I need a good 3D engine for Haxe that supports Flash and HTML5. I know that Away3DHx and BabylonHx haven’t been updated to handle the new builds of OpenFL. I’ve tried them already and they wouldn’t compile. I’m even willing to help fix the engines and get them compiling if it comes down to it. What’s the best step to take when it comes to doing cross platform 3D?


It would be great if someone fixed one of those, though am more interested in native compilation for desktop.
Have you looked at http://armory3d.org/ ?
Looks very promising.

1 Like

I have been making progress on Away3D, most of the samples here compile with the latest development version of OpenFL


I’m currently working on updating my game to the latest version of OpenFL. Once I finish that, I’ll work on switching to Away3D, which means I’ll contribute to fixing anything broken.


Thanks, I’ll pull down the latest and give it a shot.

This is awesome, do you think it will eventually compile to native at some point ?
Flash is running breazy. :slight_smile:

1 Like

Well things compile but for the most part some of the examples don’t work. I can’t load any 3DS or AWD models or particles when it comes to the examples. I’ll keep a look out on the Away3D 3D Engine until things are working and stable again on Haxe/OpenFL. I want to go with Away3D because I used it in the past and have an understanding of the APIs already.

1 Like

That’s weird, Particles, 3ds and AWD are compiling in flash for me.
Are you using the latest dev Openfl ?
“lime test windows” errors out with a RegisterPool.cpp related error.

1 Like

I’m using the build of OpenFL/Lime that was install via HaxeLib. I guess I should use what’s on GitHub huh?

1 Like

You have http://babylonhx.com/ too, based in BabylonJS.

openfl is not supported by BabylonHx anymore. saddly.

Yeah, I was going to say that I tried BabylonHx first.

There are important changes to Lime and OpenFL to support the latest state of the away3d/away3d-samples repositories. We’re continuing to work through improvements to make sure they are all supported :slight_smile:

They are mostly all working here, with native, HTML5 and Flash :grinning:


Keep getting this when doing lime test windows on the away3d examples:
"Error: RegisterPool.cpp
./src/away3d/materials/compilation/RegisterPool.cpp(146) : error C2374: ‘index1’ : redefin
ition; multiple initialization
./src/away3d/materials/compilation/RegisterPool.cpp(144) : see declaration of ‘ind
./src/away3d/materials/compilation/RegisterPool.cpp(147) : error C2228: left of ‘.StaticCa
st’ must have class/struct/union
./src/away3d/materials/compilation/RegisterPool.cpp(147) : error C2059: syntax error : ‘)’

./src/away3d/materials/compilation/RegisterPool.cpp(173) : error C2374: ‘index1’ : redefin
ition; multiple initialization
./src/away3d/materials/compilation/RegisterPool.cpp(171) : see declaration of ‘ind
./src/away3d/materials/compilation/RegisterPool.cpp(174) : error C2228: left of ‘.StaticCa
st’ must have class/struct/union
./src/away3d/materials/compilation/RegisterPool.cpp(174) : error C2059: syntax error : ‘)’"

@Franky Looks like the same issue as https://github.com/openfl/away3d/issues/2. Should be fixed in Haxe 3.4.0 + hxcpp 3.4.49.

1 Like

I was using an older build of Haxe. So I’ll upgrade to 3.4.0 as well.

Oh, should I go 3.4.0, I’m still on 3.3.0.
Thanks for the info @Gama11.

Yeah, I’ll upgrade and let you know if it works.

1 Like

away3D:Fire example is crashing out bad on lime test windows.
… Halts at resources.cpp

  • src/ApplicationMain.cpp
  • src/boot.cpp
  • C:/HaxeToolkit/haxe/lib/hxcpp/3,4,49/src/hx/NoFiles.cpp
  • src/resources.cpp

Latest everything. Halts the first time around, echo’s this the second turn around, and so on:

Compiling group: hxcpp_std
cl.exe -nologo -DHX_WINDOWS -GR -O2(optim-std) -Zi(debug) -FdC:\Users\Papagaio_\Fire\Export\windows\cpp\release\obj\obj/msvc16-ncxp/vc.pdb(debug) -Od(debug) -O2(release) -Os(optim-size) -Oy- -c -EHs -GS- -arch:SSE -IC:/HaxeToolkit/haxe/lib/hxcpp/3,4,49/include -DHXCPP_VISIT_ALLOCS(haxe) -DHXCPP_API_LEVEL=331(haxe) -D_CRT_SECURE_NO_DEPRECATE -D_ALLOW_MSC_VER_MISMATCH -D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH -DHX_WIN_MAIN(main) -wd4996 … tags=[haxe,static]

  • Sys.cpp
  • Process.cpp
  • Random.cpp
  • File.cpp
  • Socket.cpp
    Link: ApplicationMain.exe
    obj/msvc16-ncxp/d2e3f31c_NativeCFFI.obj : fatal error LNK1136: invalid or corrupt file

obj/msvc16-ncxp/d2e3f31c_NativeCFFI.obj : fatal error LNK1000: Internal error during IMAGE::Pass1

Version 10.00.30319.01

ExceptionCode = C0000005
ExceptionFlags = 00000000
ExceptionAddress = 77228501 (771E0000) "C:\WINDOWS\SYSTEM32\ntdll.dll"
NumberParameters = 00000002
ExceptionInformation[ 0] = 00000000
ExceptionInformation[ 1] = 00007FFF

Eax = 00000000 Esp = 00AFE8D8
Ebx = 00008000 Ebp = 00AFE91C
Ecx = 02BB0000 Esi = 02BB0000
Edx = 00000000 Edi = 00000000
Eip = 77228501 EFlags = 00010246
SegCs = 00000023 SegDs = 0000002B
SegSs = 0000002B SegEs = 0000002B
SegFs = 00000053 SegGs = 0000002B
Dr0 = 00000000 Dr3 = 00000000
Dr1 = 00000000 Dr6 = 00000000
Dr2 = 00000000 Dr7 = 00000000

Though this is progress from the last haxe version I had installed. Fingers crossed.

Last version also didn’t throw this:
C:/HaxeToolkit/haxe/lib/openfl/git/openfl/_internal/renderer/canvas/CanvasGraphics.hx:930: characters 25-36 : Unknown identifier : scaledWidth
when doing lime test html5

Fire example compiles after all you just have to give it 10 minutes to churn over passing that resources file… weird.

Just fixed the HTML5 compile issue :slight_smile: