• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
Locked
0

AIR in Android performance

New Here ,
Aug 04, 2015 Aug 04, 2015

Copy link to clipboard

Copied

Hello every one.

I have a 3D project build in FlashDevelop. I publish to ios and android platform.

Then, I found that android's performance is quite low compare to ios system.

Did anyone have the same issue?

3D Engine: Away3D-4.1.6.

Platform: AIR Mobile 18.0

SDK: AIR 17.0

Android machine: Z2 tablet.

ios machine: iPad4.

TOPICS
Air beta

Views

1.1K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
Aug 05, 2015 Aug 05, 2015

Copy link to clipboard

Copied

Did you try GPU?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 05, 2015 Aug 05, 2015

Copy link to clipboard

Copied

If Away3D is using Stage3D, the render mode would have to be Direct, not GPU.

The processor is very fast, I don't see why it would perform slowly. One difference is that it's not exactly ARMv7, it's an extension of that, which may mean it has to emulate to do ARMv7 things. But still, I would expect it to work well.

Try using Scout to see what parts of the screen are being updated every frame. Also, try the latest version of AIR, there were recent performance improvements.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 05, 2015 Aug 05, 2015

Copy link to clipboard

Copied

Scout shows that enterframe are the main bottle neck. Which means Away3D cost the most time to render.

So I was wonder if that Adobe didn't optimize the Android platform. Because even iPad 2 is better than Sony Z2 tablet.

That doesn't make sense.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Aug 06, 2015 Aug 06, 2015

Copy link to clipboard

Copied

Do you have a recorderd scout session we can have a look at?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 06, 2015 Aug 06, 2015

Copy link to clipboard

Copied

Thx for your reply.

The url is the scout session.

Dropbox - AIR_Android.flm

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Aug 06, 2015 Aug 06, 2015

Copy link to clipboard

Copied

Hi ShengShane,

to get more insight what's causing your high cpu time please enable advanced-telemetry for your .swf via the -advanced-telemetry compiler argument.

Can you provide a scout session with advanced-telemetry enabled?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 06, 2015 Aug 06, 2015

Copy link to clipboard

Copied

Dropbox - AIR_Android.flm

Here you go.

Again, thanks for your reply

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Aug 10, 2015 Aug 10, 2015

Copy link to clipboard

Copied

Hi ShengShane,

Sorry, I didn't have much time to look into your issue.

Some smaller things that I recognized are really high stage3D call times in some frames. For example .setProgramConstantsFromVector() takes in some frames more then 20 ms. Maybe you are using way to much different materials or your materials are too complex for mobile devices.

An other thing I recognized is that you are handling event enterFrame 28x times.

It's good practice to handle it only once in you're gameloop and pass the deltaTime to all other game modules requiring it.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 11, 2015 Aug 11, 2015

Copy link to clipboard

Copied

LATEST

But it is really weird. Why the same code running on ios and android, the performance has huge difference?

iPad 2 hardware is better than Sony Z2 ?

That doesn't make sense.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines