Copy link to clipboard
Copied
Hi,
As I'm now tried everything the last days I could imagine, I now wanted to ask if someone has a similar result, and maybe solved it.
I developed a small 3d app for iOS and android. It is pure AS without any framework like Away3D or something like that.
On iOs everything is runnig perfect. On Android till now always tested on a very slow device and so i wasn't wondering about the poor FPS, but now I bought a Samsung Galaxy Note 3 which is one of the top performers in 3DMark benchmark, and guess what, I don't have really better performance as on my old android device.
Just for comparison (same 3d data):
iPad3 (3DMARK score 4,600) for my data 10 fps
Acer A200 (3DMARK score 1,400) for my data 6 fps
Samsung Note 3 (3DMARK score 17,000 => should be about 10 times faster than Asus and 4 times faster than iPad3) for my data 7 fps
I tried:
- cutting down the app for only showing 3D content without any 2D elemnts on top
- reducing the AGAL code as well as throwing out any textures
I think I do remember that at the beginning of coding had a setting in the appciation descriptor file which did work for Android very fast, but not for iOS. I'm not sure about this, but as testing mainly on iOS devices, it might be possible, that I did change it for running better on iOS. So here for the first step my application descriptor entries, which might be wrong:
<initialWindow>
<renderMode>direct</renderMode>
<depthAndStencil>true</depthAndStencil>
<autoOrients>true</autoOrients>
<fullScreen>true</fullScreen>
<visible>true</visible>
<softKeyboardBehavior>none</softKeyboardBehavior>
</initialWindow>
<icon>
some icons...
</icon>
<android>
<colorDepth>16bit</colorDepth><!-- also tried it with 32bit, no chaneg at all -->
<manifestAdditions><![CDATA[
<manifest android:installLocation="auto">
<!--See the Adobe AIR documentation for more information about setting Google Android permissions-->
<!--Wenn Sie die Berechtigung android.permission.INTERNET entfernen, ist auch kein Debugging der Anwendung auf Ihrem Gerät mehr möglich.-->
<uses-permission android:name="android.permission.INTERNET"/>
<!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>-->
<!--<uses-permission android:name="android.permission.READ_PHONE_STATE"/>-->
<!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>-->
<!--Die DISABLE_KEYGUARD- und WAKE_LOCK-Berechtigungen müssen gemeinsam umgeschaltet werden, um auf die SystemIdleMode-APIs von AIR zugreifen zu können.-->
<!-- <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>-->
<!-- <uses-permission android:name="android.permission.WAKE_LOCK"/>-->
<!--<uses-permission android:name="android.permission.CAMERA"/>-->
<!--<uses-permission android:name="android.permission.RECORD_AUDIO"/>-->
<!--Die ACCESS_NETWORK_STATE- und ACCESS_WIFI_STATE-Berechtigungen müssen gemeinsam umgeschaltet werden, um die NetworkInfo-APIs von AIR zu verwenden.-->
<!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>-->
<!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>-->
</manifest>
]]></manifestAdditions>
</android>
<iPhone>
<InfoAdditions><![CDATA[
<key>UIDeviceFamily</key>
<array>
<string>1</string>
<string>2</string>
</array>
<key>UIPrerenderedIcon</key>
<true/>
]]></InfoAdditions>
<requestedDisplayResolution>high</requestedDisplayResolution>
</iPhone>
If anyone has an idea, you get a very warm welcome from me for every hint I get.
Thanks in advance,
Andi
Copy link to clipboard
Copied
make sure you're NOT publishing with "permit debugging" checked and you're NOT publishing with "enable detailed telemetry" checked.
Copy link to clipboard
Copied
Hi kglad,
Thanks for the fast reply, but I'm working still on FB 4.6 and don't find these settings there.
Andi
Copy link to clipboard
Copied
are there any debug settings in fb?
Copy link to clipboard
Copied
Yes there are, but I'm always doing a real release (especially for the performance reasons) and double checked now again, if I do have and settings for debugging, which might interfere. => None found...
Copy link to clipboard
Copied
What I did now realize after some more research now is:
3 devices:
Acer A200 (3DMARK score 1,400; 1,200 x 800 px)
iPad3 (3DMARK score 4,600; 2048 x 1536 px)
Samsung Note 3 (3DMARK score 17,000; 1,920 x 1,80 px)
3D data set 1: about 1.35 million facets
Acer 6 fps
iPad3 10 fps
Samsung 7 fps
Whereas 3D data set 2: about 370k facets
Acer 11 fps
iPad3 13 fps
Samsung 21 fps
This makes me currently think, that the gpu in each device does handle things completely different, when it comes to a certain size. With smaller models they do act a little bit like expected, but when the model size get's bigger, then all the devices do have nearly the same performance.
So new question => How can that happen?
Find more inspiration, events, and resources on the new Adobe Community
Explore Now