OT – Now all pages are ok, yesterday evening (about 10hs ago) a lot of pages were missing… maybe a timed process of the server. –
We did just do a server migration. I think after the DNS changed, it revealed some problems with the new server configuration that I didn’t see before the DNS updated on my host. Thanks and have a great day
Does anyone know is .gaf file just ordinary txt/json/xml file and is it possible to read it?
I’m trying to convert GAF/Starling to openFl/Starling but I’m stuck with reading .gaf files.
My guess would be that it’s binary. Are the GAF runtime libraries licensed, or are they free and open?
Well, my source is Starling version (https://github.com/CatalystApps/StarlingGAFPlayer) and it’s under Simplified BSD License, so I don’t see any restrictions.
I think we can test it in few days only… I hope it will give me motivation to update the haxe engine.
Yes, I hope it will be great, Openfl really needs tools for complex animations.
1 year has passed!
If you are following this topic you’ll be happy to see some updates
I have just had the opportunity to test DragonBones: well, I don’t know how the project evolved, but I can tell you that DragonBones library for Openfl supports meshes! Please don’t tell me that everybody knew and nobody told me!
There are some glitches compiling to Canvas,
Look at the wings, the head, tail and torso.
You could say “ok, compile to WebGL”, but the tests show that performances are significantly higher in Canvas
This makes me think that if meshes have been implemented for DragonBones it would be pretty straightforward to add them in Spine libs too, right?
Talking performance: How many dragons did you manage to put on screen before dropping fps?
When I tried it (a looong time ago) I couldn’t get 60 fps not even with a single dragon
- WebGL ~20fps
- Canvas ~7fps
Well, wait wait wait, this example is pretty different from the first one we tested
The first test we made was using the classic dragon-with-shirt gfx, that uses 1 or no meshes at all, if I’m not wrong: when I say that Canvas is faster than WebGL I am referring to that, we will redo a test with that gfx, sorry for the mistake.
Perhaps we could double check if it was really using hardware rendering. WebGL (which runs through the software path) will be slower than plain canvas (which is always software)
New test with the classic dragon-with-shirt.
The test is based on the same animation in 2 versions, one with no meshes and one with a very simple animated mesh applied to the horns.
Note, in the previous post with the screenshot of the other dragon I said that in canvas there were some glitches on the meshes, but not in the WebGL version: in this test the glitches appear in the WebGL version too.
The results with 28 dragons are:
- WebGL no mesh: ~31fps
- WebGL mesh: ~12fps
- Canvas no mesh ~45fps
- Canvas mesh ~13fps
With a small mesh or without any, Canvas wins!
I would like to test the fps of Spriter with the same animation. Can you send me your dragonbones animation so I could adapt it to Spriter and evaluate the amount of fps so we could compare.
Ok, I’ll send it through mail.
thanks I’ll try this week!
What the heck…?! Mesh deformations work in openfl-spine too?!
It works pretty good in WebGL, better than DragonBones, apparantly, but in canvas it explodes.
Obviously it is only usable in WebGL, an annoying restriction
Hey, here are some feedbacks on the code you sent to me:
- Don’t recreate all your dragons when you add only one (save 50Mo of RAM and have 10 more fps for same amount of dragons : 31) => if you removeChild, try to destroy all the data of the removed animation
- Don’t cacheAsBitmap your animation. (can have 27 fps more for 31 dragons)
Both optimisation lead to x2.2 dragons at 30 fps.
I’ve tested on WebGL but I don’t know if the code you sent to me uses mesh or not.
EDIT : it’s definitely “no mesh”.
EDIT 2: I’ve just tried the “mesh” and it still really bad.
I’ve checked the code of dragonBones and it seems that every part of the animation is rendered in a
Shape, so there is no batch in dragonBones. The dragon animation has 19
DragonBones could benefits using
Tilemap (but it doesn’t support mesh) or a custom rendering that supports Mesh and batching.
Yes, tilemap meshes would be great, as we could animate dozens items at once without slowdowns, and it would/will be an incredible step forward for the Openfl community.
The current renderer is useful for 1-2 big characters/items on screen, but as a simple warmup for the future evolutions of the library anyway.