Problems with IOS

Hi, have you had chance to do much testing on IOS?

I made the mistake of developing the entire GUI on Windows and Android before trying it on IOS.

It turns out there are few issues not least of which are the textbox and it won’t display any fonts.

The problem is present in Nifty too.

There doesn’t seem to be any GUIs that work with it in JME. I don’t know if you would know a work around or is the fix a massive job because I much preferred yours over Nifty,

Try updating the iOS plugin and then disabling the iOS deployment and deleting the resources/ios folder, then enabling the iOS deployment again. Theres been an update that solves some problems with images not loading properly.

Thansk for coming back to me. I think you mean the update where the width and height parameters were reversed and that explained why only square images worked.

No, its related to fonts and text boxes.

The font just change to random characters.

I guess it’s an issue with Avian but was wondering if the GUI could be tweaked to be compatible.

Is the HUD debug text (FPS, etc.) messed up too? If so then it’s a really low level issue… ie: even BitmapText is messing up.

The only thing I can think that would cause that is if textures are inverted or something when they aren’t supposed to be. (Or not inverted when they are supposed to be.)

yes, the FPS window is completely blank.

it doesnt even show any text at all. I suspect that it may be related to the encoding of the characters.

Avian will only support UTF-8 and that would explain why the characters are randomly transposed.

So no font will render at all. I’m having to use native UILabels in XCODE

The same applies to TEXT BOXES for the same reason I guess.

I’m trying Java FX but the panels dont look as nice and I haven’t seen much in the way of transitions yet.

That could well be that I haven’t got to it yet. I guess I’ll release the beta with a basic UI or put some native controls in but it’s a shame to compromise as the main engine is so powerful and has great potential for an extremely polished finish.

Tacking on a basic GUI just as a means to an end is a shame but not the end of the world.

I’ll see if the Avian guys can shed any light on it.

What does this mean? How are you making the GUI that works without error?

UTF-8 means that all of the regular ascii text characters are the exact same value as they would be in ASCII (ASCII 65 ‘A’ = UTF-8 65 ‘A’)… so this should not be an excuse for why the FPS text is not working.

One issue is that the iOS renderer does not support non-power-of-2 images. I replaced some nifty resources, but the result looked also messed up. Indeed this needs further investigations.

As a side note: I’m not sure if all Android devices support non-power-of-2. Maybe the problem is also relevant there. My code always checks if the feature is available and scales if necessary. (No, I didn’t try to implant this into nifty.)

The generic OpenGL renderer class (GLRenderer) has better support for NPOT textures on OpenGL ES. If we could port iOS to use the generic renderer this should work.

1 Like