Nexus 6 & JavaFX - Issue with starting an app

65 views
Skip to first unread message

Даниэль Циммерманн

unread,
Apr 21, 2015, 7:18:19 AM4/21/15
to javafx...@googlegroups.com
Beside Jose Pereida and me: Is there anybody using this combination as well?

I currently still facing an issue which making a test application run on my Nexus 6 impossible. According to Jose, it seems to be related to the OpenGL ES version on the Nexus 6, which is newer than on devices such as Nexus 5 - where it works as expected.
(Funny enough: A colluege of mine tested my simple app on iOS and it worked out of the box as well)

To solve the issue, I tried removing all gradients from my CSS (but still using classes like .button etc.), but this is still not helping. I wonder how Jose did it in the End, since his game 2048FX from the Play Store is running very well on my Nexus 6, but ATM I have no further ideas...

Cheers and thanks for your ideas...

Daniel

Johan Vos

unread,
Apr 21, 2015, 7:41:02 AM4/21/15
to Даниэль Циммерманн, javafx...@googlegroups.com
Hi Daniel,

This issue only applies to a Nexus 6 with Lollipop 5.1, so at this moment it doesn't affect many people.
The 2048FX game is not using the shaders that can't be compiled by this combination. When modifying one of the shaders that causes problems, there was no crash using the simple button hello world demo.
However, in order to fix the problem, I need to debug that shader line by line, and see which one causes the crash. Unless I can reproduce the crash, this is very hard and time consuming. I've sent a few binaries to Jose so he could test what I built, and although greatly appreciated, it is not the fastest way of debugging ;)

- Johan

--
You received this message because you are subscribed to the Google Groups "JavaFXAndroid" group.
To unsubscribe from this group and stop receiving emails from it, send an email to javafxandroi...@googlegroups.com.
To post to this group, send email to javafx...@googlegroups.com.
Visit this group at http://groups.google.com/group/javafxandroid.
To view this discussion on the web visit https://groups.google.com/d/msgid/javafxandroid/2e699ad6-cb99-48c3-9687-685a84d45a8a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Даниэль Циммерманн

unread,
Apr 21, 2015, 9:23:25 AM4/21/15
to javafx...@googlegroups.com, zim.d...@gmail.com
Hi Johan

Thanks for your feedback! I recently looked into the shaders from the build project, but I have to admit, that I have no clue about them - never looked into OpenGL :-/
I was never intending to be cheeky, though! This is OpenSource and I am more that grateful about the work you, your company and everyone else commiting to it, are doing... I am just sitting on hot coals :-D

Today a colluege of mine tested - just for fun - my little app on iOS and it just worked! I was stunned! And I am just jealous. Since I have no real project on the timescale that would benefit from that, there is no preassure for me, but still I want to adopt to it ASAP.

Is there already an Issue on your bitbucket? Is it the one, Jose posted the last time? If so, I will simply keep on watching this Issue.

BTW: How can I achieve to not use the shaders in question. Obviously Jose somehow managed to....

Cheers,
Daniel

Даниэль Циммерманн

unread,
Apr 21, 2015, 10:12:33 AM4/21/15
to javafx...@googlegroups.com, zim.d...@gmail.com
Funny enough: The colluege I mentioned just told me, tha he will try to look into some of the shaders. If he cand find the correct ones...
He has obiously too much time :-) And he thinks, he should be fine enough with the OpenGL stuff to understand what's happening.

Can you give me some advice, where he should start and what an easy approach to test everything would be? I would forward it to him...

Cheers,
Daniel

José Pereda

unread,
Apr 21, 2015, 5:23:54 PM4/21/15
to javafx...@googlegroups.com, zim.d...@gmail.com
Hey Daniel,

The easy way to get rid of gradients is avoid using them (both linear and radial) in your styling, in the first place.

Then, avoid using controls that use gradients by default in modena.css (like button). Since surely you will need to use them, override the css styling, trying to avoid some linear-gradients on the background.

That's why something like:

.root{
 -fx-inner-border: gray;
 -fx-body-color: -fx-color;
...
}

should work with buttons. Check all the possible selectors with linear-gradient, and replace them with plain colors.

The next step is, as Johan says, getting into the shaders and replacing the gradients for plain colors on the *.frag files. This can be done on the jfxrt.jar...

And the ultimate step will be debuging the gradient shaders finding what is wrong in Lollipop 5.1, trying to find a workaround if possible.

Jose

Даниэль Циммерманн

unread,
Apr 27, 2015, 7:18:47 AM4/27/15
to javafx...@googlegroups.com, zim.d...@gmail.com
Hi José

Thanks for your response - and sorry for my delay - was on a short vacation with wife and child :-)

I guess that the reason was simple: I still used the Button-Class wich - as you've stated - uses some gradients in the default modena.css and I probably did not remove all necessary gradient issues with my simple approach.

Nevertheless I hope, that someone with more skill than me figure out the reason behind it, because I find UIs with no gradient at all kind of dull. Yes: I have some issues with Material Design (or better with the way Googles own Teams interpret it in different ways).

Anyway: I will watch the issue on Bitbucket and play a bit arround with your CSS suggestions!

Thanks and cheers,
Daniel

Даниэль Циммерманн

unread,
May 3, 2015, 3:10:54 PM5/3/15
to javafx...@googlegroups.com, zim.d...@gmail.com
Just a follow-up:


Known Issues
• The ES 3.1 test fails on Nexus 6 when running Android 5.1. A fix is in development.
[...]

So it seams, that the combination of ES 3.1 & Android 5.1 seems to be a issue not just for us...

Cheers,
Daniel

Johan Vos

unread,
May 3, 2015, 3:37:08 PM5/3/15
to Даниэль Циммерманн, javafx...@googlegroups.com
Thanks, much appreciated.

Indeed, if you google on this issue, you see a number of people already complained about it. I really hope Qualcomm comes up with a fix, but I have no confirmation that they will. If they don't, we have to create a workaround for the affected shaders, but this will take time of course.

Another alternative is that for this particular driver, we use the fallback to prism software rendering. At this moment, we don't even build the prism software pipeline because we had no issues with the prism-es2 support. 
It is possible though, in JavaFX, to use fallback to sw when using specific drivers/cards. I consider investigating this option.

- Johan



Reply all
Reply to author
Forward
0 new messages