Skip to main content
Participating Frequently
December 13, 2015
Question

Any plans to enable Stage3D antialiasing on mobile devices, e.g. iOS, soon?

  • December 13, 2015
  • 3 replies
  • 922 views

Hi,

Are there any plans to enable Stage3D antialiasing on mobile devices, e.g. iOS, soon?


Newer mobile devices should be powerful enough to support this feature. I believe enabling this feature would be a huge improvement and strengthen the position of AIR among other related mobile app development solutions. I hope there are plans to enable this feature soon, if not, I would like to know why, in order to be able to advise our current and future customers concerning production technology for mobile apps (not only games) using 3D content.

Thank you very much,

Vatro

This topic has been closed for replies.

3 replies

vbot_76Author
Participating Frequently
December 18, 2015

Hi,


in order to avoid this post becoming just another dead-end on the subject:


If you like the idea of AIR being able to deliver hi-quality anti-aliasied 3D-content on mobile, there is a new feature-request on Adobe Bugbase concerning stage3D anti-aliasing on mobile devices I would strongly encourage you to vote for:

https://bugbase.adobe.com/index.cfm?event=bug&id=4101164


fyi: as for today Stage3D anti-aliasing of 3D-content is disabled for all mobile devices. This means that the edges of your 3D-object will always be jagged on a mobile device. On hiDPI devices (e.g. Retina Display) the jaggedness is less obvious, but still clearly visible. And no, you currently can't make this better, i.e. "supersharp".

Thank you & good luck with your 3D mobile app.

vbot_76Author
Participating Frequently
December 13, 2015

Hi Colin,

first of all, thank you for the fast reply. My reply below...

@"flaw in your thinking":

Actually I just observe the results and decide if they are satisfying me or not compared to what is possible today. I've done a lot of testing and research on this matter in order to achieve the best representation of a 3d-model on a mobile device, let's say iPad Air2 Retina, using AIR. The fact is, without antialiasing, the edges are jagged. Always and throughout all as3-3d-frameworks (away3d, flare3d etc.). They are less jagged on a Retina Display, but still jagged.

"Retina" doesn't automatically mean you can't see jaggy lines / pixels, and it is not showing better than 6x antialiasing for sure. At least concerning true 3D-content.

There might be scenarios where this is not so obvious, like 3d-games using mostly irregular, organic, animated objects running on a smaller screen (smartphones). On the other hand, if 3d-models are rather regular/square like boxes, quad-planes, straight lines (thin planes) etc. and are shown on a larger screen (tablet), jagged edges will be clearly visible. Especially if we're talking about high-contrast-colored, high-detailed (regular shaped / straight details) models on a brighter background (e.g. something like a rack with shelves filled with books and boxes in front of a white background), you will see jagged edges all over the model, more or less jagged depending on perspective distortion / rotation / camera-position. To make it more simple here is an example of a black plane being rotated in front of a white background.

Examples

(Created with Apple's SceneKit. Example 1 is equal to the result with AIR, i.e. no antialiasing.)

Example 1 (Retina 2048x1536, no antialiasing):

Example 2 (Retina 2048x1536, 2x multisampling):

Example 3 (Retina 2048x1536, 4x multisampling  maximum for iOS):

So the fact is: AIR is (I hope only at the moment) not able to deliver the best possible quality concerning 3d-model representation on a mobile device today. The question is, why?

My last AIR-3d-antialiasing-research (tests and intense web search) led me to the conclusion that antialiasing of 3d-models (we're not talking about textures) has been disabled in AIR for all mobile devices due to possible performance issues. That was back in 2014, more than one year ago. Meanwhile many things changed and many of them speak for enabling the antialiasing feature on mobile. A clear, comprehensible information update on this subject would be very welcome.

@"There are plenty of other reasons to sometimes use Unity":

Sorry, I don't quite understand what you're trying to advise me here? If Adobe / AIR already gave up on competing with Unity, then I think your officials should communicate this more clearly and consequently pull back from projects like Away3D, otherwise you're misleading developers with Flash/AS3 background interested in developing mobile apps containing 3D-content. That would only be fair.

@"three.js examples / How many jaggy lines can you see?":

All lines in every single example are jaggy (iPad Air2 Retina).

Just look at the very first example three.js / examples  and pay attention to the upper bar. You can clearly see it is jaggy. The same with all other examples. As I've already described above, jagged lines are more obvious if a model is rather regular shaped (boxes, quad-planes, straight lines). With organic/round objects this might be not such a big issue.

@"So, what i'm suggesting is that antialiasing support isn't as important as you might think...":

I totally disagree with you on this point, see my example images above. If better is possible it should be Adobes goal to do so. But apparently you are less demanding on this subject, so I don't even know if you can understand how important / cool this feature could be for 3d-oriented mobile projects, not only games, think of interactive high quality 3d product presentations, virtual / augmented reality etc.

Colin Holgate
Inspiring
December 14, 2015

A lot to read!

One note, most people here, including me, don't work for Adobe. I'm a Unity user as well as several other non-AIR tools. It happens that the 17 or so apps I've worked on in the various app stores are all AIR apps, but I do some things in Unity that I can't imagine being possible in AIR, and I even do things in LiveCode that couldn't be done in AIR or Unity. I still have Director installed!

I'll look at your videos, and hopefully come back with a feisty reply!

vbot_76Author
Participating Frequently
December 14, 2015

‌Hi Colin,

first of all, sorry for treating you as an Adobe employee.

Okay, now I understand why you mentioned using Unity. So far as I know Unity has the ability to apply 3d-antialiasing, right? Yes, there are many tools and solutions out there, probably more than ever before, and I've already stucked my nose in quite a few of them and all of them had their advantages and disadvantages. Still, I (we, the company) like / stick / would like to stay stuck with AIR for many different reasons, and it would be just awesome to have antialiasing on mobile enabled (if technically possible), so that it's developers choice to use it or not. 4x multisampling seems to be enough to have nice, sharp edges on a powerful highres device.

fyi:

Those are images, not videos, screenshots taken directly on the iPad.

The plane is not roatating, I've rotated it just a bit (5deg) to make it jagged.

I'm looking forward to your reply.

Colin Holgate
Inspiring
December 13, 2015

I don't know the plans for Stage3D, but there's a flaw in your thinking. Antialiasing is used to make a lower resolution screen look like it's higher resolution. Taking an example, if you have what would be a relatively small HD TV, say 38 inches across, you're seeing 50 dpi, and Halo 1 certainly looks jaggy! You could add in 2x antialiasing, though that might bring an Xbox to its knees, but say that you require Xbox One as the playback device, 2x would immediately make it seem like 100 dpi.

But that's not good enough, so give up some frame rate and use 4x antialiasing. Now you're talking! That's like 200 dpi. I mean, it's not, it's an illusion, look closely and there's lots of blending between pixels to pull off the trick. Say that you're even more demanding, and you want the best you can get, and still have a few frames per second, and you do 6x antialiasing. That's a massive 300 dpi illusion.

Back on mobile, an iPhone 5 is 326 dpi, it's already showing better than 6x antialiasing. The term "Retina" is to imply that your eyes cannot see where pixels begin and end. If you added any antialiasing your eyes would not be able to see the effect.

There are plenty of other reasons to sometimes us Unity, you don't have to use AIR for everything, but if a game that could be done in either tool, with the same effort, and the only difference was a checkbox for antialiasing, you should do tests before switching to a tool that you may not know as well.

Try this test page on a mobile device, which certainly doesn't antialias the graphics:

three.js / examples

How many jaggy lines can you see?

So, what i'm suggesting is that antialiasing support isn't as important as you might think, because it's mainly needed for older devices, and those would also be the ones that are not powerful enough to cope with the extra performance demands.

Devarai
Known Participant
December 13, 2015

We need a factor 3 anti-aliasing

On Sun, Dec 13, 2015 at 5:06 PM, Colin Holgate <forums_noreply@adobe.com>